Note:
- Este tutorial está disponible en un entorno de prácticas gratuito proporcionado por Oracle.
- Utiliza valores de ejemplo para credenciales, arrendamiento y compartimentos de Oracle Cloud Infrastructure. Al finalizar la práctica, sustituya estos valores por otros específicos de su entorno en la nube.
Gestión de Oracle Linux Automation Manager mediante la recopilación de AWX
Introducción
La recopilación de Ansible de AWX permite a los administradores interactuar con Oracle Linux Automation Manager mediante cuadernos de estrategias. Los módulos incluyen la capacidad de realizar tareas como la administración de usuarios y grupos, la creación de proyectos y la ejecución de trabajos.
Objetivos
En este tutorial, aprenderá a:
- Despliegue las instancias DevOps y Oracle Linux Automation Manager
- Configurar el archivo de configuración en la instancia DevOps
- Escribir un cuaderno de estrategias para crear los elementos necesarios para ejecutar un trabajo
- Probar y verificar el manual
Requisitos
- Un nodo de control para ejecutar cuadernos de estrategias de Oracle Linux Automation Engine
- Una instancia de Oracle Linux Automation Manager
Despliegue de Oracle Linux Automation Manager
Nota: Si se ejecuta en su propio arrendamiento, lea el proyecto linux-virt-labs
GitHub README.md y complete los requisitos antes de desplegar el entorno de prácticas.
-
Abra un terminal en el escritorio Luna.
-
Clone el proyecto
linux-virt-labs
GitHub.git clone https://github.com/oracle-devrel/linux-virt-labs.git
-
Cambie al directorio de trabajo.
cd linux-virt-labs/olam
-
Instale las recopilaciones necesarias.
ansible-galaxy collection install -r requirements.yml
-
Actualice la configuración de la instancia de Oracle Linux.
cat << EOF | tee instances.yml > /dev/null compute_instances: 1: instance_name: "olam-node" type: "control" olam_type: single EOF
-
Cree un archivo de inventario.
cat << EOF | tee hosts > /dev/null localhost ansible_connection=local ansible_connection=local ansible_python_interpreter=/usr/bin/python3.6 EOF
-
Despliegue el entorno de prácticas.
ansible-playbook create_instance.yml -i hosts -e "@instances.yml"
El entorno de prácticas gratuitas necesita la variable adicional
ansible_python_interpreter
para localhost porque instala el paquete RPM para el SDK para Python de Oracle Cloud Infrastructure. La ubicación para instalar este paquete se encuentra en los módulos de Python por defecto del sistema según la versión de Oracle Linux. El uso de una variable de inventario evita que las reproducciones se ejecuten en hosts que no sean localeshost.La unidad de despliegue por defecto utiliza la CPU de AMD. Puede cambiar la unidad de las instancias transfiriendo una nueva definición de variable de unidad en la línea de comandos.
Por ejemplo:
-e instance_shape="VM.Standard3.Flex"
Del mismo modo, la versión por defecto de la imagen de Oracle Linux utiliza la variable
os_version
definida en el archivo `default_vars.yml. Puede modificar este valor transfiriendo la versión principal de Oracle Linux en la línea de comandos.Por ejemplo:
-e os_version="9"
Importante: Espere a que el cuaderno de estrategias se ejecute correctamente y alcance la tarea de pausa. En esta etapa del manual, se ha completado la instalación de Oracle Linux y las instancias están listas. Observe la reproducción anterior, que imprime las direcciones IP públicas y privadas de los nodos que despliega.
Verificación del despliegue de Oracle Linux Automation Manager
-
Abra un nuevo terminal.
-
Configure un túnel SSH a la instancia de 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 a que todos los reenvíos de puertos remotos se establezcan correctamente-f
: ejecuta el túnel SSH en segundo plano-L
: crea el túnel en el puerto 8444 en el sistema local y 443 en el sistema remotosleep 300
: mantiene el túnel remoto abierto durante 5 minutos, esperando una conexión establecida antes de cerrar automáticamente
-
Abra un explorador web e introduzca la URL.
https://localhost:8444
Nota: Apruebe la advertencia de seguridad según el explorador utilizado. Para Chrome, haga clic en el botón
Advanced
y, a continuación, en el enlaceProceed to localhost (unsafe)
. -
Conéctese a Oracle Linux Automation Manager con el nombre de usuario
admin
y la contraseñaadmin
creados durante el despliegue. -
Después de iniciar sesión, se muestra la interfaz de usuario web.
Creación del archivo de configuración del controlador
La recopilación de Ansible de AWX utiliza un archivo de configuración y, en algunos casos, la CLI de AWX para autenticarse en Oracle Linux Automation Manager. Los parámetros de autenticación se pueden transferir en la línea de comandos mediante la CLI directamente o se pueden escribir en un archivo de configuración.
Al especificar los parámetros de autenticación, la recopilación de Ansible de AWX espera una combinación de:
- host, nombre de usuario, contraseña
- host, token OAuth2
Hay más detalles disponibles en el proyecto upstream.
-
Vuelva al terminal donde creó el túnel SSH.
-
Genere el archivo de configuración.
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 la URL para acceder a la interfaz de usuario web de Oracle Linux Automation Managerverify_ssl:
: desactiva la comprobación SSL estricta, ya que el entorno del tutorial utiliza un certificado autofirmadouse_token:
: aunque se prefiere utilizar un token OAuth2, la configuración en false se desactiva con uno para la autenticación
Crear Organización
Como cubrimos en nuestro tutorial Introducción, una organización se encuentra en la parte superior de la pirámide basada en roles y es una recopilación lógica de usuarios, equipos, proyectos e inventarios.
En lugar de crearlo a través de la interfaz de usuario web, podemos escribir un manual.
-
Escribe el 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
-
Ejecute el manual.
ansible-playbook configure-olam.yaml
-
Verifique los cambios en la interfaz de usuario web.
Con el explorador, conéctese a la interfaz de usuario web.
Nota: Si se produce un fallo de inicio de sesión, puede que el túnel SSH haya caducado. En este caso, deberá volver a ejecutar el comando SSH para restablecer la conexión.
En el menú de navegación, haga clic en Organizaciones. Observe la entrada Example, que creó el cuaderno de estrategias.
Ejecutar un Trabajo
Con la organización creada, ahora vamos a automatizar los pasos restantes del tutorial Introducción con algunas modificaciones. Una de las ventajas de Oracle Linux Automation Engine es su autodocumentación.
-
Vuelva al terminal donde creó el manual.
-
Agregue la configuración adicional a la guía de estrategias 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
-
Vuelva a ejecutar el manual.
ansible-playbook configure-olam.yaml
El manual concluye con la última reproducción que muestra el estado del trabajo como
successful
, junto con una advertencia que puede ignorar. -
Verifique el trabajo en la interfaz de usuario web.
Mediante el explorador, vaya a Trabajos y haga clic en el trabajo Dir saludo. La salida muestra los resultados de la ejecución del manual durante el trabajo. Observe los mensajes de bienvenida de la tarea de depuración.
Pasos Siguientes
La salida de la interfaz de usuario web confirma que tiene un Oracle Linux Automation Manager en funcionamiento y que ha escrito un manual para gestionar algunas de las tareas más comunes.
Enlaces relacionados
- Documentación de Oracle Linux Automation Manager
- Formación sobre Oracle Linux Automation Manager
- Oracle Linux Training Station
Más recursos de aprendizaje
Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de formación gratuita en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en un explorador de Oracle Learning.
Para obtener documentación sobre el producto, visite Oracle Help Center.
Manage Oracle Linux Automation Manager Using the AWX Collection
G32872-02
Copyright ©2024, Oracle and/or its affiliates.