Ansible AWX · 6 min read · Jan 25, 2026

Guia do Ansible AWX: Uso e Configuração Básica

AWX é uma aplicação web de código aberto que fornece uma interface de usuário, API REST e motor de tarefas para Ansible. É a versão de código aberto do Ansible Tower. O AWX permite que você gerencie playbooks do Ansible, inventários e agende trabalhos para serem executados usando a interface web.

Neste tutorial, vamos mostrar o uso básico do Ansible AWX. Portanto, você precisa de um servidor que já tenha o Ansible AWX instalado. Cobrimos algumas configurações básicas do Ansible AWX que você deve conhecer, como configurar credenciais, inventários, configurar e executar modelos de trabalho, etc. Se você ainda não tem o Ansible instalado, veja este tutorial: https://www.howtoforge.com/how-to-install-ansible-awx-with-nginx-reverse-proxy-on-ubuntu-1804/.

Pré-requisitos

  • 2 ou 3 servidores - 10.5.5.20 ansible-awx
  • 10.5.5.21 lemp
  • Compreensão básica sobre Ansible
  • Privilégios de root

O que faremos:

  1. Configuração e Preparação do Ambiente
  2. Configuração de Credenciais
  3. Configuração de Inventários
  4. Configuração de Projetos
  5. Configuração de Modelos de Trabalho
  6. Execução de Trabalhos

Passo 1 - Configuração e Preparação do Ambiente

Neste tutorial, vamos implantar e executar o playbook do Ansible para instalação básica do LEMP através do painel do Ansible AWX.

Temos dois servidores para o awx em si e a máquina de destino.

10.5.5.20   ansible-awx  
10.5.5.21   lemp

Agora vamos implantar o playbook como o usuário chamado ‘hakase’ e usando a autenticação SSH baseada em chave. Portanto, certifique-se de que você já configurou o usuário e a autenticação baseada em chave na máquina de destino ‘lemp’.

Teste usando o seguinte comando a partir do servidor ‘ ansible-awx ‘.

su - hakase  
ssh [email protected]

Certifique-se de que você está logado sem nenhuma senha.

Agora o usuário ‘hakase’ deve ter a senha de root sem senha para executar tarefas.

Na máquina de destino ‘ lemp ‘, execute o comando sudo conforme abaixo.

su - hakase  
sudo su

Certifique-se de que você entrou com os privilégios de root sem a senha.

Agora você deve instalar os pacotes python em todas as máquinas de destino gerenciadas pelo Ansible.

sudo apt install python -y

Instalar Python

Passo 2 - Configuração de Credenciais

Primeiramente, precisamos configurar as Credenciais do Ansible AWX. Elas são usadas para autenticação ao iniciar e executar trabalhos contra servidores gerenciados, sincronizando com fontes de inventário e importando projetos.

Por padrão, o Ansible AWX suporta muitas credenciais, incluindo a máquina VM através da autenticação SSH, Amazon Web Services, Google Compute Engine, OpenStack, senha do Vault, Controle de Fonte, etc.

Para configurar credenciais, clique no menu ‘ Credenciais ‘ à esquerda e clique no botão ‘+’ no lado direito.

Configurar Credenciais

Agora digite as credenciais ‘ NOME ‘ e ‘ DESCRIÇÃO ‘, em seguida, especifique o ‘ TIPO DE CREDENCIAL ‘ como ‘ Máquina ‘.

Simplesmente, a credencial ‘Máquina’ permitirá que você use a autenticação SSH para gerenciar servidores. Ela suporta tanto autenticações por senha quanto baseadas em chave.

Para este guia, usaremos a autenticação baseada em chave. Portanto, digite o nome de usuário e cole as chaves privadas para esse usuário.

autenticação baseada em chave

Em seguida, clique no botão ‘ SALVAR ‘.

Como resultado, o novo tipo de credenciais do Ansible AWX ‘Máquina’ foi criado.

Credenciais do Ansible AWX

Passo 3 - Configuração de Inventários

Os inventários são grupos de servidores host gerenciados pelo Ansible AWX. Os inventários permitem que você crie um grupo com vários servidores host nele. E facilita a gestão de diferentes servidores com diferentes ambientes.

Para gerenciar e provisionar servidores, devemos criar um novo grupo de inventário e, em seguida, adicionar hosts de servidor a esse grupo de inventário.

Para adicionar um novo inventário, clique no menu ‘ Inventários ‘ à esquerda, em seguida, clique no botão ‘+’ e escolha ‘Inventário’.

Configurar Inventários AWX

Digite o ‘ NOME ‘ e ‘ DESCRIÇÃO ‘ do inventário, em seguida, clique no botão ‘ SALVAR ‘.

Nome e descrição

Agora clique na aba ‘ HOSTS ‘, e clique no botão ‘+’ para adicionar novos hosts.

hosts

Digite o ‘ NOME DO HOST ‘, ‘ DESCRIÇÃO ‘, e as ‘ VARIÁVEIS ‘ com a configuração adicional para o endereço IP da máquina de destino ‘ansible_host: 10.5.5.21’.

Nome do host e variáveis

Agora clique no botão ‘ SALVAR ‘.

Em seguida, precisamos garantir a configuração dos hosts verificando os hosts usando o comando ping.

Volte para a aba ‘ HOSTS ‘, marque o nome do servidor dos seus hosts e clique no botão ‘ EXECUTAR COMANDOS ‘.

Agora escolha o ‘ MÓDULO ‘ chamado ‘ ping ‘, clique no botão de pesquisa dentro da ‘ CREDENCIAL DA MÁQUINA ‘ e ‘ SELECIONE ‘ a sua, em seguida, clique no botão ‘ LANÇAR ‘.

Credencial da máquina

E você será redirecionado para a nova página e abaixo está o resultado.

Resultado da execução do script awx

Um novo inventário foi criado, e o servidor da máquina de destino foi adicionado a ele.

Passo 4 - Configuração de Projetos

Os projetos são representados como Playbooks do Ansible no AWX. São coleções de Playbooks do Ansible que podemos gerenciar através do diretório de projeto local ou usando o sistema SCM, como Git, Subversion, Mercurial e RedHat Insights.

Para criar novos projetos, clique no menu ‘ Projetos ‘ à esquerda e clique no botão ‘+’.

Projetos AWX

Digite o ‘ NOME ‘ do seu projeto e a ‘ DESCRIÇÃO ‘, em seguida, escolha o ‘ TIPO SCM ‘ como ‘ Git ‘ e cole seu repositório de playbook.

Nome, descrição e tipo scm

Agora clique no botão ‘ SALVAR ‘ e, como resultado, um novo projeto para o playbook foi criado.

Projeto foi adicionado

Além disso:

Se você quiser criar um novo projeto com o tipo SCM ‘ Manual ‘, pode criar um novo diretório de playbooks localizado sob o diretório ‘ /var/lib/awx/projects ‘.

O diretório ‘/var/lib/awx/projects’ é o diretório de projeto padrão para seus playbooks do Ansible se você estiver usando a versão docker do AWX com o ‘ project_data_dir ‘ habilitado.

Passo 5 - Criar Novos Modelos de Trabalho

O modelo de trabalho é a definição da execução dos playbooks do Ansible em si. Portanto, para criar um novo modelo de trabalho ou executar o modelo de trabalho, precisamos adicionar o playbook do Ansible do nosso ‘Projeto’, as ‘Credenciais’ para autenticação e as máquinas de destino que estão armazenadas nos ‘Inventários’.

Para este guia, já criamos um novo Projeto, Credencial e Inventário. Portanto, basta clicar no menu ‘ Templates ‘ à esquerda, em seguida, clique no botão ‘+’ e escolha a opção ‘ Modelo de trabalho ‘.

Adicionar modelo de trabalho

Agora você precisa digitar o ‘ NOME ‘ e a ‘ DESCRIÇÃO ‘ do trabalho. Em seguida, escolha o ‘ INVENTÁRIO ‘, ‘ CREDENCIAL ‘ e o ‘ PROJETO ‘. E depois, especifique o ‘ PLAYBOOK ‘ que você deseja executar e implantar.

Adicionar detalhes do projeto de trabalho

E como resultado, o novo modelo de trabalho do Ansible AWX foi criado.

Passo 6 - Executar o Modelo de Trabalho

Após criar o novo modelo de trabalho, vamos executar o modelo de trabalho e implantar os Playbooks ‘Projetos’ para os hosts de destino no ‘Inventário’.

Clique no menu ‘ Templates ‘ à esquerda e você verá listas de modelos de trabalho disponíveis.

Uma vez que o trabalho esteja concluído, você verá o sinal verde dentro do nome do modelo de trabalho.

Resultado da execução do modelo

Clique no sinal verde dentro do nome do modelo de trabalho e você verá o resultado real desse trabalho.

Resultado do trabalho

O trabalho foi concluído com sucesso, e a máquina de destino teve o Stack LEMP instalado através do Ansible AWX.

Passo 7 - Testando a Máquina de Destino

Testando o nome de domínio da máquina de destino. A configuração do nome de domínio está armazenada na configuração ‘ roles/web/vars/main.yml ‘.

Testar servidor de destino

Verificando os serviços Nginx e PHP-FPM usando comandos systemctl.

systemctl status nginx  
systemctl status php7.2-fpm

Status do Nginx e php-fpm

Testando o banco de dados MySQL na máquina de destino. As configurações detalhadas do banco de dados MySQL estão armazenadas no arquivo de configuração ‘roles/db/vars/main.yml’.

Status do MySQL

Como resultado, o Stack LEMP foi instalado na máquina de destino através do Ansible AWX.

Referência

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.