Cómo crear y descargar roles en Ansible Galaxy y usarlos - Parte 9
- 4047
- 461
- Jaime Delgadillo
En Parte 9 de la serie Ansible, aprenderá cómo crear y descargar roles en Galaxia ansible y úsalos. Ansible es una herramienta de gestión de configuración y implementación automática simple pero efectiva que automatiza a la perfección tareas complejas de manera eficiente. Puede administrar cientos o incluso miles de servidores de un solo nodo de control utilizando un solo archivo de libro de jugadas.
Sin embargo, escribir libros de jugadas para administrar el mismo servicio en diferentes entornos puede ser bastante engorroso y esto generalmente conduce a la redundancia del código. Además, una mayor complejidad puede aumentar la dificultad para administrar todos los dispositivos.
En viene roles. En Ansible, Los roles se utilizan para desglosar los libros de jugadas en archivos reutilizables que se pueden usar en varios otros casos en los que surge la necesidad de realizar una tarea similar. Esto eliminó la necesidad de reescribir libros de jugadas una y otra vez y ahorra mucho tiempo y energía.
Los roles son simplemente funcionalidades de los libros de jugadas. Un rol se envía más o menos lo que constituiría un libro de jugadas: tareas, archivos, módulos, variables y plantillas. Además, tenga en cuenta que cada rol se limita a una tarea en particular o al resultado deseado.
Creando un papel ansible
Para crear un papel en Ansible, Simplemente use la sintaxis.
# ansible-galaxy init rol_name
Se crearán múltiples directorios y archivos en su directorio de trabajo actual. En este caso, he decidido crear un papel en el /etc/ansible/roles directorio.
Creemos un papel llamado apache.
# Ansible-Galaxy Init ApacheCrear papel de apache en ansible
Use el comando de árbol para echar un vistazo a la estructura del directorio del rol.
# Tree ApacheVerifique la estructura del directorio del rol Ansible
Como puede ver, se han creado varios directorios, sin embargo, no todos se utilizarán en el libro de jugadas.
Ahora, para usar su papel recién creado en un libro de jugadas, defina una tarea en el principal.YML Archivo contenido en el directorio de tareas de su nuevo rol.
/apache/tareas/main.YML --- - Hosts: Database_Servers Tareas: - Nombre: Instale Apache2 en Ubuntu WebServer apt: Nombre: Apache2 Estado: Instalado
Después, cree un archivo de libro de jugadas y llame al papel como se muestra.
--- - Hosts: Roles de servidores web: - Apache
Instalación de un rol de Ansible Galaxy
Roles jugar un papel crucial al compartir código con otros usuarios en el Ansible comunidad utilizando el Galaxia ansible plataforma. En Galaxia ansible, Obtiene miles de roles que realizan diferentes tareas, como la instalación de servidores web y bases de datos, herramientas de monitoreo, etc.
Galaxia ansible es una base de datos o un repositorio de roles ansibles que puede aprovechar en sus libros de jugadas y ayudar a optimizar sus tareas.
Buscar un papel en Galaxia ansible, Simplemente ejecute el comando.
# búsqueda de galaxia ansible
Por ejemplo, para buscar un rol nombrado mysql correr.
# Ansible-Galaxy Buscar mySQLBúsqueda de rol en Ansible
Como puede ver, hay cientos de roles que coinciden con la palabra clave de búsqueda mysql. Sin embargo, no todos los roles realizarán lo que pretende, por lo que se recomienda que lea las instrucciones cuidadosamente.
Para recopilar más información sobre un papel, simplemente ejecute el comando Ansible:
# Información ansible-Galaxy 5KYDEV0P5.Skydevops-mysqlVerifique la información de rol Ansible
En nuestro ejemplo, vamos a instalar el rol 5KYDEV0P5.Skydevops-mysql.
# Ansible-Galaxy instalar 5KYDEV0P5.Skydevops-mysqlInstalar papel en Ansible
El rol se descarga y se extrae al directorio de roles predeterminado ubicado en /etc/ansible/roles.
Posteriormente, el papel puede llamarse en un libro de jugadas, por ejemplo:
--- - Nombre: Instale los hosts del servidor MySQL: Roles de servidores web: • 5KYDEV0P5.Skydevops-mysql
Ahora puedes ejecutar con seguridad el libro de jugadas Ansible como se muestra.
# ansible-playbook install_mysql.YMLEjecutar Ansible Playbook
Además, puede visitar Ansible Galaxy a través de su navegador web y buscar manualmente roles para realizar varias tareas como se describe en el tablero.
Galaxia ansiblePor ejemplo, para buscar un rol de monitoreo como elasticsearch, clickea en el 'Supervisión'opción y búsqueda del rol como se muestra.
Monitoreo de búsqueda de rol en Ansible GalaxyGalaxia ansible Hace que sea más fácil para los usuarios instalar los mejores roles enumerando los roles más populares y descargados. Para obtener más información sobre un papel específico, simplemente haga clic en él.
Verifique la información de roles sobre Ansible GalaxyEn un libro de jugadas, también puedes especificar más de un papel, por ejemplo.
--- - Nombre: Instale los hosts del servidor MySQL: Roles de servidores web: • 5KYDEV0P5.Skydevops-Mysql • Aaronpederson.mariada
Para enumerar los roles instalados, simplemente ejecute.
# Lista de Galaxy AnsibleLista de roles instalados en Ansible Galaxy
Conclusión
Roles Haga que sea bastante fácil de reutilizar y compartir Ansible Playbooks. De esta manera, ahorran a un usuario mucho tiempo tratando de escribir mucho código redundante y pasar demasiado tiempo, lo que se habría utilizado en otras tareas de administración del sistema. Y eso es todo para esta guía.
- « Cómo encontrar a todos los clientes conectados a los puertos HTTP o HTTPS
- Cómo trabajar con variables y hechos de Ansible - Parte 8 »