Ansible: Instalando e Configurando o Ansible: Difference between revisions
No edit summary |
|||
Line 34: | Line 34: | ||
== Conectando aos servidores == | == Conectando aos servidores == | ||
Configurando a autorização para acessar um servidor remoto | Configurando a autorização para acessar um servidor remoto via SSH | ||
1. Na maquina de origem onde instalamos o ansible | 1. Na maquina de origem onde instalamos o ansible | ||
Line 56: | Line 56: | ||
ssh usuario@servidor_destino | ssh usuario@servidor_destino | ||
== Testando == | |||
Ping -> Ansible will attempt to remote connect to the machines | |||
# como usuário | |||
$ ansible all -m ping -u usuario | |||
# 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 = | = Ver também = |
Revision as of 01:52, 9 August 2017
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
- como usuário
$ ansible all -m ping -u usuario
- 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"