Ansible na prática #5  – playbook com módulos Shell e Copy

Provisionando um laboratório para estudar o Ansible e outras coisas

Por:  Adelmo da Silva – consultor de sistemas

No artigo Ansible na Prática #2, sobre a estrutura de um playbook, vimos o esqueleto dessa ferramenta fantástica do Ansible. Hoje, vamos avançar com os nossos playbook. Vamos criar um playbook que faça exactamente o que vimos no artigo anterior: copiar o arquivo de configuração do NTP e reiniciarmos este serviço. A cada dia aprimoramos mais as nossas habilidades nesta incrível ferramenta, o Ansible.

Playbook com os Módulos Copy e Shell

Diferente do ad-hoc, vamos colocar todo esse processo num único playbook, que será chamado de config-ntp.yaml. Vamos lá então.

O cliente alterou os servidores de NTP (Network Time Protocol), ou seja, o serviço de data/hora da rede. Foi solicitado a você que alterasse essa configuração em todos os servidores de webservers, que somam 10 servidores, utilizando o arquivo ntp.conf fornecido pelo cliente.

new_cognito

NTP.CONF

# Arquivo de configuração do NTP

## Servidores NTP para sincronização de tempo

server 0.pool.ntp.org

new_cognito

server 1.pool.ntp.org

server 2.pool.ntp.org

 

Este arquivo, no nosso exemplo, na pasta /home/root/configuracoes e, nele, estão as configurações dos novos servidores NTP da rede do nosso cliente. O nosso playbook irá copiar esse arquivo para os hosts (COPY) e reiniciar os serviços em cada um deles (SHELL):

new_cognito

– name: Atualização das Configurações do Serviço NTP

  hosts: webservers

  become: yes

new_cognito

  gather_facts: no

 

 tasks:

     – name: #1 Copiando o arquivo ntp.conf

new_cognito

       copy:

          src: /home/root/configuracoes/ntp.conf

         dest: /etc/ntp.conf

         owner: root

new_cognito

         group: root

        mode: ‘0644’

Nesta primeira tarefa, o Ansible copia o arquivo para a pasta de destino e já define o dono da pasta (owner), do grupo (group) e as permissões do mesmo.

Na segunda parte do playbook, vamos mandar o Ansible reiniciar o serviço NTPD através do módulo SHELL:

new_cognito

    – name: #2 Reiniciando o Serviço NTPD

      shell: systemctl restart ntpd

 

Ao executar esse playbook, será exibido o seguinte resultado no Ansible:

new_cognito

PLAY [Atualização das Configurações do Serviço NTP] *******************************************************************

TASK [Copiando o arquivo ntp.conf] *********************************************************************

changed: [192.168.100.20]

changed: [192.168.100.21]

new_cognito

changed: [192.168.100.22]

changed: [192.168.100.23]

changed: [192.168.100.24]

changed: [192.168.100.25]

new_cognito

changed: [192.168.100.26]

changed: [192.168.100.27]

changed: [192.168.100.28]

changed: [192.168.100.29]

new_cognito

 

TASK [Reiniciando o Serviço NTPD] **********************************************************************

changed: [192.168.100.20]

changed: [192.168.100.21]

new_cognito

changed: [192.168.100.22]

changed: [192.168.100.23]

changed: [192.168.100.24]

changed: [192.168.100.25]

new_cognito

changed: [192.168.100.26]

changed: [192.168.100.27]

changed: [192.168.100.28]

changed: [192.168.100.29]

new_cognito

 

PLAY RECAP *****************************************************************************

192.168.100.20  : ok=2  changed=2  unreachable=0 failed=0  skipped=0   rescued=0    ignored=0  

192.168.100.21  : ok=2  changed=2  unreachable=0 failed=0  skipped=0   rescued=0    ignored=0  

new_cognito

192.168.100.22  : ok=2  changed=2  unreachable=0 failed=0  skipped=0   rescued=0    ignored=0

192.168.100.23  : ok=2  changed=2  unreachable=0 failed=0  skipped=0   rescued=0    ignored=0  

192.168.100.24  : ok=2  changed=2  unreachable=0 failed=0  skipped=0   rescued=0    ignored=0  

192.168.100.25  : ok=2  changed=2  unreachable=0 failed=0  skipped=0   rescued=0    ignored=0

new_cognito

192.168.100.26  : ok=2  changed=2  unreachable=0 failed=0  skipped=0   rescued=0    ignored=0

192.168.100.27  : ok=2  changed=2  unreachable=0 failed=0  skipped=0   rescued=0    ignored=0  

192.168.100.28  : ok=2  changed=2  unreachable=0 failed=0  skipped=0   rescued=0    ignored=0  

192.168.100.29  : ok=2  changed=2  unreachable=0 failed=0  skipped=0   rescued=0    ignored=0

new_cognito

 

Viu só?! Feito!

Dez servidores reconfigurados em menos de 15 segundos. Agora, é só pegar aquele cafezinho e um biscoito e aproveitar!

Até o próximo artigo.:)

new_cognito

 

 

 

Partilhar artigo:

Versao3 - Cópia

Somos um portal de notícias, voltado às tecnologias de informação e inovação tecnológica. Informamos com Rigor, Objectividade e Imparcialidade. Primamos pela qualidade, oferecendo aos nossos leitores, a inclusão tecnológica e a literacia digital

+(244) 930747817

info@pti.ao | redaccao@pti.ao

Mais Lidas

Últimos Artigos

Desenvolvido Por SP Media