Поиск по сайту:

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


На этой странице

  1. Предпосылки
  2. Начало работы
  3. Установить Ansible
  4. Установите Docker и Docker Compose
  5. Установите Node.js и NPM.
  6. Установите AdWords Express
  7. Доступ к Ansible AWX
  8. Заключение

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

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

Функции

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

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

Предпосылки

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

Начиная

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

apt-get update -y

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

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

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

Установить Ansible

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

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

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

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

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

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

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

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 10 2019, 22:02:15) [GCC 8.3.0]

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

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

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

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

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

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

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

docker --version

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

Docker version 20.10.5, build 55c4c88

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

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 +x docker-compose-Linux-x86_64

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

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

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

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  10 Sep 2019

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

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

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

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

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

apt-get install python3-pip git pwgen -y

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

pip3 install docker-compose==1.28.5

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

Примечание. Убедитесь, что версия 1.28.5 соответствует версии Docker Compose, установленной в вашей системе.

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

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

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

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

unzip 17.1.0.zip

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

cd awx-17.1.0/installer/

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

pwgen -N 1 -s 30

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

3BgGA8MnM4gKTXV8r7vQhwjjNixO6o

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

nano inventory

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

admin_user=admin
admin_password=securepassword
secret_key=3BgGA8MnM4gKTXV8r7vQhwjjNixO6o

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

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, инвентарем и заданиями с панели управления AWX. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.