Ansible instalar e configurar em ubuntu16.04LTS [duplicado]

0

Como instalar e configurar o ansible no Ubuntu 16.04?

    
por user757423 08.11.2017 / 07:46

1 resposta

0

Eu não uso Ansible , mas achei simples seguir o tutorial da Digital Ocean, e estas são as etapas:

  1. Instalação:

    sudo apt-add-repository ppa:ansible/ansible
    sudo apt-get update
    sudo apt-get install ansible
    
  2. Configurando Hosts Ansíveis:

    1. Edite o sudo nano /etc/ansible/hosts :

      • Como o tutorial usa hosts fictícios, eles seriam adicionados em uma situação real:

        [group_name]
        alias ansible_ssh_host=your_server_ip
        
      • O group_name é uma tag organizacional que permite fazer referência a qualquer servidor listado sob uma palavra. O alias é apenas um nome para se referir a esse servidor. Então, em nosso cenário, estamos imaginando que temos três servidores que vamos controlar com a Ansible. Estes servidores são acessíveis a partir do servidor Ansible digitando:

        ssh root@your_server_ip
        
    2. Vamos supor que os endereços IP de nossos servidores são 192.0.2.1 , 192.0.2.2 e 192.0.2.3 . Vamos configurar isso para que possamos nos referir a eles individualmente como host1, host2 e host3 ou como um grupo como servidores:

      [servers]
      host1 ansible_ssh_host=192.0.2.1
      host2 ansible_ssh_host=192.0.2.2
      host3 ansible_ssh_host=192.0.2.3
      
  3. Com nossas configurações atuais, se tentarmos nos conectar a qualquer um desses hosts com Ansible, o comando falhará (supondo que você não esteja operando como o usuário root). Isso ocorre porque sua chave SSH é incorporada para o usuário raiz nos sistemas remotos e Ansible tentará, por padrão, se conectar como seu usuário atual. Uma tentativa de conexão receberá este erro:

    host1 | UNREACHABLE! => {
          "changed": false,
          "msg": "Failed to connect to the host via ssh.",
          "unreachable": true
    }
    
  4. No servidor Ansible, estamos usando um usuário chamado demo. Ansible tentará se conectar a cada host com o ssh demo @ server. Isso não funcionará se o usuário de demonstração não estiver no sistema remoto. Podemos criar um arquivo que informe todos os servidores do grupo "servidores" para se conectar usando o usuário root. Para fazer isso, criaremos um diretório na estrutura de configuração do Ansible chamado group_vars. Dentro desta pasta, podemos criar arquivos em formato YAML para cada grupo que desejamos configurar:

     sudo mkdir /etc/ansible/group_vars
     sudo nano /etc/ansible/group_vars/servers
    
    • Adicione isto aqui:

      ---
      ansible_ssh_user: root
      
    • Se você deseja especificar detalhes de configuração para cada servidor, independentemente da associação de grupos, você pode colocar esses detalhes em um arquivo em / etc / ansible / group_vars / all. Hosts individuais podem ser configurados criando arquivos em um diretório em / etc / ansible / host_vars.
  5. Usando Comandos Ansíveis Simples:

    ansible -m ping all
    
    # Output:
    host1 | SUCCESS => {
    "changed": false,
    "ping": "pong"
    }
    
    host3 | SUCCESS => {
    "changed": false,
    "ping": "pong"
    }
    
    host2 | SUCCESS => {
    "changed": false,
    "ping": "pong"
    }
    
    • O "all" significa todos os hosts. Poderíamos facilmente especificar um grupo:

      ansible -m ping servers
      
    • Também podemos especificar um host individual:

      ansible -m ping host1
      
    • Podemos especificar vários hosts, separando-os com dois pontos:

      ansible -m ping host1:host2
      
    • O módulo "shell" nos permite enviar um comando de terminal para o host remoto e recuperar os resultados. Por exemplo, para descobrir o uso de memória em nossa máquina host1, poderíamos usar:

      ansible -m shell -a 'free -m' host1
      
      # Result:
      
      host1 | SUCCESS | rc=0 >>
       total       used       free     shared    buffers     cached
       Mem:          3954        227       3726          0         14         93
       -/+ buffers/cache:        119       3834
       Swap:            0          0          0
      

Mais informações:

link

    
por George Udosen 08.11.2017 / 08:30