GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo instalar Ansible AWX en Debian 10

Ansible es una herramienta de automatización y administración de configuración gratuita y de código abierto que se utiliza para administrar cientos y miles de servidores desde una ubicación central.

Ansible AWX es un proyecto de código abierto, patrocinado por Red Hat, que lo ayuda a controlar Ansible en entornos de TI. Proporciona una API REST de interfaz basada en web y un motor de tareas para Ansible. Puede administrar libros de jugadas, secretos, inventarios y trabajos cron mediante la interfaz basada en web de AWX.

En este tutorial, le mostraremos cómo instalar Ansible AWX con Docker en Debian 10.

Requisitos

  • Un nuevo Debian 10 VPS en la plataforma en la nube de Atlantic.net
  • Una contraseña de root configurada en su servidor

Paso 1:crear un servidor en la nube de Atlantic.Net

Primero, inicie sesión en su servidor en la nube de Atlantic.Net. Cree un nuevo servidor, eligiendo Debian 10 como sistema operativo, con al menos 4 GB de RAM. Conéctese a su servidor en la nube a través de SSH e inicie sesión con las credenciales resaltadas en la parte superior de la página.

Una vez que haya iniciado sesión en su servidor Debian 10, ejecute el siguiente comando para actualizar su sistema base con los últimos paquetes disponibles.

apt-get update -y

Paso 2:instalar Docker

Primero, deberá instalar Docker y Docker compose en su sistema. De forma predeterminada, la última versión de Docker no está disponible en el repositorio estándar de Debian, por lo que deberá agregar el repositorio de Docker a su sistema.

Instale las dependencias requeridas con el siguiente comando:

apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common -y

A continuación, descargue y agregue la clave GPG de Docker con el siguiente comando:

curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -

A continuación, agregue el repositorio de Docker con el siguiente comando:

add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"

A continuación, actualice el repositorio de Docker e instale Docker con Docker compose usando el siguiente comando:

apt-get update -y
apt-get install docker-ce docker-compose -y

Una vez que ambos paquetes estén instalados, verifique la versión instalada de Docker con el siguiente comando:

docker --version

Deberías obtener el siguiente resultado:

Docker version 19.03.13, build 4484c46d9d

Paso 2:instalar Ansible

AWX está integrado en la parte superior de Ansible. por lo que deberá instalar Ansible en su sistema.

Primero, agregue el repositorio de Ansible con el siguiente comando:

apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu bionic main" | tee /etc/apt/sources.list.d/ansible.list

A continuación, actualice el repositorio e instale Ansible con el siguiente comando:

apt-get update -y
apt-get install ansible -y

Una vez que Ansible esté instalado, verifique la versión instalada de Ansible con el siguiente comando:

ansible --version

Deberías obtener el siguiente resultado:

ansible 2.9.13
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/dist-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.16 (default, Oct 10 2019, 22:02:15) [GCC 8.3.0]

Paso 3:instalar Node.js y la biblioteca de Python

Primero, instale Node.js, NPM y Git con el siguiente comando:

apt-get install nodejs npm git -y
npm install npm --global

A continuación, instale el módulo de Python para Docker y otras dependencias requeridas con el siguiente comando:

apt-get install python3-pip pwgen python3-docker -y
pip3 install requests==2.14.2

A continuación, actualice la versión predeterminada de Python con el siguiente comando:

update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
update-alternatives --install /usr/bin/python python /usr/bin/python3 2

A continuación, deberá instalar el módulo Docker Compose Python en su sistema.

Primero, verifique la versión instalada de Docker compose con el siguiente comando:

docker-compose version

Deberías obtener el siguiente resultado:

docker-compose version 1.21.0, build unknown
docker-py version: 3.4.1
CPython version: 3.7.3
OpenSSL version: OpenSSL 1.1.1d  10 Sep 2019

A continuación, instaló la versión correspondiente del módulo Docker Compose Python con el siguiente comando:

pip3 install docker-compose==1.21.0

Paso 4:Instale Ansible AWX

Primero, descargue la última versión de la fuente AWX del repositorio de Git usando el siguiente comando:

git clone --depth 50 https://github.com/ansible/awx.git

Una vez descargado, cambie el directorio a awx y genere la clave secreta con el siguiente comando:

cd awx/installer/
pwgen -N 1 -s 30

Deberías obtener el siguiente resultado:

4NaNkNcMBOj4Jxp4fWi91mymuW9TbR

A continuación, cree un nuevo archivo de inventario con el siguiente comando:

nano inventory

Agregue las siguientes líneas, incluidos el usuario administrador, la contraseña, la clave secreta, el puerto y el nombre de host, como se muestra a continuación:

dockerhub_base=ansible
awx_task_hostname=awx
awx_web_hostname=awxweb
postgres_data_dir=/tmp/pgdocker
host_port=80
host_port_ssl=443
docker_compose_dir=/tmp/awxcompose
pg_username=awx
pg_password=awxpass
pg_database=awx
pg_port=5432
admin_user=admin
admin_password=adminpassword
create_preload_data=True
secret_key=2fCkx2K5GnIjBz4OterhOC3ey0WPdj

Guarde y cierre el archivo cuando haya terminado.

A continuación, ejecute el manual para instalar Ansible AWX con el siguiente comando:

ansible-playbook -i inventory install.yml

Una vez que se haya instalado Ansible AWX, debería obtener el siguiente resultado:

TASK [local_docker : Create Docker Compose Configuration] *************************************************************************************
changed: [localhost] => (item={u'mode': u'0600', u'file': u'environment.sh'})
changed: [localhost] => (item={u'mode': u'0600', u'file': u'credentials.py'})
changed: [localhost] => (item={u'mode': u'0600', u'file': u'docker-compose.yml'})
changed: [localhost] => (item={u'mode': u'0600', u'file': u'nginx.conf'})
changed: [localhost] => (item={u'mode': u'0664', u'file': u'redis.conf'})
TASK [local_docker : Render SECRET_KEY file] **************************************************************************************************
changed: [localhost]
TASK [local_docker : Start the containers] ****************************************************************************************************
changed: [localhost]
TASK [local_docker : Update CA trust in awx_web container] ************************************************************************************
changed: [localhost]
TASK [local_docker : Update CA trust in awx_task container] ***********************************************************************************
changed: [localhost]
PLAY RECAP ************************************************************************************************************************************
localhost                  : ok=15   changed=7    unreachable=0    failed=0    skipped=86   rescued=0    ignored=0  

A continuación, puede verificar la lista de contenedores en ejecución con el siguiente comando:

docker ps

Deberías obtener el siguiente resultado:

CONTAINER ID        IMAGE                COMMAND                  CREATED              STATUS              PORTS                  NAMES
167d008ee26f        ansible/awx:14.1.0   "/usr/bin/tini -- /u…"   About a minute ago   Up About a minute   8052/tcp               awx_task
260c028bf07d        ansible/awx:14.1.0   "/usr/bin/tini -- /b…"   About a minute ago   Up About a minute   0.0.0.0:80->8052/tcp   awx_web
e15d5ee1c940        postgres:10          "docker-entrypoint.s…"   About a minute ago   Up About a minute   5432/tcp               awx_postgres
6472ee690066        redis                "docker-entrypoint.s…"   About a minute ago   Up About a minute   6379/tcp               awx_redis

Paso 5:acceda al panel de Ansible AWX

Ahora, abra su navegador web y acceda al panel de Ansible AWX usando la URL http://your-server-ip . Será redirigido a la página de inicio de sesión de AWX:

Proporcione su nombre de usuario y contraseña de administrador que ha definido en el archivo de inventario y haga clic en FIRMAR EN botón. Debería ver el panel de Ansible AWX en la siguiente página:

Conclusión

¡Felicidades! Ha instalado correctamente Ansible AWX con Docker en Debian 10. Ahora puede controlar fácilmente el inventario, los secretos, los libros de jugadas y más de Ansible desde el panel de control de AWX; ¡Pruébelo ahora en VPS Hosting de Atlantic.Net!


Linux
  1. Cómo instalar Docker en Debian 10 Buster

  2. Cómo instalar Docker en Debian 10 Buster Linux

  3. Cómo instalar Docker Engine en Debian 11

  4. Cómo instalar Ansible en Debian 10

  5. Cómo instalar Ansible en Debian 11

Cómo instalar Docker en Debian 9

Cómo instalar Docker en Debian 10

Cómo instalar Docker en Debian 11

Cómo instalar Docker en Debian 9 Stretch

Cómo instalar Bitwarden en Debian 11

Cómo instalar Docker CE en Debian 11