Ansible: Instalando e Configurando o Ansible

O Ansible é uma ferramenta de gestão de configuração que facilita o trabalho de gestão de vários máquinas/vms/containers.

O Ansible é desenvolvido em Python e utiliza o SSH para a comunicação dos hosts. Com essa condição o Ansible se caracteriza por ser agentless. Você pode ter o Ansible instalando em um notebook, sem a necessidade de um servidor instalado.

Os componentes do Ansible são:


 * Inventory: arquivo de inventário no qual serão declarados quais os nós ou hosts-alvos serão gerenciados pelo Ansible;
 * Playbooks: conjunto de tarefas escritas no formato YAML (chave:valor) que serão executadas no(s) host(s).
 * Modules: controlam os recursos (serviços, pacotes, arquivos etc) do(s) host(s) remoto(s);
 * Tasks: tarefas que serão executadas no(s) host(s);

= Usando o Ansible =

Instalando o Ansible

 * Yum (Redhat)

sudo yum install ansible


 * Apt (Ubuntu)

sudo apt install ansible


 * Python/Pip

pip install ansible


 * Mac OS

brew instal ansible

Conectando aos servidores
Configurando a autorização para acessar um servidor remoto via SSH

1. Na maquina de origem onde instalamos o ansible

ssh-keygen cat id_rsa.pub >> authorized_keys chmod 600 authorized_keys

2. Maquina de destino

ssh usuario@servidor_destino "mkdir /home/usuario/.ssh" ssh usuario@servidor_destino "chmod 700 /home/usuario/.ssh"

scp authorized_keys usuario@servidor_destino:/home/usuario/.ssh/.

3. Conectando na máquina

ssh usuario@servidor_destino

Testando
Ping -> Ansible will attempt to remote connect to the machines


 * 1) como usuário

$ ansible all -m ping -u usuario


 * 1) as usuário, sudoing to root

$ ansible all -m ping -u usuario --sudo

Now run a live command on all of your nodes:

$ ansible all -a "/bin/echo hello"

= Ver também =


 * Artigos sobre DevOps
 * Artigos sobre Cloud
 * Mais Artigos sobre Cloud / WebDev / Tecnologias