Как установить Ansible AWX на Debian 10
На этой странице
- Предпосылки
- Начало работы
- Установить Ansible
- Установите Docker и Docker Compose
- Установите Node.js и NPM.
- Установите AdWords Express
- Доступ к Ansible AWX
- Заключение
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. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.