AWXは、RedHatが後援するオープンソースのコミュニティプロジェクトです。 AnsibleTowerの開発環境として機能します。 AWXは頻繁にリリースされ、すべての新しい開発が行われます。
Ansible AWXは、Ansibleホスト、プレイブック、モジュール、ジョブスケジューリング、ワークフローの自動化、資格情報の共有、および委任を可能にするツールを管理するためのWebベースのユーザーインターフェイスを提供します。
このチュートリアルでは、インストールを実行します Ansible AWXのプロセス Ubuntu 20.04 。
前提条件
- rootアクセス、またはSSH接続のsudo権限を持つユーザー。
- Ubuntu20.04または18.04
- 最小4GBRAM
- 最小2vcpus
- 最小20GB 無料のストレージスペース
Ansible AWXを正常に起動して実行するには、次のものもインストールする必要があります。
- Ansible
- DockerとDockerが構成します
- ノードとNPM
1。 Ubuntu20.04にAnsibleをインストールする
最初の更新システム
$ sudo apt update
Ansibleをインストールするには、次のように入力します:
$ sudo apt install ansible -y
インストールされているAnsibleのバージョンを確認するには、次のコマンドを実行します:
$ ansible --version
出力:
ansible 2.9.6
config file = /etc/ansible/ansible.cfg
configured module search path = ['/home/linoxide/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python3/dist-packages/ansible
executable location = /usr/bin/ansible
python version = 3.8.5 (default, Jan 27 2021, 15:41:15) [GCC 9.3.0]
メインの構成ファイルは/etc / ansible / hostsに保存されます ファイル。
2。 DockerとDockerComposeをインストールする
Dockerのインストールと構成を成功させるには、Ubuntu20.04にDockerをインストールする方法
を参照してください。Dockerのインストール後、バージョンを確認します:
$ docker version
出力:
Client: Docker Engine - Community
Version: 20.10.6
API version: 1.41
Go version: go1.13.15
Git commit: 370c289
Built: Fri Apr 9 22:47:17 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.6
API version: 1.41 (minimum version 1.12)
Go version: go1.13.15
Git commit: 8728dd2
Built: Fri Apr 9 22:45:28 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.4
GitCommit: 05f951a3781f4f2c1911b05e61c160e9c30eaa8e
runc:
Version: 1.0.0-rc93
GitCommit: 12644e614e25b05da6fd08a38ffa0cfe1903fdec
docker-init:
Version: 0.19.0
GitCommit: de40ad0
Docker Composeのインストールについては、Ubuntu20.04にDockerComposeをインストールする方法を参照してください。
Docker Composeのインストール後、バージョンを確認します:
$ docker-compose version
出力:
docker-compose version 1.29.2, build 5becea4c
docker-py version: 5.0.0 CPython version: 3.7.10 OpenSSL version: OpenSSL 1.1.0l 10 Sep 2019
3。ノードとNPMをインストールする
次に、Node.jsをインストールします
$ sudo apt install -y nodejs npm
また、NPMをインストールします
$ sudo npm install npm --global
4。 Ubuntu20.04にAnsibleAWXをインストールする
以前のインストールを完了したら、AnsibleAWXをインストールします。
docker-py pythonをインストールします 次のコマンドを使用するモジュール:
$ sudo apt install python3-pip git pwgen vim
リクエストをインストールします これにより、HTTP / 1.1リクエストを送信できます:
$ sudo pip3 install requests==2.22.0
また、DockerComposeがインストールされているバージョンと一致するPython用のdocker-composeモジュールが必要になります。
$ docker-compose version
出力:
docker-compose version 1.29.2, build 5becea4c
docker-py version: 5.0.0 CPython version: 3.7.10 OpenSSL version: OpenSSL 1.1.0l 10 Sep 2019
docker-composeバージョン(myは1.29.2)を確認し、次のコマンドでモジュールをインストールします。
$ sudo pip3 install docker-compose==1.29.2
pi-modulesをインストールした後、次のコマンドを使用してGitHubから最新のAWXzipファイルをダウンロードします。
$ wget https://github.com/ansible/awx/archive/17.1.0.zip
ダウンロードしたディレクトリを解凍します:
$ unzip 17.1.0.zip
そして、ディレクトリを awx-17.1.0/installer/に変更します。
$ cd awx-17.1.0/installer/
次のコマンドを使用して、秘密鍵を生成するか、AWXのランダムパスワードを生成します。
$ pwgen -N 1 -s 30
出力:
6YJ0TM4MsmpKIrNCqEVA1i4TAa3zbG
次に、在庫を見つけます ファイルを作成し、お気に入りのエディタで開きます:
$ sudo nano inventory
次の設定を維持するようにしてください:
注:秘密鍵を交換してください 生成したもので:
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=password
create_preload_data=True
secret_key=
6YJ0TM4MsmpKIrNCqEVA1i4TAa3zbG
この構成を自分の構成と一致させたら、次のコマンドを使用してプレイブックを実行します。
$ ansible-playbook -i inventory install.yml
install.yml -プレイブックファイルの名前です
-i インベントリファイルを使用するようにansibleに指示します
インストール出力:
タスクが失敗することなく、すべてがうまくいくことを確認します。
ansible-playbookのインストール後、Dockerコンテナーをチェックして、実行中のコンテナーのリストを取得します。
$ docker ps
出力:
ご覧のとおり、ansibleスクリプトは4つのdocker-containersを作成して起動します:
- awx_task
- awx_web
- awx_redis
- awx_postgres
私たちにとって最も重要なのはawx_web ポート80で実行されています 。
hostipを介してAnsibleAWXWeb-UIにアクセスできます またはホスト名 ポート80 。
インベントリで以前に定義された資格情報を使用してログインします ファイル。
ログイン後、メインダッシュボードが表示されます。そこから、Ansible AWXの管理を開始し、ダッシュボードの概要を楽しむことができます。
結論
このチュートリアルでは、Dockerコンテナでansible-playbookを使用してUbuntu20.04にAnsibleAWXをインストールする方法を学びました。