0Pricing
DevOps Bootcamp · Aula

Provisione e configure em um único fluxo

Encaminhe hosts novos para plays de configuração.

Provisione e configure em um único fluxo é uma aula grátis de DevOps Bootcamp no CoddyKit. Esta é a aula 4 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 DevOps Bootcamp, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de DevOps Bootcamp inclui 4 aulas no total.

Dois trabalhos, um playbook

O provisionamento faz um servidor existir. A configuração o torna útil. O verdadeiro poder está em fazer as duas coisas em um único play contínuo. 🔗

Faça o provisionamento no nó de controle

As tarefas de criação na nuvem são executadas localmente contra a API da AWS, portanto o play de provisionamento tem como alvo o localhost, não o novo servidor.

- hosts: localhost
  gather_facts: false
  tasks:
    - amazon.aws.ec2_instance: { name: web-01 }

Capture o novo host

Você não pode usar SSH em uma máquina sobre a qual ainda não tem informações. Use register no resultado de ec2_instance para obter o novo IP público.

- amazon.aws.ec2_instance:
    name: web-01
  register: ec2

Adicione-o ao inventário na memória

O módulo add_host insere o novo servidor no inventário em execução, permitindo que um play posterior o tenha como alvo sem um arquivo estático.

- add_host:
    name: "{{ ec2.instances[0].public_ip_address }}"
    groups: launched

Aguarde até o SSH estar pronto

Uma instância em inicialização não fica acessível instantaneamente. wait_for pausa a execução até que a porta 22 responda, antes de você tentar se conectar.

- wait_for:
    host: "{{ ec2.instances[0].public_ip_address }}"
    port: 22

Inicie um segundo play

Agora abra um novo play que tenha como alvo o grupo launched que você acabou de criar. Esse play é executado no próprio servidor da nuvem.

- hosts: launched
  become: true
  tasks:
    - ping:

Configure o novo host

Com o host no inventário, os módulos comuns assumem o controle. Instale pacotes, copie configurações e inicie serviços exatamente como faria em qualquer nó.

- hosts: launched
  tasks:
    - package:
        name: nginx
        state: present

Passe o usuário SSH correto

As imagens da nuvem usam logins específicos, como ubuntu ou ec2-user. Defina ansible_user para que o play de configuração se conecte corretamente.

add_host:
  name: "{{ ec2.instances[0].public_ip_address }}"
  groups: launched
  ansible_user: ubuntu

Um arquivo, do início ao fim

O resultado é um único manual de execução: a primeira etapa cria a infraestrutura e a segunda a configura. Execute-o uma vez e um servidor funcional estará disponível.

Idempotente em todas as etapas

As duas partes são idempotentes. Ao executar novamente, a instância existente é reconhecida e a configuração converge, tornando o fluxo seguro para repetir.

Ignore os avisos de chave da máquina

Uma máquina recém-criada tem uma chave SSH desconhecida. Desative host_key_checking para o grupo iniciado, para que a primeira conexão não fique bloqueada.

add_host:
  name: "{{ ec2.instances[0].public_ip_address }}"
  groups: launched
  ansible_ssh_common_args: "-o StrictHostKeyChecking=no"

Verificação rápida

Você acabou de iniciar uma máquina EC2 e quer que a próxima etapa a configure, sem uma entrada estática no inventário. O que faz essa ligação?

Recapitulação

Você conectou o provisionamento à configuração: crie em localhost, registre o IP, use add_host, aguarde o SSH e depois configure em uma segunda etapa. ✨

Perguntas Frequentes

A aula “Provisione e configure em um único fluxo” é grátis?

Sim — o texto completo de “Provisione e configure em um único fluxo” é 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 DevOps Bootcamp, atualize para CoddyKit PRO. O curso de DevOps Bootcamp inclui 4 aulas no total.

O que vou aprender em “Provisione e configure em um único fluxo”?

Encaminhe hosts novos para plays de configuração. Você pratica DevOps Bootcamp 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 DevOps Bootcamp?

Nenhuma experiência prévia é necessária. DevOps Bootcamp 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 4 de 4.

Quanto tempo leva a aula “Provisione e configure em um único fluxo”?

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 DevOps Bootcamp?

Sim. Cada aula de DevOps Bootcamp 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

  1. Collections de nuvem e autenticação
  2. Inicie instâncias EC2 de forma declarativa
  3. Rede: VPCs, sub-redes e grupos de segurança
  4. Provisione e configure em um único fluxo
← Voltar para DevOps Bootcamp