En esta sección, aprenderemos cómo utilizar Ansible Tower para gestionar y automatizar tareas de TI de manera eficiente. Ansible Tower proporciona una interfaz gráfica de usuario (GUI), una API RESTful y una interfaz de línea de comandos (CLI) para gestionar configuraciones, despliegues y operaciones de TI.
Objetivos de Aprendizaje
- Comprender la interfaz de usuario de Ansible Tower.
- Crear y gestionar proyectos e inventarios.
- Ejecutar y monitorear trabajos.
- Configurar credenciales y usuarios.
- Interfaz de Usuario de Ansible Tower
1.1. Panel de Control
El panel de control de Ansible Tower proporciona una vista general del estado de los trabajos, inventarios y proyectos.
- Trabajos Recientes: Muestra los trabajos ejecutados recientemente.
- Inventarios: Lista de inventarios disponibles.
- Proyectos: Lista de proyectos configurados.
1.2. Navegación Principal
La navegación principal incluye las siguientes secciones:
- Dashboard: Vista general del sistema.
- Jobs: Lista de trabajos ejecutados y en ejecución.
- Templates: Plantillas de trabajos configurados.
- Projects: Gestión de proyectos.
- Inventories: Gestión de inventarios.
- Credentials: Gestión de credenciales.
- Users: Gestión de usuarios y equipos.
- Creación y Gestión de Proyectos
2.1. Crear un Proyecto
Un proyecto en Ansible Tower es una colección de playbooks de Ansible.
- Navegar a Proyectos: En la navegación principal, selecciona "Projects".
- Agregar Proyecto: Haz clic en el botón "Add" para crear un nuevo proyecto.
- Configurar Proyecto:
- Name: Nombre del proyecto.
- Description: Descripción del proyecto.
- Organization: Organización a la que pertenece el proyecto.
- Source Control Type: Tipo de control de versiones (Git, Subversion, etc.).
- Source Control URL: URL del repositorio del proyecto.
- Source Control Branch/Tag/Commit: Rama, etiqueta o commit específico.
2.2. Sincronizar Proyecto
Después de crear el proyecto, es necesario sincronizarlo para obtener los playbooks del repositorio.
- Seleccionar Proyecto: En la lista de proyectos, selecciona el proyecto recién creado.
- Sincronizar: Haz clic en el botón "Sync" para sincronizar el proyecto.
- Gestión de Inventarios
3.1. Crear un Inventario
Un inventario en Ansible Tower es una colección de hosts gestionados.
- Navegar a Inventarios: En la navegación principal, selecciona "Inventories".
- Agregar Inventario: Haz clic en el botón "Add" para crear un nuevo inventario.
- Configurar Inventario:
- Name: Nombre del inventario.
- Description: Descripción del inventario.
- Organization: Organización a la que pertenece el inventario.
3.2. Agregar Hosts al Inventario
- Seleccionar Inventario: En la lista de inventarios, selecciona el inventario recién creado.
- Agregar Host: Haz clic en el botón "Add Host" para agregar un nuevo host.
- Configurar Host:
- Name: Nombre del host.
- Description: Descripción del host.
- Variables: Variables específicas del host.
- Ejecución y Monitoreo de Trabajos
4.1. Crear una Plantilla de Trabajo
Una plantilla de trabajo define cómo se ejecuta un playbook en un inventario específico.
- Navegar a Plantillas: En la navegación principal, selecciona "Templates".
- Agregar Plantilla de Trabajo: Haz clic en el botón "Add" y selecciona "Job Template".
- Configurar Plantilla de Trabajo:
- Name: Nombre de la plantilla.
- Job Type: Tipo de trabajo (Run, Check).
- Inventory: Inventario a utilizar.
- Project: Proyecto que contiene el playbook.
- Playbook: Playbook a ejecutar.
- Credentials: Credenciales necesarias para la ejecución.
4.2. Ejecutar un Trabajo
- Seleccionar Plantilla de Trabajo: En la lista de plantillas, selecciona la plantilla de trabajo.
- Ejecutar: Haz clic en el botón "Launch" para ejecutar el trabajo.
4.3. Monitorear Trabajos
- Navegar a Trabajos: En la navegación principal, selecciona "Jobs".
- Ver Detalles del Trabajo: Selecciona un trabajo para ver sus detalles, incluyendo el estado, salida y eventos.
- Configuración de Credenciales y Usuarios
5.1. Configurar Credenciales
Las credenciales son necesarias para acceder a los hosts y repositorios.
- Navegar a Credenciales: En la navegación principal, selecciona "Credentials".
- Agregar Credencial: Haz clic en el botón "Add" para crear una nueva credencial.
- Configurar Credencial:
- Name: Nombre de la credencial.
- Description: Descripción de la credencial.
- Organization: Organización a la que pertenece la credencial.
- Credential Type: Tipo de credencial (Machine, Source Control, etc.).
- Inputs: Información específica del tipo de credencial (usuario, contraseña, clave SSH, etc.).
5.2. Gestionar Usuarios
- Navegar a Usuarios: En la navegación principal, selecciona "Users".
- Agregar Usuario: Haz clic en el botón "Add" para crear un nuevo usuario.
- Configurar Usuario:
- Username: Nombre de usuario.
- First Name: Nombre.
- Last Name: Apellido.
- Email: Correo electrónico.
- Password: Contraseña.
- Organization: Organización a la que pertenece el usuario.
Conclusión
En esta sección, hemos aprendido a utilizar Ansible Tower para gestionar proyectos, inventarios, trabajos, credenciales y usuarios. Ansible Tower facilita la automatización de tareas de TI mediante una interfaz gráfica intuitiva y herramientas de gestión avanzadas. En la siguiente sección, profundizaremos en la gestión de proyectos e inventarios en Ansible Tower.
Ansible: De Principiante a Avanzado
Módulo 1: Introducción a Ansible
Módulo 2: Conceptos Básicos de Ansible
Módulo 3: Playbooks
- Introducción a los Playbooks
- Escribiendo tu Primer Playbook
- Estructura del Playbook
- Variables y Hechos
- Condicionales y Bucles
Módulo 4: Roles
Módulo 5: Técnicas Avanzadas de Playbook
Módulo 6: Ansible Galaxy
Módulo 7: Ansible Tower
- Introducción a Ansible Tower
- Instalando Ansible Tower
- Usando Ansible Tower
- Gestionando Proyectos e Inventarios
Módulo 8: Ansible para DevOps
Módulo 9: Mejores Prácticas de Ansible
- Organización del Código
- Mejores Prácticas de Seguridad
- Ajuste de Rendimiento
- Pruebas de Código Ansible