Como instalar e configurar Ansible no Ubuntu 20.04

Como instalar e configurar Ansible no Ubuntu 20.04

Ansible é uma ferramenta de automação para gerenciar vários hosts remotos da máquina única. Ele fornece uma configuração fácil para um grande número de hosts remotos. Por exemplo, você está executando as mesmas tarefas em várias máquinas, Ansible fornece a opção de automatizar essas tarefas.

Ansible é uma alternativa melhor das outras ferramentas populares de automação de infraestrutura disponíveis, como chef e fantoche. Você não precisa instalar nenhum software cliente em nós para gerenciar através do Ansible Server. Ele usa a conexão SSH para executar tarefas nos nós.

Este tutorial ajudará você a instalar e configurar Ansible no Ubuntu 20.04 LTS Linux Systems.

Pré -requisitos

Temos um nó de controle para configurar o servidor Ansible e três servidores de nós a serem gerenciados. Aqui, o nó de controle está funcionando com o Ubuntu 20.04 Sistema Linux. O primeiro e o terceiro nó estão funcionando com o Ubuntu 18.04 servidor e segundo nó estão em execução com o CentOS 7 Server.

Aqui está a lista de nós com endereço IP e nomes de host:

  • Nó de controle - 10.0.1.10 (nó de controle)
  • Primeiro nó - 10.0.1.101 (web-host1)
  • Segundo nó - 10.0.1.102 (web-host2)
  • Terceiro nó - 10.0.1.103 (db-host1)
  • Etapa 1 - Configure as teclas SSH

    Você pode configurar o SSH baseado em chave para os hosts Linux Ansible remotos. Portanto, a senha não será necessária para SSH. Ansible também permite que você use uma senha para SSH, mas o SSH baseado em chave é mais seguro.

    Faça login no nó de controle (10.0.1.10) e gerar par de chaves ssh:

    ssh -keygen -t rsa  

    Basta pressionar "Enter" para toda a entrada solicitada pelo comando.

    Copie a chave pública para todos os seus nós remotos que você precisa conectar com protocolos SSH.

    SSH-COPY-ID -I ~//.ssh/id_rsa.Pub [Email Protected]  SSH-COPY-ID -I ~//.ssh/id_rsa.Pub [Email Protected]  SSH-COPY-ID -I ~//.ssh/id_rsa.Pub [Email Protected]  

    Etapa 2 - Instalando Ansible no Ubuntu

    Você pode instalar o Ansible Server a partir de repositórios oficiais de pacotes no sistema Ubuntu. Que tem os últimos pacotes do Debian. Execute o seguinte comando para configurar PPA Ansible no seu sistema Ubuntu.

    sudo apt-add-repositório PPA: Ansible/Ansible  

    O utilitário de atualização de software atualizará o cache dos pacotes em seu sistema. Então você tem que executar o seguinte comando para instalar ou atualizar Ansible no seu sistema Ubuntu

    Atualização do sudo apt  sudo apt installible  

    Digite 'y' para toda a confirmação de instalação para concluir o processo de instalação. Em seguida, você precisa configurar o Ansible Server

    Etapa 3 - Configurar o arquivo de inventário

    Seu servidor está pronto com Ansible para gerenciamento e automação de hosts remotos. Você pode ter vários hosts necessários e gerenciá -los com um único servidor Ansible.

    Aqui você precisa definir seus sistemas remotos no arquivo de hosts Ansible (/etc/Ansible/hosts). Você também pode fazer grupos de hosts com tipos semelhantes. Aqui você precisa organizar adequadamente seus hosts em grupos. Grupos são usados ​​para executar uma tarefa em todos os hosts remotos definidos sob ele.

    Editar Arquivo de Configuração Ansible Hosts. Para exmaple:

    sudo nano/etc/Ansible/hosts  

    Adicione seus hosts e organize -os com grupos. Um host pode ser adicionado em vários grupos.

    [WebServers] web-host1 web-host2 [dbservers] db-host1 

    A imagem abaixo ajudará você a entender o grupo e os hosts sob um grupo.

    Configuração de vars de host único

    Você precisa definir configurações para seus hosts. O arquivo específico do host deve ser com o mesmo nome que o host (por exemplo: web-host1) no diretório host_vars.

    sudo mkdir/etc/Ansible/host_vars/  sudo vi/etc/Ansible/host_vars/web-host1  

    Adicione as configurações SSH a este arquivo para o web-host1.

    Ansible_ssh_host: 10.0.1.101 Ansible_ssh_port: 22 Ansible_ssh_user: raiz 

    Caso você não tenha usado a Etapa 1 para a conexão SSH para este host. Você também pode adicionar um dos métodos abaixo ao arquivo de configuração da Web-HOSTS1 para a autenticação.

    Ansible_ssh_pass: secret_password Ansible_ssh_private_key_file:/home/rahul/.SSH/AWS.PEM 

    Configuração do Grupo VARS

    Você pode definir configurações variáveis ​​comuns de um grupo em configurações de grupo. O nome do arquivo do grupo deve ser o mesmo que o nome do grupo (por exemplo: servidores da web) em group_vars diretório.

    sudo mkdir/etc/Ansible/group_vars  sudo vi/etc/apsible/group_vars/web servidores  

    Adicione as variáveis ​​comuns a este arquivo usado por todos os hosts adicionados neste grupo.

    Ansible_ssh_port: 22 Ansible_ssh_user: raiz 

    Etapa 4 - Testando a conexão Ansible

    Seu Ansible está pronto para usar. Para testar todos os nós conectividade, use o módulo de ping. Faça login no seu servidor Ansible e execute o seguinte comando:

    Ansible -m ping tudo  

    Você também pode testar a conectividade para o host ou grupos específicos.

    Ansible -m ping web -host1  ## host específico  Ansible -M Ping Web Servers  ## Grupo específico  

    Você também pode executar qualquer comando Linux usando o módulo de shell Ansible. Por exemplo, execute o comando abaixo para testar a memória livre no web-host1.

    Ansible -m shell -a 'free -m' web -host1  

    Você também pode executar a mesma tarefa para um grupo. Basta usar o nome do grupo em vez do nome do host.

    Conclusão

    Neste tutorial, você aprendeu a instalar o Ansible Server no Ubuntu 20.04 Sistema. Também configurados hosts remotos para serem gerenciados com o Ansible Server.