Instalando o Ansible e Verificando o Interpretador Python
Neste primeiro passo, instalaremos o Ansible e examinaremos o interpretador Python padrão que ele utiliza. Isso nos ajudará a entender a configuração base antes de fazermos quaisquer alterações.
Instalando o Ansible
Vamos começar instalando o Ansible no sistema:
sudo apt update
sudo apt install -y ansible
Isso instala a versão mais recente do Ansible disponível nos repositórios do Ubuntu. Após a conclusão da instalação, podemos verificar se o Ansible foi instalado corretamente, verificando sua versão:
ansible --version
Você deve ver uma saída semelhante a esta:
ansible [core 2.12.0]
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/labex/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
ansible collection location = /home/labex/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/bin/ansible
python version = 3.10.x (default, Ubuntu 22.04) [GCC 11.2.0]
jinja version = 3.0.3
libyaml = True
Observe que a saída inclui a versão do Python que está sendo usada. Esta é uma informação importante, pois nos diz qual interpretador Python o Ansible está atualmente configurado para usar.
Criando um Arquivo de Inventário Simples
Para que o Ansible funcione, precisamos de um arquivo de inventário que liste os hosts que queremos gerenciar. Vamos criar um arquivo de inventário simples:
- No WebIDE, crie um novo arquivo clicando no ícone "New File" no painel Explorer
- Nomeie o arquivo
inventory.ini
- Adicione o seguinte conteúdo ao arquivo:
[local]
localhost ansible_connection=local
Este arquivo de inventário define um grupo chamado local com apenas um host - localhost - e especifica que queremos nos conectar a ele diretamente, em vez de via SSH.
Verificando o Interpretador Python no Destino
Agora, vamos verificar qual interpretador Python o Ansible usará em nosso host de destino:
ansible -i inventory.ini local -m setup -a "filter=ansible_python*"
Este comando executa o módulo de configuração do Ansible, que coleta informações sobre o host, filtrando informações relacionadas ao Python. Você deve ver uma saída contendo detalhes sobre o interpretador Python que está sendo usado:
localhost | SUCCESS => {
"ansible_facts": {
"ansible_python": {
"executable": "/usr/bin/python3",
"has_sslcontext": true,
"type": "cpython",
"version": {
"major": 3,
"micro": 10,
"minor": 10,
"releaselevel": "final",
"serial": 0
},
"version_info": [
3,
10,
10,
"final",
0
]
},
"ansible_python_version": "3.10.10"
},
"changed": false
}
Isso confirma que o Ansible está usando Python 3 no host de destino. Por padrão, o Ansible tenta usar o melhor interpretador Python disponível no sistema de destino.