Projete o projeto: roles e inventário
Estruture o repositório completo de implantação.
Projete o projeto: roles e inventário é uma aula grátis de Ansible Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Ansible Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Ansible Academy inclui 4 aulas no total.
O objetivo final
É hora de implantar uma aplicação real de várias camadas com uma implantação gradual e tempo de inatividade zero. Primeiro passo: projete a estrutura do projeto. 🚀
Pense em funções
Divida o sistema em funções: uma para cada responsabilidade, como common, web, app, db e loadbalancer. Cada uma pode ser reutilizada e testada de forma independente.
A estrutura no nível superior
Um repositório organizado mantém o inventário, group_vars, roles e o playbook de entrada site.yml na raiz, para que qualquer pessoa encontre tudo rapidamente.
deploy/
site.yml
inventory/
group_vars/
host_vars/
roles/site.yml conecta tudo
Seu playbook principal site.yml importa os plays de cada camada na ordem correta. Ele é o comando único que implanta toda a pilha.
- import_playbook: plays/loadbalancer.yml
- import_playbook: plays/db.yml
- import_playbook: plays/app.yml
- import_playbook: plays/web.ymlAssocie camadas a grupos
Seu inventário define um grupo para cada camada: lb, db, app e web. Cada play tem como destino exatamente os servidores sob sua responsabilidade.
[lb]
lb1
[web]
web1
web2
[app]
app1
app2
[db]
db1group_vars por camada
Armazene as configurações das camadas em group_vars: portas web, versão da aplicação e credenciais do banco de dados. Os servidores as herdam automaticamente, sem copiar e colar.
group_vars/web.yml:
nginx_port: 80
upstream: app:8080host_vars para exceções
Quando um servidor for diferente, coloque as substituições em host_vars. O banco de dados primário, por exemplo, pode ter configurações de replicação que os demais não possuem.
host_vars/db1.yml:
postgresql_role: primaryFixe a versão da aplicação
Faça da versão da entrega uma variável, não uma string fixa no código. Um único ponto de alteração permite avançar ou voltar à versão anterior em segundos.
group_vars/all.yml:
app_version: "2.4.1"Separe os ambientes
Mantenha pastas de inventário por ambiente para que homologação e produção nunca compartilhem servidores. As mesmas funções, destinos diferentes.
inventory/
staging/hosts
production/hostsBloqueie suas dependências
Liste as funções externas do Galaxy em requirements.yml para que todos os membros da equipe e todas as execuções de CI instalem exatamente o mesmo código de automação.
roles:
- name: geerlingguy.nginx
version: 3.1.4Investir primeiro na arquitetura vale a pena
Uma estrutura bem planejada transforma uma implantação assustadora em alguns comandos previsíveis. Estruturar agora poupa trabalho de emergência mais tarde. 🧱
Verificação rápida
Coloque corretamente uma peça da configuração.
Recapitulação
O senhor projetou o repositório: funções por camada, grupos de inventário, group_vars e host_vars, além de um site.yml que executa toda a implantação. ✅
Perguntas Frequentes
A aula “Projete o projeto: roles e inventário” é grátis?
Sim — o texto completo de “Projete o projeto: roles e inventário” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Ansible Academy, atualize para CoddyKit PRO. O curso de Ansible Academy inclui 4 aulas no total.
O que vou aprender em “Projete o projeto: roles e inventário”?
Estruture o repositório completo de implantação. Você pratica Ansible Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Ansible Academy?
Nenhuma experiência prévia é necessária. Ansible Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.
Quanto tempo leva a aula “Projete o projeto: roles e inventário”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Ansible Academy?
Sim. Cada aula de Ansible Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Projete o projeto: roles e inventário
- Provisione, proteja e prepare hosts
- Implantação progressiva atrás do balanceador de carga
- Testes básicos, reversão e notificações