Como instalar o Ansible no Ubuntu 20.04 LTS

How Install Ansible Ubuntu 20



Neste artigo, vou mostrar como instalar o Ansible no Ubuntu 20.04 LTS e configurar hosts Ubuntu 20.04 LTS para a automação do Ansible. Então vamos começar.

Topologia de rede:







Aqui o linuxhint-711ea é uma máquina Ubuntu 20.04 LTS onde irei instalar o Ansible.



Então, vou configurar os hosts host1 (Endereço IP 192.168.20.162) e host2 (Endereço IP 192.168.20.153) para automação Ansible e execute comandos neles usando Ansible do linuxhint-711ea máquina.



Vou simplesmente ligar host1 e host2 como hosts Ansible neste artigo.





Instalando o Ansible:

Você pode facilmente instalar o Ansible no Ubuntu 20.04 LTS a partir do repositório oficial de pacotes do Ubuntu.

Primeiro, atualize o cache do repositório de pacotes APT com o seguinte comando:



$sudoatualização apt

O cache do repositório de pacotes APT deve ser atualizado.

Agora, instale o Ansible com o seguinte comando:

$sudoaptoinstalaransible

Para confirmar a instalação, pressione E e então pressione .

O Ansible deve ser instalado.

Agora, execute o seguinte comando para verificar se o ansible está funcionando corretamente.

$ansible--versão

Como você pode ver, o comando ansible está disponível e funcionando corretamente.

Gerando chave SSH:

Agora, você deve gerar uma chave SSH no computador onde instalou o Ansible.

Para gerar uma chave SSH, execute o seguinte comando:

$ssh-keygen

Agora aperte .

pressione .

pressione .

Uma chave SSH deve ser gerada.

Configurando Hosts Ubuntu para Ansible Automation:

Nesta seção, vou mostrar como configurar um host Ubuntu ( host1 ) para automação Ansible. Se você tiver mais de um host que deseja automatizar usando o Ansible, repita o mesmo processo em cada um dos hosts.

Os hosts Ubuntu Ansible (que você deseja configurar para automação Ansible) devem ter o pacote do servidor SSH instalado.

Primeiro, atualize o cache do repositório de pacotes APT com o seguinte comando:

$sudoatualização apt

Em seguida, instale o servidor OpenSSH com o seguinte comando:

$sudoaptoinstalarservidor openssh-e

No meu caso, o pacote do servidor OpenSSH já está instalado. Se não estiver instalado no seu caso, deve ser instalado.

Agora, verifique se o sshd serviço está sendo executado com o seguinte comando:

$sudosystemctl status sshd

Como você pode ver, o sshd serviço é ativo (correndo) e ativado (será iniciado automaticamente na inicialização do sistema).

Se o sshd serviço não é ativo (em execução) no seu caso, inicie-o manualmente com o seguinte comando:

$sudosystemctl start sshd

Se o sshd serviço não é ativado (não adicionado à inicialização do sistema) no seu caso, adicione-o à inicialização do sistema manualmente com o seguinte comando:

$sudosystemctlpermitirsshd

Agora, configure o firewall para permitir o acesso SSH com o seguinte comando:

$sudoufw permitirssh

Você também deve criar um ansible usuário e permitir acesso sudo sem senha ao ansible do utilizador.

Para criar um ansible usuário, execute o seguinte comando:

$sudoadduser ansible

Agora, digite uma senha para o ansible usuário e imprensa .

Agora, redigite a senha e pressione .

Agora aperte .

Agora aperte .

Agora aperte .

Agora aperte .

Agora aperte .

Agora, digite e e então pressione .

Um ansible usuário deve ser criado.

Agora, configure o acesso sudo sem senha ao ansible usuário com o seguinte comando:

$jogou fora 'ansible ALL = (ALL) NOPASSWD: ALL' | sudo tee /etc/sudoers.d/ansible

Agora, encontre o endereço IP do host Ansible ( host1 ) com o seguinte comando:

$nome de anfitrião -EU

Aqui, o endereço IP no meu caso é 192.168.20.162 . Será diferente para você. Portanto, certifique-se de substituí-lo pelo seu formulário agora em diante.

Agora, no computador onde você instalou o Ansible, copie a chave pública SSH para o host Ansible ( host1 ) do seguinte modo:

$ssh-copy-id ansible@192.168.20.162

Digitar sim e pressione .

Agora, digite a senha para o ansible usuário e imprensa .

A chave SSH pública deve ser copiada para host1 .

Agora, desative o login baseado em senha para o ansible usuário com o seguinte comando:

$sudousermod-Aansible

Agora, você só pode fazer SSH no host Ansible ( host1 ) Como ansible usuário sem nenhuma senha do computador do qual copiou a chave pública SSH (neste caso, o computador onde você instalou o Ansible). Mas você não será capaz de SSH no host Ansible ( host1 ) Como ansible usuário de qualquer outro computador. Configurei os hosts Ansible dessa forma por motivos de segurança. Enquanto o ansible o usuário não precisa de nenhuma senha para executar comandos administrativos, é arriscado permitir o login baseado em senha para o ansible do utilizador.

Agora, você deve ser capaz de fazer SSH no host ansible host1 do computador onde você instalou o Ansible da seguinte forma:

$sshansible@192.168.20.162

Como você pode ver, eu consigo acessar o host Ansible ( host1 ) como usuário ansible sem qualquer senha. Então, o host Ansible ( host1 ) está pronto para a automação Ansible.

Se por algum motivo, você deseja permitir o login baseado em senha para o ansible usuário novamente, execute o seguinte comando no host Ansible ( host1 ):

$sudousermod-VOCÊansible

Você pode configurar quantos hosts desejar para a automação Ansible da mesma maneira.

Neste artigo, configurei apenas 2 hosts, host1 e host2 para a demonstração.

Teste Ansible:

Agora, crie um novo diretório de projeto ~ / ansible-demo / no computador onde você instalou o Ansible da seguinte forma:

$mkdir~/ansible-demo

Agora, navegue até o ~ / ansible-demo / diretório da seguinte forma:

$CD~/ansible-demo/

Agora, crie um novo hospedeiros arquivo no diretório do projeto da seguinte maneira:

$nanohospedeiros

Agora, digite os endereços IP ou nomes DNS dos hosts Ansible ( host1 e host2 no meu caso) no hospedeiros arquivo da seguinte forma:

192.168.20.162
192.168.20.153

Agora, salve o arquivo pressionando + X seguido pela E e então .

Agora, tente executar ping em todos os hosts usando Ansible da seguinte maneira:

$ansible tudo-eu./hospedeiros-vocêansible-m ping

NOTA: Aqui, a opção -u é usada para especificar o nome de usuário (ansible neste caso) que o Ansible usará para SSH nos hosts.

Como você pode ver, todos os hosts podem receber ping. Portanto, os hosts estão prontos para a automação do Ansible.

Da mesma forma, você pode executar qualquer comando nos hosts usando Ansible da seguinte maneira:

$ansible tudo-eu./hospedeiros-vocêansible-mConcha-para 'echo' $ (hostname) - $ (hostname -I) ''

Como você pode ver, o comando foi executado com êxito em cada um dos hosts e a saída é exibida.

Portanto, é assim que você instala o Ansible no Ubuntu 20.04 LTS e configura os hosts do Ubuntu 20.04 LTS para a automação do Ansible. Obrigado por ler este artigo.