Configura Ansible por ti mismo

AnsibleAnsibleBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

¡Bienvenido al reto de configuración de Ansible! Acabas de aprender cómo instalar y configurar Ansible en un sistema Ubuntu. Ahora, es hora de poner a prueba tus habilidades. Imagina que eres un administrador de sistemas recientemente contratado y que tu primera tarea es configurar Ansible en un servidor Ubuntu recién instalado. Este reto simulará ese escenario del mundo real, impulsándote a aplicar lo que has aprendido y demostrar tu capacidad para trabajar de manera independiente con Ansible.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL ansible(("Ansible")) -.-> ansible/AnsibleSetupandConfigurationGroup(["Ansible Setup and Configuration"]) ansible(("Ansible")) -.-> ansible/ModuleOperationsGroup(["Module Operations"]) ansible(("Ansible")) -.-> ansible/InventoryManagementGroup(["Inventory Management"]) linux(("Linux")) -.-> linux/RemoteAccessandNetworkingGroup(["Remote Access and Networking"]) linux(("Linux")) -.-> linux/PackagesandSoftwaresGroup(["Packages and Softwares"]) ansible/AnsibleSetupandConfigurationGroup -.-> ansible/install("Ansible Setup") ansible/ModuleOperationsGroup -.-> ansible/ping("Network Test") ansible/InventoryManagementGroup -.-> ansible/groups_inventory("Define Inventory Groups") linux/RemoteAccessandNetworkingGroup -.-> linux/ssh("Secure Connecting") linux/PackagesandSoftwaresGroup -.-> linux/apt("Package Handling") subgraph Lab Skills ansible/install -.-> lab-390383{{"Configura Ansible por ti mismo"}} ansible/ping -.-> lab-390383{{"Configura Ansible por ti mismo"}} ansible/groups_inventory -.-> lab-390383{{"Configura Ansible por ti mismo"}} linux/ssh -.-> lab-390383{{"Configura Ansible por ti mismo"}} linux/apt -.-> lab-390383{{"Configura Ansible por ti mismo"}} end

Instalación y configuración de Ansible

Tareas

  1. Actualizar y mejorar los paquetes del sistema.
  2. Instalar Ansible en la máquina virtual LabEx (Ubuntu 22.04).
  3. Configurar SSH para la autenticación sin contraseña en localhost.
  4. Crear un archivo de inventario de Ansible con dos grupos: "local" y "webservers".
  5. Probar la conectividad de Ansible para asegurarse de que funcione correctamente.

Requisitos

  • Todas las operaciones deben realizarse en el directorio /home/labex/project.
  • La versión de Ansible instalada debe ser la más reciente disponible.
  • El par de claves SSH debe generarse con 4096 bits de RSA y el comentario "labex@ansible-challenge".
  • El archivo de inventario de Ansible debe crearse en /etc/ansible/hosts.
  • El archivo de inventario debe contener:
    • Un grupo "local" con "localhost" utilizando la conexión local.
    • Un grupo "webservers" con un host llamado "web1" que apunta a localhost utilizando la conexión SSH.
  • Debes poder ejecutar comandos de Ansible sin que se te solicite la contraseña.

Pistas

Se te pedirá la contraseña del usuario labex. Puedes encontrar la contraseña en el terminal VNC ejecutando:

echo $PASSWORD

Ejemplo

Después de completar el reto, al ejecutar ansible --version debería mostrar algo similar a:

ansible x.x.x
...

El contenido de /etc/ansible/hosts debería ser similar a:

[local]
localhost ansible_connection=local

[webservers]
web1 ansible_host=localhost ansible_connection=ssh ansible_user=labex

Al ejecutar ansible all -m ping debería devolver éxito tanto para localhost como para web1.

✨ Revisar Solución y Practicar

Resumen

En este reto, has demostrado tu capacidad para configurar Ansible en un sistema Ubuntu 22.04 recién instalado. Has actualizado el sistema, instalado Ansible, configurado SSH para la autenticación sin contraseña, creado un inventario de Ansible y verificado la funcionalidad de la configuración. Estas habilidades son fundamentales para cualquier administrador de sistemas o ingeniero DevOps que trabaje con Ansible. Al completar este reto, has demostrado que puedes desplegar Ansible de manera independiente en un nuevo entorno, lo que te prepara para los escenarios del mundo real en los que necesitarás configurar rápidamente herramientas de automatización en nuevos sistemas.