Notifique um handler quando houver mudanças
Configure uma tarefa para acionar um handler.
Notifique um handler quando houver mudanças é uma aula grátis de DevOps Bootcamp 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 DevOps Bootcamp, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de DevOps Bootcamp inclui 4 aulas no total.
Reinicie somente quando necessário
Reiniciar um serviço a cada execução é desperdício e envolve riscos. Um manipulador permite reiniciá-lo somente quando algo realmente mudou.
O que é um manipulador
Um manipulador é simplesmente uma tarefa que fica inativa até que uma tarefa comum determine que ela seja executada. Pense nele como uma ação aguardando um sinal.
A palavra-chave notify
Você conecta uma tarefa a um manipulador com a palavra-chave notify. O valor é o nome exato do manipulador que deve ser ativado.
- name: Copy nginx config
ansible.builtin.copy:
src: nginx.conf
dest: /etc/nginx/nginx.conf
notify: Restart nginxOs nomes devem coincidir
A sequência em notify deve coincidir letra por letra com o nome do manipulador. Um erro de digitação significa que o manipulador nunca será acionado, sem aviso.
notify é acionado por changed
Um manipulador só é notificado quando sua tarefa informa changed. Se a tarefa já estiver no estado desejado, nada será acionado.
ok significa que não há notificação
Quando uma tarefa retorna ok, o Ansible ignora completamente o notify. Por isso, uma segunda execução normalmente não reinicia nada. ✅
Uma tarefa pode notificar vários manipuladores
Uma tarefa pode notificar vários manipuladores fornecendo uma lista a notify. Cada manipulador nomeado entra na fila quando a tarefa sofre alterações.
notify:
- Restart nginx
- Reload firewallAs notificações entram em uma fila
Notificar não executa o manipulador imediatamente. O Ansible o coloca em uma fila e o executa mais tarde, depois que as tarefas do play terminarem.
Cada manipulador é executado uma vez
Se cinco tarefas notificarem o mesmo manipulador, ele ainda será executado uma vez. O Ansible elimina automaticamente as notificações duplicadas da fila.
Por que isso reduz a indisponibilidade
Como o reinício só ocorre quando há uma alteração real, os servidores inalterados continuam atendendo ao tráfego. Esse é o fundamento da automação segura e idempotente.
Uma visão completa
Uma tarefa altera um arquivo e, em seguida, notify coloca o reinício na fila. As tarefas terminam e então o manipulador reinicia o serviço. Limpo e minimalista.
Verificação rápida
Quando um manipulador notificado é realmente acionado?
Recapitulação
Você aprendeu que notify conecta uma tarefa a um manipulador que só é executado quando há uma alteração. Os nomes devem coincidir, e o Ansible coloca cada manipulador na fila para executá-lo apenas uma vez. 🚀
Perguntas Frequentes
A aula “Notifique um handler quando houver mudanças” é grátis?
Sim — o texto completo de “Notifique um handler quando houver mudanças” é 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 “Notifique um handler quando houver mudanças”?
Configure uma tarefa para acionar um handler. 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 1 de 4.
Quanto tempo leva a aula “Notifique um handler quando houver mudanças”?
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
- Notifique um handler quando houver mudanças
- Definindo handlers e padrões de reinicialização
- Quando os handlers são executados e flush_handlers
- Listen: um acionador, vários handlers