Implantando Modelos de Arquivos em Hosts Remotos
Depois de criar seus modelos de arquivos Ansible, você pode implantá-los em hosts remotos usando o módulo template. Veja como fazer isso:
Implantando um Único Modelo de Arquivo
Para implantar um único modelo de arquivo, você pode usar a seguinte tarefa Ansible:
- name: Implantar configuração do Nginx
template:
src: nginx.conf.j2
dest: /etc/nginx/conf.d/default.conf
notify:
- reiniciar nginx
Neste exemplo, o módulo template é usado para implantar o arquivo de modelo nginx.conf.j2 na localização /etc/nginx/conf.d/default.conf nos hosts remotos. A seção notify aciona um manipulador para reiniciar o serviço Nginx após a implantação do arquivo de configuração.
Implantando Múltiplos Modelos de Arquivo
Se você precisar implantar vários modelos de arquivo, pode usar um loop em seu playbook Ansible:
- name: Implantar arquivos de configuração
template:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
loop:
- { src: "nginx.conf.j2", dest: "/etc/nginx/conf.d/default.conf" }
- { src: "app.conf.j2", dest: "/etc/app/app.conf" }
notify:
- reiniciar nginx
- reiniciar app
Neste exemplo, o módulo template é usado para implantar dois arquivos de configuração, nginx.conf.j2 e app.conf.j2, em seus respectivos destinos nos hosts remotos. A seção loop permite especificar vários modelos de arquivo para serem implantados.
Após a implantação dos arquivos de configuração, a seção notify aciona manipuladores para reiniciar os serviços Nginx e de aplicativos.
Lidando com Dados Sensíveis
Se seus modelos de arquivo contiverem dados sensíveis, como credenciais de banco de dados ou chaves API, você pode usar o Ansible Vault para armazenar e implantar essas informações de forma segura. O Ansible Vault permite criptografar seus dados sensíveis, garantindo que eles não sejam armazenados em texto simples em seus playbooks ou modelos.
Seguindo essas práticas recomendadas para implantar modelos de arquivos Ansible, você pode otimizar a gestão da sua infraestrutura e garantir consistência em seus hosts remotos.