Neste post, abordaremos como instalar o Ansible no RHEL 9 passo a passo. Mais tarde, aprenderemos como usar o ansible para gerenciar sistemas linux remotos.
Ansible é uma ferramenta de automação e configuração gratuita e de código aberto. No RHEL 9, o pacote principal ansible está disponível no repositório de pacotes padrão (AppStream). Isso significa que não precisamos habilitar nenhum repositório adicional, como Ansible Engine ou EPEL.
Pré-requisitos
- Instalação mínima do RHEL 9
- Usuário Sudo com direitos de administrador
- Repositório ou assinatura configurado localmente
Uma vez atendidos os pré-requisitos acima, consulte as etapas a seguir,
Etapa 1) Instale o Ansible com o comando dnf
Abra o terminal e execute o comando dnf,
$ sudo dnf install -y ansible-core
![dnf-command-install-ansible-core](https://www.linuxtechi.com/wp-content/uploads/2022/07/dnf-command-install-ansible-core.png?ezimgfmt=ng%3Awebp%2Fngcb22%2Frs%3Adevice%2Frscb22-1)
Depois que o ansible e suas dependências estiverem instalados, verifique sua versão executando,
$ ansible --version
Resultado,
![Ansible-Version-check-RHEL9](https://www.linuxtechi.com/wp-content/uploads/2022/07/Ansible-Version-check-RHEL9.png?ezimgfmt=rs:654x124/rscb22/ng:webp/ngcb22)
2) Teste a instalação do Ansible
Para testar a instalação do ansible, usaremos um sistema linux remoto além do nó de controle ansible (RHEL 9)
- Ansible Control Node – RHEL 9 – 192.168.1.163
- Ansible Managed Node – Ubuntu 22.04 – 192.168.1.167
Gere chaves SSH para o usuário (no meu caso é linuxtechi) e compartilhe a chave ssh para o nó gerenciado.
$ ssh-keygen
Resultado,
![ssh-keygen-rhel9-ansible-control-node](https://www.linuxtechi.com/wp-content/uploads/2022/07/ssh-keygen-rhel9-ansible-control-node.png?ezimgfmt=rs:651x356/rscb22/ng:webp/ngcb22)
Compartilhe as chaves ssh com o nó gerenciado usando o seguinte comando ssh-copy-id,
$ ssh-copy-id linuxtechi@192.168.1.167
![Exchange-ssh-keys-ansible-managed-node](https://www.linuxtechi.com/wp-content/uploads/2022/07/Exchange-ssh-keys-ansible-managed-node.png?ezimgfmt=rs:651x118/rscb22/ng:webp/ngcb22)
No nó gerenciado, crie o seguinte arquivo
$ echo "linuxtechi ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/linuxtechi
Volte para o nó de controle Ansible e crie o arquivo ansible.cfg com conteúdo abaixo
$ mkdir ~/automation && cd ~/automation/ $ vi ansible.cfg [defaults] inventory = ./inventory host_key_checking = false remote_user = linuxtechi ask_pass = False [privilege_escalation] become=true become_method=sudo become_user=root become_ask_pass=False
salve e saia do arquivo.
Crie o arquivo de inventário com o seguinte conteúdo
$ vi ~/automation/inventory [dev] 192.168.1.167
Salve e feche o arquivo
Execute o seguinte comando ansible para executar a conectividade de ping pong do nó de controle para o nó gerenciado,
$ cd ~/automation/ $ ansible all -m ping
Resultado,
![Ansible-Ping-Pong-Test-RHEL9](https://www.linuxtechi.com/wp-content/uploads/2022/07/Ansible-Ping-Pong-Test-RHEL9.png?ezimgfmt=rs:571x153/rscb22/ng:webp/ngcb22)
A saída acima confirma que a conectividade de ping está bem entre o controle e o nó gerenciado. Vamos criar um manual de demonstração ansible para instalar o nginx no nó gerenciado.
$ vi nginx-deploy.yaml --- - name: Playbook to Install and Start Nginx hosts: dev tasks: - name: Install nginx package: name: nginx state: present - name: Start nginx Service service: name: nginx state: started
Salve e saia do arquivo.
Execute o playbook criado acima usando o seguinte comando,
$ ansible-playbook nginx-deploy.yaml
Saída do playbook ansible acima,
![Ansible-Playbook-Demo-RHEL9](https://www.linuxtechi.com/wp-content/uploads/2022/07/Ansible-Playbook-Demo-RHEL9.png?ezimgfmt=rs:652x172/rscb22/ng:webp/ngcb22)
A saída acima confirma que o playbook foi executado com sucesso. Verifique agora usando os seguintes comandos ad-hoc ansible,
$ ansible dev -i inventory -m shell -a 'apt list --installed|grep nginx' $ ansible dev -i inventory -m shell -a 'systemctl status nginx'
![Ansible-adhoc-command-verify-nginx](https://www.linuxtechi.com/wp-content/uploads/2022/07/Ansible-adhoc-command-verify-nginx.png?ezimgfmt=rs:651x347/rscb22/ng:webp/ngcb22)
Isso é tudo neste guia, espero que este guia o ajude a instalar e testar o ansible no sistema rhel 9. Por favor, poste suas dúvidas e perguntas na seção de comentários abaixo.
Deixe um comentário