Este é um projeto DevOps Lab destinado a fornecer uma infraestrutura eficiente e escalável, bem como uma pipeline de entrega contínua (CI/CD) para suas aplicações. Aqui está uma visão geral das tecnologias utilizadas neste projeto:
-
Vagrant
- Ferramenta para criação e gerenciamento de ambientes de desenvolvimento virtualizados.
- Utilizado como hypervisor para provisionamento de máquinas virtuais.
-
vbguest
- Plugin para Vagrant que garante que as Guest Additions (adicionais) estejam instaladas nas máquinas virtuais.
-
CentOS
- Sistema Operacional utilizado como base para as máquinas virtuais.
- Versão: 7
-
Shell Script (Bash)
- Utilizado para automação de tarefas e configuração do ambiente.
-
Ansible
- Ferramenta de automação de TI para configuração e gerenciamento de servidores.
- Utilizado para organizar e estruturar o código de infraestrutura.
-
Docker
- Plataforma de conteinerização para desenvolvimento, envio e execução de aplicações.
- Utilizado para empacotar e distribuir aplicações com todas as dependências.
-
Kubernetes
- Orquestrador de contêineres para automação, escalabilidade e operação de aplicações em contêineres.
-
Git
- Sistema de controle de versão distribuído.
- Utilizado para gerenciar o código-fonte do projeto.
-
Nexus Repository
- Gerenciador de repositórios para armazenar e controlar versões de artefatos.
-
Redis
- Banco de dados em memória, utilizado para armazenamento em cache e mensagens.
-
MySQL
- Sistema de gerenciamento de banco de dados relacional, utilizado como banco de dados principal.
-
Java
- Linguagem de programação utilizada para o desenvolvimento de aplicações.
-
Node.js
- Plataforma de desenvolvimento para construção de aplicações escaláveis do lado do servidor em JavaScript.
-
Grafana
- Plataforma para análise e monitoramento de métricas, logs e rastreamentos.
-
Prometheus
- Sistema de monitoramento e alerta.
Este projeto visa integrar eficientemente todas essas tecnologias, fornecendo um ambiente consistente e prático para o desenvolvimento e operação de aplicações. Sinta-se à vontade para explorar cada tecnologia e ajustar conforme necessário para atender aos requisitos específicos do seu projeto.