GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo instalar Ansible (herramienta de automatización) en Debian 10 (Buster)

Hoy en día en el campo de TI, la automatización es el tema candente y cada organización está comenzando a adoptar las herramientas de automatización como Puppet , Ansible , cocinero , CFEngine , capataz y Katelo . De estas herramientas, Ansible es la primera opción de casi todas las organizaciones de TI para administrar sistemas similares a UNIX y Linux. En este artículo, demostraremos cómo instalar y usar la herramienta ansible en Debian 10 Server.

Detalles de mi laboratorio:

  • Debian 10:servidor Ansible/nodo controlador:192.168.1.14
  • CentOS 7:host de Ansible (servidor web):192.168.1.15
  • CentOS 7:host de Ansible (servidor de base de datos):192.169.1.17

También demostraremos cómo se pueden administrar los servidores Linux con Ansible Server

Instalación de Ansible en el servidor Debian 10

Supongo que en su sistema Debian 10 tiene un usuario que tiene privilegios de root o derechos de sudo. En mi configuración, tengo un usuario local llamado "pkumar" con derechos de sudo.

Los paquetes de Ansible 2.7 están disponibles en los repositorios predeterminados de Debian 10, ejecute los siguientes comandos desde la línea de comandos para instalar Ansible,

$ sudo apt update
$ sudo apt install ansible -y

Ejecute el siguiente comando para verificar la versión ansible,

[email protected]:~$ sudo ansible --version

Para instalar la última versión de Ansible 2.8, primero debemos configurar los repositorios de Ansible.

Ejecute los siguientes comandos uno tras otro,

$ echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu bionic main" \ 
| sudo tee -a /etc/apt/sources.list
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
$ sudo apt update
$ sudo apt install ansible -y
$ sudo ansible --version

Administrar servidores Linux usando Ansible

Consulte los siguientes pasos para administrar servidores similares a Linux utilizando el nodo del controlador Ansible,

Paso:1) Intercambiar las claves SSH entre Ansible Server y sus hosts

Genere las claves ssh desde el servidor ansible y comparta las claves entre los hosts ansible

$ sudo -i
# ssh-keygen
# ssh-copy-id [email protected]
# ssh-copy-id [email protected]

Paso:2) Crear archivo de inventario de Ansible Hosts

Cuando se instala ansible, se crea automáticamente el archivo /etc/hosts, en este archivo podemos mencionar los hosts de ansible o sus clientes. También podemos crear nuestro propio archivo de inventario de host ansible en nuestro directorio de inicio,

Obtenga más información sobre:​​Cómo administrar el inventario de host dinámico y estático de Ansible

Ejecute el siguiente comando para crear un inventario de hosts ansible en nuestro directorio de inicio

[email protected]:~$ vi $HOME/hosts
[Web]
192.168.1.15

[DB]
192.168.1.17

Guardar y salir del archivo

Nota: En el archivo de hosts anterior, también podemos usar el nombre de host o FQDN, pero para eso debemos asegurarnos de que los hosts de ansible sean accesibles por nombre de host o fqdn.

Paso:3) Probar y usar módulos ansible predeterminados

Ansible viene con muchos módulos predeterminados que se pueden usar en el comando ansible, los ejemplos se muestran a continuación,

Sintaxis:

# ansible -i -m

donde:

  • -i ~/hosts :contiene una lista de hosts ansible
  • -m: después de -m, especifique el módulo ansible como ping  &shell
  • : Hosts Ansible donde queremos ejecutar los módulos ansible

Verifique la conectividad de ping usando el módulo de ping ansible

$ sudo ansible -i ~/hosts -m ping all
$ sudo ansible -i ~/hosts -m ping Web
$ sudo ansible -i ~/hosts -m ping DB

La salida de los comandos anteriores sería algo como lo siguiente:

Ejecutar comandos de shell en hosts ansible usando el módulo de shell

Sintaxis: # ansible -i -m shell -a  

Ejemplo:

[email protected]:~$ sudo ansible -i ~/hosts -m shell -a "uptime" all
192.168.1.17 | CHANGED | rc=0 >>
 01:48:34 up  1:07,  3 users,  load average: 0.00, 0.01, 0.05

192.168.1.15 | CHANGED | rc=0 >>
 01:48:39 up  1:07,  3 users,  load average: 0.00, 0.01, 0.04

[email protected]:~$
[email protected]:~$ sudo ansible -i ~/hosts -m shell -a "uptime ; \
 df -Th / ; uname -r" Web
192.168.1.15 | CHANGED | rc=0 >>
 01:52:03 up  1:11,  3 users,  load average: 0.12, 0.07, 0.06
Filesystem              Type  Size  Used Avail Use% Mounted on
/dev/mapper/centos-root xfs    13G 1017M   12G   8% /
3.10.0-327.el7.x86_64

[email protected]:~$

La salida de los comandos anteriores confirma que hemos configurado correctamente el nodo del controlador ansible

Vamos a crear un libro de jugadas de instalación de NGINX de muestra, el siguiente libro de jugadas instalará nginx en todos los servidores que forman parte del grupo de host web, pero en mi caso tengo una máquina centos 7 en este grupo de host.

[email protected]:~$ vi nginx.yaml
---
- hosts: Web
  tasks:
    - name: Install latest version of nginx on CentOS 7 Server
      yum: name=nginx state=latest
    - name: start nginx
      service:
          name: nginx
          state: started

Ahora ejecute el libro de jugadas usando el siguiente comando,

[email protected]:~$ sudo ansible-playbook -i ~/hosts  nginx.yaml

la salida del comando anterior sería algo así como a continuación,

Esto confirma que el libro de jugadas de Ansible se ejecutó con éxito, eso es todo del artículo, comparta sus comentarios y opiniones.


Debian
  1. Cómo instalar VirtualBox 6.1 en Debian 10 (Buster)

  2. Cómo instalar ownCloud en Debian 10 (Buster)

  3. Cómo instalar WildFly en Debian 10 Buster

  4. Cómo instalar R en Debian 10 Buster

  5. Cómo instalar Ansible en Debian 10

Cómo instalar Tomcat en Debian 10 Buster

Cómo instalar Vagrant en Debian 10 Buster

Cómo instalar Plex Media Server en Debian 10 Buster

Cómo instalar Odoo en Debian 10 Buster

Cómo instalar Go en Debian 11

Cómo instalar Samba en Debian 10 Buster