Observação:
- Este tutorial está disponível em um ambiente de laboratório gratuito fornecido pela Oracle.
- Ele usa valores de exemplo para credenciais, tenancy e compartimentos do Oracle Cloud Infrastructure. Ao concluir seu laboratório, substitua esses valores por valores específicos do seu ambiente de nuvem.
Gerenciar o Oracle Linux Automation Manager Usando a Coleção AWX
Introdução
A Coleção AWX Ansible permite que os administradores interajam com o Oracle Linux Automation Manager por meio de playbooks. Os módulos incluem a capacidade de executar tarefas como administração de usuários e grupos, criação de projetos e execução de jobs.
Objetivos
Neste tutorial, você aprenderá a:
- Implantar as instâncias DevOps e Oracle Linux Automation Manager
- Configure o arquivo de configuração na instância DevOps
- Escreva um playbook para criar os itens necessários para executar um Job
- Teste e verifique o manual
Pré-requisitos
- Um nó de controle para executar playbooks do Oracle Linux Automation Engine
- Uma instância do Oracle Linux Automation Manager
Implantar o Oracle Linux Automation Manager
Observação: Se estiver em execução em sua própria tenancy, leia o projeto linux-virt-labs
GitHub README.md e conclua os pré-requisitos antes de implantar o ambiente de laboratório.
-
Abra um terminal no Luna Desktop.
-
Clone o projeto
linux-virt-labs
GitHub.git clone https://github.com/oracle-devrel/linux-virt-labs.git
-
Altere para o diretório de trabalho.
cd linux-virt-labs/olam
-
Instale as coleções necessárias.
ansible-galaxy collection install -r requirements.yml
-
Atualize a configuração da instância do Oracle Linux.
cat << EOF | tee instances.yml > /dev/null compute_instances: 1: instance_name: "olam-node" type: "control" olam_type: single EOF
-
Crie um arquivo de inventário.
cat << EOF | tee hosts > /dev/null localhost ansible_connection=local ansible_connection=local ansible_python_interpreter=/usr/bin/python3.6 EOF
-
Implante o ambiente de laboratório.
ansible-playbook create_instance.yml -i hosts -e "@instances.yml"
O ambiente de laboratório gratuito requer a variável extra
ansible_python_interpreter
para localhost porque instala o pacote RPM para o Oracle Cloud Infrastructure SDK para Python. O local para instalar este pacote está nos módulos Python padrão do sistema com base na sua versão do Oracle Linux. Usar uma variável de inventário evita impactar as reproduções em execução em hosts diferentes de localhost.A forma de implantação padrão usa a CPU AMD. Você pode alterar a forma das instâncias especificando uma nova definição de variável de forma na linha de comando.
Por exemplo:
-e instance_shape="VM.Standard3.Flex"
Da mesma forma, a versão padrão da imagem do Oracle Linux usa a variável
os_version
definida no arquivo `default_vars.yml. Você pode modificar esse valor especificando a versão principal do Oracle Linux na linha de comando.Por exemplo:
-e os_version="9"
Importante: Aguarde a execução bem-sucedida do playbook e atinja a tarefa de pausa. Neste estágio do playbook, a instalação do Oracle Linux está concluída e as instâncias estão prontas. Observe o jogo anterior, que imprime os endereços IP públicos e privados dos nós que ele implanta.
Verificar Implantação do Oracle Linux Automation Manager
-
Abra um novo terminal.
-
Configure um túnel SSH para a instância do Oracle Linux Automation Manager.
ssh -o ExitOnForwardFailure=yes -f -L 8444:localhost:443 oracle@<public_ip_address_of_olam-node> sleep 300
-o ExitOnForwardFailure=yes
: espera que todas as portas remotas sejam estabelecidas com sucesso-f
: executa o túnel SSH em segundo plano-L
: cria o túnel na porta 8444 no sistema local e 443 no sistema remotosleep 300
: mantém o túnel remoto aberto por 5 minutos, aguardando uma conexão estabelecida antes de fechar automaticamente
-
Abra um navegador da Web e insira o URL.
https://localhost:8444
Observação: aprove o aviso de segurança com base no navegador usado. Para o Chrome, clique no botão
Advanced
e, em seguida, no linkProceed to localhost (unsafe)
. -
Faça log-in no Oracle Linux Automation Manager com o Nome de Usuário
admin
e a Senhaadmin
criados durante a implantação. -
Após o log-in, a IU da Web é exibida.
Criar o Arquivo de Configuração da Controladora
A Coleção AWX Ansible utiliza um arquivo de configuração e, em alguns casos, a CLI do AWX para autenticação no Oracle Linux Automation Manager. Os parâmetros de autenticação podem ser especificados na linha de comando usando a CLI diretamente ou gravados em um arquivo de configuração.
Ao especificar os parâmetros de autenticação, a Coleção AWX Ansible espera uma combinação de:
- host, nome de usuário, senha
- host, token OAuth2
Mais detalhes estão disponíveis no projeto upstream.
-
Retorne ao terminal em que você criou o túnel SSH.
-
Gere o arquivo de configuração.
cat << EOF | tee ~/.tower_cli.cfg > /dev/null [general] host: https://localhost:8444 verify_ssl: false username: admin password: admin use_token = false EOF
host:
- define o URL para acessar a UI da Web do Oracle Linux Automation Managerverify_ssl:
- desativa a verificação SSL estrita, pois o ambiente do tutorial usa um certificado autoassinadouse_token:
- embora o uso de um token OAuth2 seja preferencial, a definição como falso é desativada usando um para autenticação
Criar uma Organização
Como abordamos em nosso tutorial Conceitos Básicos, uma Organização fica no topo da pirâmide baseada em funções e é uma coleção lógica de usuários, equipes, projetos e estoques.
Em vez de criar isso por meio da interface da Web, podemos escrever um playbook.
-
Escreva o manual.
cat << EOF | tee configure-olam.yaml > /dev/null --- - name: Playbook to set up training demo data using the AWX collection hosts: localhost gather_facts: false collections: - awx.awx tasks: - name: Create an organization awx.awx.organization: name: "Example" description: "Created using a playbook" state: present EOF
-
Execute o playbook.
ansible-playbook configure-olam.yaml
-
Verifique as alterações na UI da Web.
Usando o navegador, faça login na IU da Web.
Observação: se você encontrar uma falha de log-in, o túnel SSH poderá ter expirado. Nesse caso, você precisará reexecutar o comando SSH para restabelecer a conexão.
No menu de navegação, clique em Organizações. Observe a entrada Exemplo, que a playbook criou.
Executar um Job
Com a Organização criada, agora vamos automatizar as etapas restantes no tutorial Conceitos Básicos com algumas modificações. Um dos benefícios do Oracle Linux Automation Engine é sua documentação automática.
-
Retorne ao terminal onde você criou o playbook.
-
Anexe a configuração adicional ao playbook existente.
cat << EOF | tee -a configure-olam.yaml > /dev/null - name: Add a user awx.awx.user: username: jdoe password: oracle email: jdoe@example.com first_name: John last_name: Doe organization: Example state: present - name: Add an inventory awx.awx.inventory: name: "Demo Inventory" description: "Demo OCI Instances" organization: Example state: present - name: Add a host awx.awx.host: name: localhost description: "Use to run tasks locally" inventory: "Demo Inventory" state: present variables: ansible_connection: local - name: Add a credential awx.awx.credential: name: "Linux Instance" credential_type: Machine organization: Example inputs: username: opc ssh_key_data: "" - name: Add a project awx.awx.project: name: "Hello World" description: "Sample Hello World Project" organization: Example default_environment: "OLAM EE (2.3)" scm_type: "git" scm_update_on_launch: false scm_url: https://github.com/oracle-devrel/linux-virt-labs.git state: present - name: Add a template awx.awx.job_template: name: "Say Hello" job_type: "run" organization: Example inventory: "Demo Inventory" project: "Hello World" playbook: "labs/olam-hello-world.yaml" state: present - name: Launch a job awx.awx.job_launch: job_template: "Say Hello" wait: true register: job - name: Print results from job ansible.builtin.debug: var: job EOF
-
Execute novamente o manual.
ansible-playbook configure-olam.yaml
O playbook termina com o último play exibindo o status do job como
successful
, juntamente com um aviso que você pode ignorar. -
Verifique o Job na UI da Web.
Usando o browser, navegue até Jobs e clique no job Dizer Olá. A saída exibe os resultados da execução do playbook durante o job. Observe as mensagens de boas-vindas da tarefa de depuração.
Próximas Etapas
A saída na IU da Web confirma que você tem um Oracle Linux Automation Manager funcional e escreveu um manual para gerenciar algumas das tarefas mais comuns.
Links Relacionados
- Documentação do Oracle Linux Automation Manager
- Treinamento do Oracle Linux Automation Manager
- Oracle Linux Training Station
Mais Recursos de Aprendizagem
Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal Oracle Learning YouTube. Além disso, visite education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.
Para obter a documentação do produto, visite o Oracle Help Center.
Manage Oracle Linux Automation Manager Using the AWX Collection
G32878-02
Copyright ©2024, Oracle and/or its affiliates.