GNU/Linux >> Tutoriels Linux >  >> Linux

Comment installer Ansible AWX sur Debian 10

Ansible est un outil de gestion et d'automatisation de la configuration gratuit et open source utilisé pour gérer des centaines et des milliers de serveurs à partir d'un emplacement central.

Ansible AWX est un projet open source, sponsorisé par Red Hat, qui vous aide à contrôler Ansible dans les environnements informatiques. Il fournit une interface Web REST API et un moteur de tâches pour Ansible. Vous pouvez gérer les playbooks, les secrets, les inventaires et les tâches cron à l'aide de l'interface Web AWX.

Dans ce tutoriel, nous allons vous montrer comment installer Ansible AWX avec Docker sur Debian 10.

Prérequis

  • Un nouveau VPS Debian 10 sur la plate-forme cloud d'Atlantic.net
  • Un mot de passe root configuré sur votre serveur

Étape 1 - Créer un serveur cloud Atlantic.Net

Tout d'abord, connectez-vous à votre serveur Atlantic.Net Cloud. Créez un nouveau serveur, en choisissant Debian 10 comme système d'exploitation, avec au moins 4 Go de RAM. Connectez-vous à votre serveur cloud via SSH et connectez-vous à l'aide des informations d'identification mises en évidence en haut de la page.

Une fois connecté à votre serveur Debian 10, exécutez la commande suivante pour mettre à jour votre système de base avec les derniers packages disponibles.

apt-get update -y

Étape 2 - Installer Docker

Tout d'abord, vous devrez installer Docker et Docker compose sur votre système. Par défaut, la dernière version de Docker n'est pas disponible dans le référentiel standard Debian, vous devrez donc ajouter le référentiel Docker à votre système.

Installez les dépendances requises avec la commande suivante :

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

Ensuite, téléchargez et ajoutez la clé Docker GPG avec la commande suivante :

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

Ensuite, ajoutez le référentiel Docker avec la commande suivante :

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

Ensuite, mettez à jour le référentiel Docker et installez Docker avec Docker compose à l'aide de la commande suivante :

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

Une fois les deux packages installés, vérifiez la version installée de Docker avec la commande suivante :

docker --version

Vous devriez obtenir le résultat suivant :

Docker version 19.03.13, build 4484c46d9d

Étape 2 :Installer Ansible

AWX est construit sur le dessus d'Ansible. vous devrez donc installer Ansible sur votre système.

Tout d'abord, ajoutez le référentiel Ansible avec la commande suivante :

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

Ensuite, mettez à jour le référentiel et installez Ansible avec la commande suivante :

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

Une fois Ansible installé, vérifiez la version installée d'Ansible à l'aide de la commande suivante :

ansible --version

Vous devriez obtenir le résultat suivant :

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]

Étape 3 :Installez Node.js et la bibliothèque Python

Tout d'abord, installez Node.js, NPM et Git avec la commande suivante :

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

Ensuite, installez le module Python pour Docker et les autres dépendances requises avec la commande suivante :

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

Ensuite, mettez à jour la version Python par défaut avec la commande suivante :

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

Ensuite, vous devrez installer le module Docker compose Python sur votre système.

Tout d'abord, vérifiez la version installée de Docker compose avec la commande suivante :

docker-compose version

Vous devriez obtenir le résultat suivant :

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

Ensuite, installez la version correspondante du module Docker compose Python avec la commande suivante :

pip3 install docker-compose==1.21.0

Étape 4 - Installer Ansible AWX

Commencez par télécharger la dernière version de la source AWX à partir du référentiel Git à l'aide de la commande suivante :

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

Une fois téléchargé, changez le répertoire en awx et générez la clé secrète avec la commande suivante :

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

Vous devriez obtenir le résultat suivant :

4NaNkNcMBOj4Jxp4fWi91mymuW9TbR

Créez ensuite un nouveau fichier d'inventaire avec la commande suivante :

nano inventory

Ajoutez les lignes suivantes, y compris l'utilisateur administrateur, le mot de passe, la clé secrète, le port et le nom d'hôte, comme indiqué ci-dessous :

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

Enregistrez et fermez le fichier lorsque vous avez terminé.

Ensuite, exécutez le playbook pour installer Ansible AWX avec la commande suivante :

ansible-playbook -i inventory install.yml

Une fois Ansible AWX installé, vous devriez obtenir le résultat suivant :

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  

Ensuite, vous pouvez vérifier la liste des conteneurs en cours d'exécution à l'aide de la commande suivante :

docker ps

Vous devriez obtenir le résultat suivant :

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

Étape 5 - Accéder au tableau de bord Ansible AWX

Maintenant, ouvrez votre navigateur Web et accédez au tableau de bord Ansible AWX à l'aide de l'URL http://your-server-ip . Vous serez redirigé vers la page de connexion AWX :

Fournissez votre nom d'utilisateur et votre mot de passe d'administrateur que vous avez définis dans le fichier d'inventaire et cliquez sur le bouton SIGN EN bouton. Vous devriez voir le tableau de bord Ansible AWX sur la page suivante :

Conclusion

Toutes nos félicitations! Vous avez installé avec succès Ansible AWX avec Docker sur Debian 10. Vous pouvez désormais contrôler facilement l'inventaire Ansible, les secrets, les playbooks, etc. depuis le tableau de bord AWX; essayez-le maintenant sur l'hébergement VPS d'Atlantic.Net !


Linux
  1. Comment installer Docker sur Debian 10 Buster

  2. Comment installer Docker sur Debian 10 Buster Linux

  3. Comment installer Docker Engine sur Debian 11

  4. Comment installer Ansible sur Debian 10

  5. Comment installer Ansible sur Debian 11

Comment installer Docker sur Debian 9

Comment installer Docker sur Debian 10

Comment installer Docker sur Debian 11

Comment installer Docker sur Debian 9 Stretch

Comment installer Bitwarden sur Debian 11

Comment installer Docker CE sur Debian 11