Instalação

Guia de instalação CentOS ou Red Hat Enterprise

Instale o repositório Epel para obter os pacotes do Ansible

sudo yum install epel-release

Atualize sua árvore de pacotes

sudo yum update

Instalação do Ansible

sudo yum install ansible

É recomendo utilização de um usuário próprio, aqui criaremos o user ansible

sudo useradd ansible

Adicionaremos usuário ansible ao arquivo sudo e daremos permissão de super usuário. NOPASSWD = O usuário ansible ao digitar um comando utilizando sudo, não haverá necessidade de digitar senha, o ansible poderá executar tarefas automáticas sem ter que digitar uma senha.

echo "ansible ALL=(ALL)NOPASSWD: ALL" >> /etc/sudoers

Vamos logar com usuário ansible

su - ansible

Criando chave ssh sem senha. Obs: Conectaremos nos hosts com as chaves a seguir, não havendo necessidade de senha.

ssh-keygen 
Generating public/private rsa key pair. 
Enter file in which to save the key (/root/.ssh/id_rsa): #Pressione Enter 
Enter passphrase (empty for no passphrase):  #Pressione Enter
Enter same passphrase again: #Pressione Enter
Your identification has been saved in /home/ansible/.ssh/id_rsa.
Your public key has been saved in /home/ansible/.ssh/id_rsa.pub.
The key fingerprint is:
57:2d:54:5b:l7:36:s4:xx:xx:33:dd:12:a8:07:7f:21 ansible@workstation.lab.example.com
The key's randomart image is:

+--[ RSA 2048]----+ 
|            ...  |
|           . o oo|
|            + o.=|
|         . = o o.|
|      . E B + o  |
|       + + + . . |
|      . o . . .  |
|       . .   .   |
|                 |
+-----------------+

Criaremos o usuário ansible em todos os hosts gerenciados. Conecte no servidor remoto utilizando um usuário com permissão para criar novas contas.

ssh user@servidoremoto

Criando usuário ansible no servidor remoto

sudo useradd ansible

Assim como fizemos no host de controle, adicionaremos ao ansible permissão de super usuário. NOPASSWD = O usuário ansible ao digitar um comando utilizando sudo, não haverá necessidade de digitar senha, o ansible poderá executar tarefas automáticas sem ter que informa-lá.

echo "ansible ALL=(ALL)NOPASSWD: ALL" >> /etc/sudoers

Deslogue do servidor remoto e retorne ao host controller.

exit

Vamos copiar a chave ssh do ansible para servidor que desejamos gerenciar.

sudo ssh-copy-id ansible@servidorremoto

Teste a conexão com servidor remoto

ssh ansible@servidorremoto

O ssh deve completar conexão sem solicitar senha.