Note:
- Este tutorial está disponible en un entorno de laboratorio gratuito proporcionado por Oracle.
- Utiliza valores de ejemplo para credenciales, arrendamiento y compartimentos de Oracle Cloud Infrastructure. Al finalizar el laboratorio, sustituya estos valores por otros específicos de su entorno en la nube.
Gestión de entornos de ejecución en Oracle Linux Automation Manager Private Automation Hub
Introducción
Private Automation Hub es un repositorio de Oracle Linux Automation Manager para gestionar recopilaciones, imágenes de entorno de ejecución y otro contenido seleccionado localmente dentro de la infraestructura de un cliente.
En este tutorial se muestra cómo instalar Private Automation Hub y cargar un entorno de ejecución personalizado en su registro de contenedores. Para obtener más información sobre la creación de entornos de ejecución personalizados, consulte nuestro tutorial en la utilidad Builder.
Objetivos
En este tutorial, aprenderá a:
- Variables de contraseña seguras con
ansible-vault
- Instalación de Private Automation Hub con variables
- Cargar un entorno de ejecución personalizado en el registro de Private Automation Hub
Requisitos
- Dos sistemas que ejecutan Oracle Linux
- Una para instalar Private Automation Hub
- Otra opción para ejecutar la utilidad Builder y actuar como cliente en Private Automation Hub
Despliegue de Oracle Linux
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 Luna Desktop.
-
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
-
Actualizar la configuración de la instancia de Oracle Linux.
cat << EOF | tee instances.yml > /dev/null compute_instances: 1: instance_name: "devops-node" type: "server" 2: instance_name: "ol-pah" type: "server" passwordless_ssh: true use_olam_builder: true use_devops_vnc: true add_pah_ports: true olam_type: none 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.
Instalación de los paquetes de Private Automation Hub
-
Abra un terminal y conéctese mediante SSH a la instancia ol-pah.
ssh oracle@<ip_address_of_instance>
-
Instale el repositorio de Oracle Linux Automation Manager.
Oracle Linux 8:
sudo dnf install -y oraclelinux-automation-manager-release-el8
Oracle Linux 9:
sudo dnf install -y oraclelinux-automation-manager-release-el9
-
Instale el paquete de Private Automation Hub.
sudo dnf install -y ol-private-automation-hub-installer
Este comando instala los manuales y roles de instalación de Private Automation Hub,
ansible-core
,python3.11
y otras dependencias de paquetes.
Instalación de Private Automation Hub
Al instalar Private Automation Hub, debe definir las contraseñas para la cuenta de superusuario admin
de Private Automation Hub y su base de datos backend. En lugar de pasarlos al manual de estrategias al aire libre, vamos a realizar ese paso de forma más segura utilizando ansible-vault
.
La utilidad ansible-vault
, que se incluye con Oracle Linux Automation Engine, permite el cifrado y descifrado de archivos de datos estructurados, incluidos archivos de texto, variables y manuales de YAML.
Encriptaremos un archivo variable que contenga nuestras dos contraseñas para nuestros fines.
-
Copie el manual de Private Automation Hub en el directorio de trabajo.
cp -r /usr/share/ansible/collections/ansible_collections/oraclelinux/private_automation_hub/playbooks/single-node/ ~/single_node
-
Cambie al directorio de trabajo.
cd ~/single_node
-
Cree un archivo de inventario.
El archivo de inventario de este manual requiere el nombre de host y el nombre de usuario SSH donde el manual instalará Private Automation Hub. El archivo de inventario se define en formato INI o YAML. El inventario de muestra
hosts.singlenode.example
del manual de instalación utiliza YAML, por lo que utilizaremos el formato INI aquí para demostrar una opción alternativa.tee hosts > /dev/null <<EOF [hub] ol-pah ansible_host=ol-pah ansible_user=oracle EOF
A diferencia del ejemplo que utiliza
hub
como alias para ansible_host, este archivo de inventario INI utilizahub
como nombre de grupo. Los grupos permiten la creación de relaciones principal-secundario entre hosts y los clasifican en una o más categorías para ejecutar tareas o asignar variables. -
Cree un almacén que contenga las variables de contraseña.
ansible-vault create vault_passwords.yml
Al ejecutar el comando, se le solicita que cree una contraseña de almacén. La utilidad
ansible-vault
utiliza esta contraseña para descifrar el contenido del almacén y acceder a este contenido desde un manual. La contraseña puede ser cualquier combinación de caracteres, pero recuerde que no puede recuperarla.Una vez que haya introducido y confirmado la contraseña, la utilidad abrirá el archivo
vault_passwords.yml
en el editor predeterminado. Para el entorno de prácticas gratuitas, el editor esvi
. Escribai
para introducir el modoINSERT
y pegue estas variables de contraseña de Private Automation Hub de ejemplo.Nota: Estas son las variables que utiliza el manual al instalar Private Automation Hub y definir las contraseñas de superusuario y base de datos.
--- olpah_admin_password: password olpah_db_password: password
Cierre y guarde el archivo escribiendo
ESC
,:wq!
y, a continuación,ENTER
. -
Verifique el contenido del almacén.
ansible-vault view vault_passwords.yml
Introduzca la contraseña del almacén en la petición de datos y
ansible-vault
muestra el contenido del almacén en el terminal. -
Ejecuta el manual de Private Automation Hub.
ansible-playbook single-node-install.yml -i hosts -e "@vault_passwords.yml" --ask-vault-pass
-i
define el archivo de inventario-e
define cualquier variable de tiempo de ejecución como pareskey=value
o en un archivo de variables--ask-vault-pass
solicita la contraseña del almacén
Existen métodos alternativos para proporcionar la contraseña del almacén, que puede revisar en la documentación de flujo ascendente.
Nota: La instalación de Private Automation Hub tarda entre 10 y 20 minutos. Durante la instalación, el progreso del manual se desplaza por el terminal hasta que se completan todas las tareas.
Abrir una sesión de VNC en la instancia DevOps
La sesión de VNC le permite conectarse a la interfaz de usuario web de Private Automation Hub mediante el nombre de host o el nombre de dominio completo (FQDN) en el entorno de prácticas gratuitas. Se requiere el uso del nombre de host o el FQDN, ya que la protección integrada de Django protege la interfaz de usuario web contra ataques de falsificación de solicitudes entre sitios (CSRF).
-
Salga de la sesión SSH existente.
exit
-
Abra un nuevo terminal y conéctese a la instancia de devops-node mediante SSH.
La opción
-L
permite el reenvío local, que abre un puerto local para conectarse a través de un túnel SSH al servidor VNC remoto.ssh -L 5914:localhost:5901 oracle@<ip_address_of_instance>
-
Cambie al escritorio Luna.
-
Abra el visor TigerVNC haciendo clic en el menú Aplicaciones, Internet y, a continuación, en TigerVNC Viewer.
-
Inicie sesión en el entorno de la GUI del servidor desplegado introduciendo
localhost:5914
en el cuadro de texto VNC Server (Servidor VNC) y pulsando el botón Connect (Conectar). -
Introduzca la contraseña del usuario
oracle
de oracle y pulse el botón OK (Aceptar). -
El escritorio de la GUI del servidor se muestra con una configuración de inicio de sesión por primera vez.
-
Press the Next button three times, then the Skip button, followed by the Start Using Oracle Linux Server button. Por último, cierre o minimice la ventana Introducción.
Conexión a Private Automation Hub
-
Abra un explorador web dentro de la sesión de VNC e introduzca la URL.
https://ol-pah
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 la interfaz de usuario web de Private Automation Hub.
Utilice el nombre de usuario
admin
y la contraseñapassword
. Esta contraseña es el valor que definimos paraolpah_admin_password
en el archivo de variables de tiempo de ejecución. -
La interfaz de usuario web se muestra después de una conexión correcta.
Agregar entorno de ejecución mediante la interfaz de usuario web
Uno de los elementos que gestiona Private Automation Hub son los entornos de ejecución. Esta función permite a Private Automation Hub servir como repositorio para imágenes de contenedor, lo que permite a los administradores interactuar con ellas mediante Podman y la interfaz de usuario web.
-
Haga clic en Remote Registries (Registros remotos) en la interfaz de usuario web en Execution Environments (Entornos de ejecución) en el menú de navegación.
-
Haga clic en el botón Agregar registro remoto.
-
Introduzca los siguientes valores en los campos específicos.
- Name:
Quay Upstream Registry
- URL:
https://quay.io
- Name:
-
Haga clic en el botón Guardar.
El registro remoto recién creado aparece en el panel Remote Registries (Registros remotos).
-
Haga clic en Entornos de ejecución en Entornos de ejecución en el menú de navegación.
-
Haga clic en el botón Agregar entorno de ejecución.
La interfaz de usuario web muestra el cuadro de diálogo Agregar entorno de ejecución. A través de este cuadro de diálogo, podemos extraer imágenes de contenedor de registros ascendentes u otros registros.
-
Introduzca o seleccione los siguientes valores en los campos específicos.
- Name:
upstream/awx-ee
- Upstream Name:
ansible/awx-ee
- Registry: Quay Upstream Registry
- Agregar etiquetas para incluir: escriba
latest
y, a continuación,ENTER
- Name:
-
Haga clic en el botón Guardar.
El entorno de ejecución recién creado aparece en el panel Entornos de ejecución.
-
Sincronice el entorno de ejecución upstream/awx-ee desde el registro remoto.
-
Haga clic en el menú vertical de tres puntos situado a la derecha de la opción upstream/awx-ee.
-
Seleccione Sincronizar de registro
Aparece un cuadro de diálogo emergente que indica que se ha iniciado la sincronización.
-
Haga clic en el enlace página de detalles del cuadro de diálogo emergente para ver el estado de esta tarea.
-
La tarea muestra un icono Finalizado.
-
Haga clic en Entornos de ejecución en Entornos de ejecución en el menú de navegación.
-
Haga clic en el enlace upstream/awx-ee del panel Entornos de ejecución.
Este enlace muestra las instrucciones para extraer esta imagen de Private Automation Hub en el separador Detalles.
-
Haga clic en el separador Imágenes.
Este panel muestra más detalles sobre la imagen, incluido su etiqueta, tamaño y el resumen sha256.
-
Entorno de ejecución push mediante Podman
-
Abra un terminal y conéctese mediante SSH a la instancia de devops-node.
ssh oracle@<ip_address_of_instance>
Esta instancia contiene una instalación de la utilidad Builder y un entorno de ejecución personalizado incorporado. Para obtener más información sobre la realización de estas tareas, consulte Creación de entornos de ejecución personalizados con la utilidad de creación de Oracle Linux Automation Manager.
-
Cambie al directorio de trabajo del proyecto.
cd ~/my_custom_ee_project
Este directorio contiene los archivos de datos de la utilidad Builder, que Podman utiliza para crear la imagen de entorno de ejecución personalizada.
-
Muestra las imágenes locales existentes.
podman images
La salida muestra nuestra imagen personalizada y las imágenes
olam-ee
yolam-builder
por defecto de Oracle Linux Automation Manager. -
Log in to the Private Automation Hub.
podman login -u admin https://ol-pah.$(hostname -d) --tls-verify=0
-u
es un usuario con privilegios para acceder al registro de contenedorol-pah.$(hostname -d)
es el FQDN del registro de contenedor--tls-verify=0
desactiva la verificación de certificados TLS, ya que el entorno de prácticas gratuitas utiliza certificados autofirmados
El comando solicita un
Password:
. Introduzca la contraseña que coincida con las credenciales de conexión para el usuarioadmin
de Private Automation Hub. -
Etiquete la imagen personalizada local.
Antes de transferir la imagen al registro de Private Automation Hub, cree la estructura de repositorio y la etiqueta necesarias mediante la imagen local.
podman tag localhost/my_custom_ee ol-pah.$(hostname -d)/my_first_olam_ee_image
-
Verifique que la nueva imagen etiquetada existe.
podman images
Salida de ejemplo:
[oracle@devops-node my_custom_ee_project]$ podman images REPOSITORY TAG IMAGE ID CREATED SIZE localhost/my_custom_ee latest fbc43634b168 5 hours ago 2.29 GB ol-pah.lv.vcn5ef1c2b6.oraclevcn.com/my_first_olam_ee_image latest fbc43634b168 5 hours ago 2.29 GB <none> <none> 92aa94db3699 5 hours ago 1.4 GB <none> <none> cc087fbfa018 5 hours ago 1.45 GB container-registry.oracle.com/oracle_linux_automation_manager/olam-ee latest 368657c8376d 5 weeks ago 1.25 GB container-registry.oracle.com/oracle_linux_automation_manager/olam-builder latest 5e98580f7956 5 weeks ago 546 MB
-
Cargue la imagen personalizada en Private Automation Hub.
Nota: Sustituya
<IMAGE ID>
por el ID de imagen real demy_first_olam_ee_image
de la salida depodman images
.podman push --tls-verify=0 <IMAGE ID> ol-pah.$(hostname -d)/my_first_olam_ee_image:latest
-
Confirme la carga en la interfaz de usuario web.
-
Cambie al explorador que contiene la interfaz de usuario web de Private Automation Hub.
-
Vaya a Entornos de ejecución.
-
Observe el nuevo my_first_olam_ee_image.
-
Pasos Siguientes
La salida dentro de la interfaz de usuario web confirma que tiene un Private Automation Hub en funcionamiento y la capacidad de cargar y almacenar sus imágenes personalizadas. Consulta nuestros otros tutoriales que utilizan Oracle Linux Automation Manager para practicar tus habilidades.
Enlaces relacionados
- Documentación de Oracle Linux Automation Manager
- Formación de 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 aprendizaje gratuito 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 Execution Environments in Oracle Linux Automation Manager Private Automation Hub
G39662-01
Copyright ©2023, Oracle and/or its affiliates.