Cómo instalar Ansible en Centos 8

Cómo instalar Ansible en Centos 8
Ansible se utiliza para administrar y administrar múltiples servidores desde una computadora central. Es una herramienta de administración de servidores. Ansible no necesita ninguna configuración en el lado del servidor como chef o títere. Simplemente instala Ansible en su computadora y administra o administra servidores a través de SSH. Es muy simple y fácil de usar. En este artículo, le mostraré cómo instalar y usar Ansible en Centos 8. Entonces empecemos.

Instalación de Ansible:

Ansible está disponible en el repositorio de Epel de Centos 8. Por lo tanto, puede instalar fácilmente Ansible en Centos 8.

Primero, actualice el caché del repositorio del paquete DNF con el siguiente comando:

$ sudo dnf makecache

Ahora, para habilitar el repositorio de EPEL, instale el liberación de epel Paquete con el siguiente comando:

$ sudo DNF Instalar Epel-Lanzamiento

Para confirmar la instalación, presione Y y luego presiona .

liberación de epel Se debe instalar el paquete y se debe habilitar el repositorio de Epel.

Ahora, actualice nuevamente el caché del repositorio del paquete DNF con el siguiente comando:

$ sudo dnf makecache

Ahora, instale Ansible con el siguiente comando:

$ sudo dnf install ansible

Para confirmar la instalación, presione Y y luego presiona .

DNF debe comenzar a descargar todos los paquetes requeridos de Internet.

Es posible que se le solicite que acepte la clave GPG del repositorio EPEL. Prensa Y y luego presiona para aceptarlo.

DNF debe comenzar a instalar todos los paquetes descargados.

En este punto, se debe instalar Ansible.

Ahora, ejecute el siguiente comando:

$ ansible --versión

Como puede ver, estoy ejecutando Ansible 2.9.3 Y está funcionando bien.

Configuración de servidores para Ansible:

Para administrar o administrar servidores con Ansible, debe tener el servidor SSH instalado y ejecutado en los servidores. El puerto SSH de los servidores debe estar abierto y los servidores deben ser accesibles desde el host ansible. Ese es el único requisito de usar Ansible.

En este artículo, voy a usar 4 máquinas virtuales (VM) (2 servidor Ubuntu 18.04 LTS VMS y 2 Debian 10 VMS) para demostrar los conceptos básicos de la administración y administración de servidores Ansible.

Las 4 máquinas virtuales son:

Linuxhint -F1A46 - 192.168.20.161
Linuxhint -8ee7a - 192.168.20.166
Linuxhint -S40 - 192.168.20.171
Linuxhint-S41-192.168.20.170

Puede usar las direcciones IP de los servidores para administrarlas o administrarlas con Ansible. También puede usar los nombres DNS de los servidores.

En este artículo, usaré el /etc/huéspedes Archivo para la resolución DNS de las direcciones IP de VMS.

Si quieres seguir, abre tu /etc/huéspedes Archivo con VI Text Editor de la siguiente manera:

$ sudo vi /etc /hosts

Ahora, agregue las líneas marcadas en la captura de pantalla a continuación y guarde el archivo.

Ahora, genere una llave SSH en su host CentOS 8 Ansible de la siguiente manera:

$ ssh-keygen

Prensa .

Prensa .

Prensa .

La tecla SSH debe generarse.

Ahora, debe cargar la tecla SSH a todos los servidores que desea administrar con Ansible.

Para copiar la tecla SSH a la VM1.Linuxhint.local servidor, ejecute el siguiente comando:

$ SSH-COPY-ID [email protected]

Ahora, escriba y luego presiona .

Ahora, escriba la contraseña de inicio de sesión del VM1.Linuxhint.local VM y prensa .

La clave SSH debe copiarse.

Haz lo mismo para el VM2.Linuxhint.local, VM3.Linuxhint.local y VM4.Linuxhint.local servidor.

$ ssh-copy-id [email protected]
$ SSH-COPY-ID [email protected]
$ ssh-copy-id [email protected]

Una vez que haya copiado la tecla SSH para las máquinas virtuales, debería poder SSH sin ninguna contraseña como pueda ver en la captura de pantalla a continuación.

Ahora, ejecute el siguiente comando en cada servidor para permitir el acceso de sudo sin contraseña para el usuario de inicio de sesión. Esto se requiere para que Ansible ejecute cualquier comando root.

$ echo "$ (whoami) all = (todos) nopasswd: todos" | Sudo Tee /etc /sudoers.d/$ (whoami)

Todos los servidores ahora están listos para ser configurados o administrados desde Ansible.

Usando Ansible:

Ansible mantiene una lista de todos los hosts que administra en un archivo llamado archivo de inventario. El archivo de inventario ansible es solo un archivo de texto simple simple.

Creemos un nuevo directorio de proyectos Ansible ~/ansible/ Primero, luego crearemos nuestro archivo de inventario.

$ mkdir ~/ansible

Ahora, navegue al ~/ansible directorio.

$ cd ~/ansible

Ahora, cree un archivo de inventario ansible de la siguiente manera. Puede llamar a este archivo cualquier cosa. Lo llamaré Hospedadores.

Hosts de $ VI

Ahora, puede agregar sus servidores de la siguiente manera. Aquí, ansible_user La opción se usa para definir el usuario que Ansible usará para ejecutar comandos en estos servidores. Por lo general, es el usuario de inicio de sesión del servidor.

También puede mezclar direcciones IP y nombres DNS de los servidores en el archivo de inventario.

También puedes agrupar servidores. Aquí tengo 2 grupos, Servidor web y dbserver.

En el Servidor web grupo, he agregado VM1 y VM2 servidor. En el dbserver grupo, he agregado VM3 y VM4 servidor.

Una vez que se crea el archivo de inventario, puede usar el archivo de inventario utilizando el -i Opción de Ansible.

Puede enumerar todos los hosts del archivo de inventario de la siguiente manera:

$ ansible -i anfitriones --lists -hosts todos

Puede verificar si todos los hosts están activos de la siguiente manera:

$ ansible -i anfitriones --lists -hosts -m ping todo

Como puede ver, todos los anfitriones están activos.

También puedes hacer ping a todos los anfitriones en un solo grupo.

$ ansible -i hosts --lists -hosts -m ping weberver

Puede ejecutar comandos de shell usando ansible de la siguiente manera:

$ ansible -i hosts -m shell -a 'comando'

También puede ejecutar comandos de shell (con privilegios sudo) de la siguiente manera.

$ ansible -i hosts -b - -become -method = sudo -m shell -a 'comando' | Nombre de grupo>

Por ejemplo, puede actualizar el caché del repositorio de paquetes APT en los hosts en el grupo de servidor web utilizando Ansible de la siguiente manera:

$ ansible -i hosts -b - -become-method = sudo -m shell -a 'Apt Update' WebServer

Como puede ver, el caché del repositorio de paquetes APT se actualiza para todos los hosts en el Servidor web grupo.

Intentemos instalar el servidor web Apache 2 en todos los hosts del Servidor web grupo.

$ ansible -i hosts -b - -become -method = sudo -m shell -a
'APT Install -y Apache2' WebServer

Apache Webserver debe instalarse en todos los hosts del Servidor web grupo.

Como puede ver, Apache Web Server está trabajando en todos los hosts en Servidor web grupo.

$ ansible -i hosts -b - -become -method = sudo -m shell -a 'curl -si
http: // localhost 'servidor web

De la misma manera, puede ejecutar cualquier comando en todos los hosts en dbserver grupo.

$ ansible -i hosts -m shell -a 'lsb_release -a' dbserver

También puede usar Ansible Playbook para administrar sus servidores más fácilmente. Ansible Playbook está fuera del alcance de este artículo. Lea la documentación de Ansible para obtener más información sobre Ansible Playbook.

Gracias por leer este artículo.