Как установить Ansible AWX на Debian 10

12 set 2022 5 min di lettura
Как установить Ansible AWX на Debian 10
Indice dei contenuti

Введение

Ansible — это инструмент автоматизации с открытым исходным кодом, используемый для предоставления программного обеспечения, управления конфигурацией и развертывания приложений. Позволяет автоматически устанавливать, настраивать и развертывать приложения в нескольких системах.

AWX — это веб-приложение, используемое для управления Ansible. Вы можете управлять плейбуками, запасами, секретами и запланированными заданиями Ansible из веб-интерфейса AWX.

Функции

  • Он поддерживает несколько облаков, таких как AWS, Azure и GCP.
  • Мониторинг активности пользователей
  • Повышение эффективности и безопасности
  • Контроль доступа на основе ролей пользователей и аутентификации
  • Планирование работы
  • Интегрированные уведомления

В этом посте мы покажем вам, как установить AWX на сервер Debian 10.

Предпосылки

  • Сервер под управлением Debian 10.
  • Пользователь root или пользователь с привилегиями sudo.

Если вы хотите установить Ansible AWX на удаленный сервер, продолжайте чтение, в противном случае пропустите первый абзац «Подключение к серверу» и читайте следующий.

Подключение к серверу

Чтобы получить доступ к серверу, вам нужно знать IP-адрес. Вам также потребуется ваше имя пользователя и пароль для аутентификации. Чтобы подключиться к серверу как root, введите следующую команду:

ssh root@IP_DEL_SERVER

Далее вам нужно будет ввести пароль пользователя root.

Если вы не используете пользователя root, вы можете войти под другим именем пользователя с помощью той же команды, а затем изменить root на свое имя пользователя:

ssh nome_utente@IP_DEL_SERVER

Затем вам будет предложено ввести пароль пользователя.

Стандартный порт для подключения по ssh — 22, если ваш сервер использует другой порт, вам нужно будет указать его с помощью параметра -p, затем введите следующую команду:

ssh nome_utente@IP_DEL_SERVER -p PORTA

Начать

Сначала обновите все системные пакеты до последней версии, используя следующую команду:

sudo apt-get update -y

Как только все пакеты будут обновлены, установите другие необходимые пакеты с помощью следующей команды:

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

После того, как вы установили все пакеты, вы можете перейти к следующему шагу.

Установить Ansible

Далее вам нужно будет установить Ansible в вашей системе. По умолчанию последняя версия Ansible не включена в репозиторий Debian 10. Поэтому вам нужно будет добавить репозиторий Ansible в APT. Вы можете добавить его с помощью следующей команды:

sudo echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu bionic main" | tee /etc/apt/sources.list.d/ansible.list

После добавления репозитория добавьте ключ GPG с помощью следующей команды:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367

Затем обновите репозиторий и установите последнюю версию Ansible с помощью следующей команды:

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

После установки Ansible вы можете проверить установленную версию Ansible с помощью следующей команды:

sudo ansible --version

Вы должны получить следующий результат:

ansible 2.9.19
 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 11 2020, 21:12:12) [GCC 8.3.0]

На данный момент Ansible установлен в вашей системе. Теперь вы можете перейти к следующему шагу.

Установите Docker и Docker Compose

Затем вам нужно будет установить Docker и Docker Compose в вашей системе. По умолчанию последняя версия Docker недоступна в репозитории по умолчанию Debian 10. Поэтому вам нужно будет добавить репозиторий Docker CE в вашу систему. Сначала добавьте ключ и репозиторий Docker с помощью следующей команды curl:

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

Затем обновите репозиторий и установите Docker CE с помощью следующей команды:

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

После установки Docker проверьте версию Docker с помощью следующей команды:

sudo docker --version

Вы должны увидеть следующий вывод:

Docker versione 20.10.5, build 55c4c88

Затем вам нужно будет установить последнюю версию Docker Compose в вашей системе. Вы можете загрузить двоичный файл Docker Compose с помощью следующей команды:

sudo curl -s https://api.github.com/repos/docker/compose/releases/latest | grep browser_download_url | grep docker-compose-Linux-x86_64 | cut -d '"' -f 4 | wget -qi -

После завершения загрузки установите соответствующие разрешения с помощью следующей команды chmod:

sudo chmod +x docker-compose-Linux-x86_64

Затем переместите двоичный файл Docker Compose в системный путь с помощью следующей команды mv:

sudo mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose

Затем проверьте версию Docker Compose с помощью следующей команды:

sudo docker-compose version

Вы должны получить следующий результат:

docker-compose version 1.28.5, build c4eb3a1f
 docker-py version: 4.4.4
 CPython version: 3.7.10
 OpenSSL version: OpenSSL 1.1.0l 11 Sep 2020

На данный момент в системе установлены Docker и Docker Compose. Теперь вы можете перейти к следующему шагу.

Установите Node.js и NPM

Далее вам нужно будет установить Node.js и NPM в вашей системе. Вы можете установить Node.js и NPM с помощью следующей команды:

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

Затем установите другие зависимости Python с помощью следующей команды:

sudo apt-get install python3-pip git pwgen -y

Затем установите модуль Docker Compose, соответствующий вашей версии Docker Compose, с помощью следующей команды:

sudo pip3 install docker-compose==1.28.5

После этого вы можете перейти к следующему шагу.

Примечание

Установите AdWords Express

Затем вам нужно будет установить AWX в вашей системе. Сначала загрузите AWX из репозитория Git Hub с помощью следующей команды wget:

sudo wget https://github.com/ansible/awx/archive/17.1.0.zip

После завершения загрузки разархивируйте загруженный файл с помощью следующей команды:

sudo unzip 17.1.0.zip

Затем измените каталог на установщик с помощью следующей команды cd:

cd awx-17.1.0/installer/

Затем сгенерируйте секретный ключ, выполнив следующую команду:

sudo pwgen -N 1 -s 30

Вы должны получить следующий результат:

d1h81f048AA0hg0238erej203939d

Затем отредактируйте файл инвентаризации и определите имя пользователя, пароль и секретный ключ администратора с помощью вашего редактора:

sudo nano inventory

Измените следующие строки:

admin_user=admin
 admin_password=securepassword
 secret_key=d1h81f048AA0hg0238erej203939d

Когда закончите, сохраните и закройте файл, затем установите AWX, выполнив следующую команду:

sudo ansible-playbook -i inventory install.yml

После успешной установки AWX вы должны получить следующий вывод:

changed: [localhost]

 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: Remove AWX containers before migrating postgres so that the old postgres container does not get used] ********************
 ok: [localhost]

 TASK [local_docker: Run migrations in task container] ****************************************************************************************
 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]

 TASK [local_docker: Wait for launch script to create user] ***********************************************************************************
 ok: [localhost]

 TASK [local_docker: Create Preload data] *****************************************************************************************************
 changed: [localhost]

 PLAY RECAP ************************************************************************************************************************************
 localhost: ok=21 changed=12 unreachable=0 failed=0 skipped=73 rescued=0 ignored=1

На данный момент AWX установлен в вашей системе. Теперь вы можете приступить к доступу к веб-интерфейсу AWX.

Войдите в Ansible AWX

Теперь откройте веб-браузер и войдите в веб-интерфейс Ansible AWX, используя URL-адрес http://your-server-ip. Вы будете перенаправлены на страницу входа в AWX:

Укажите имя пользователя и пароль администратора и нажмите кнопку « Войти ». Вы должны увидеть панель управления Ansible AWX.

Вывод

В этом руководстве мы увидели, как установить Ansible AWX на сервер Debian 10. Теперь вы можете легко управлять Ansible playbook, инвентарем и заданиями с панели инструментов AWX.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.