guide2.pdf

Untitled

Aula 1

Tasks

VMs Stetup e Inventory

  1. vagrant up → Estando na pasta aonde se encontra o Vagrant

  2. ssh [[email protected]](<mailto:[email protected]>) → Para entrar na VM provisionVM

  3. scp deploy-mysql.yml [[email protected]](<mailto:[email protected]>): → Para colocar esse ficheiro na provisionVM

  4. touch hosts.inv → Cria um arquivo vazio no sistema de arquivos

  5. ls → para ver que o ficheiro foi criado

  6. nano hosts.inv → Para modificar o ficheiro e escrever o texto:

    [app]
    [email protected]
    
    [db]
    [email protected]
    
    [db:vars]
    ansible_ssh_common_args='-o StrictHostKeyChecking=no'
    
    [app:vars]
    ansible_ssh_common_args='-o StrictHostKeyChecking=no'
    
  7. scp -r hosts.inv [[email protected]](<mailto:[email protected]>): → Copiar o ficheiro provisionVM

  8. ls e nano hosts.inv para verificar que está tudo correto

  9. ansible -i hosts.inv -u vagrant app -m ping

  10. ansible -i hosts.inv -u vagrant db -m ping - output

  11. ansible -i hosts.inv -u vagrant all -m ping - output

Playbook

  1. Estar dentro da provisionVM

  2. nano deploy-mysql.yml → Para abrir o playbook, afim de analisa-lo.

  3. ansible-playbook -i hosts.inv -u vagrant deploy-mysql.yml → Para testar o playbook

    PLAY [db] ***********************************************************************************************************
    
    TASK [Gathering Facts] **********************************************************************************************
    ok: [[email protected]]
    
    TASK [Install Mysql packages] ***************************************************************************************
    changed: [[email protected]] => (item=mysql-server)
    changed: [[email protected]] => (item=python3-mysqldb)
    
    TASK [Change MySQL bind-address] ************************************************************************************
    changed: [[email protected]]
    
    TASK [restart mysql] ************************************************************************************************
    fatal: [[email protected]]: FAILED! => {"changed": false, "msg": "Unable to restart 
    service mysql: Job for mysql.service failed because the control process exited with error 
    code.\\nSee \\"systemctl status mysql.service\\" and \\"journalctl -xe\\" for details.\\n"}
    
    PLAY RECAP **********************************************************************************************************
    [email protected]     : ok=3    changed=2    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0