BETA

CentOS8 にAWX をインストールする

投稿日:2019-12-07
最終更新:2019-12-07

docker-compose 版のAWXをCentOS 8 にインストールする手順のメモです。
この手順は次の環境で構築しています。操作はすべて管理者権限で実行しています。

  • MacOS Catalina
    • VirtualBox 6.0
      • CentOS 8 (MEM:4G, DISK:20G)

準備

  • 最小構成のCentOS 8 がインストールされている前提です
$ cat /etc/redhat-release  
CentOS Linux release 8.0.1905 (Core)   

パッケージのUPDATE

$ dnf update -y  

Ansible のインストール

Ansible のインストールは以下を参照してください。

CentOS 8 にAnsible をインストールする

Docker のインストール

手順は、以下を参照にしています。
CentOS8にDockerを入れる

$ dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo  
$ dnf -y install wget  
$ wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.2-3.3.el7.x86_64.rpm  
$ dnf install containerd.io-1.2.2-3.3.el7.x86_64.rpm  
$ dnf install -y docker-ce docker-ce-cli  
$ systemctl start docker  
$ systemctl enable docker  
$ docker --version  

Docker Composeのインストール

手順は、以下を参照にしています。
Docker Compose入門 (1)

$ curl -L https://github.com/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose  
$ chmod +x /usr/local/bin/docker-compose  

$ docker-compose -v  
  docker-compose version 1.25.0, build b42d419  

Python Docker パッケージのインストール

AWX インストールのPlaybook で利用されるPythonパッケージをインストールします。

$ pip3 -V  
  pip 19.3.1 from /usr/local/lib/python3.6/site-packages/pip (python 3.6)  
$ pip3 install docker  
$ pip3 install docker-compose  

ファイヤウォールの無効化

この手順の環境は、ローカルマシン内に閉じているため、ファイヤウォールを使用しないように変更します。
環境に合わせて、IPやポートの制限を解除するなどを実施してください。

$ systemctl stop firewalld  
$ systemctl disable firewalld  
$ reboot  

上記でファイヤウォールは完全に停止します。

AWX のインストール

AWX の入手

AWXをGitHubから取得してください。

$ git clone https://github.com/ansible/awx.git  
$ cd awx  
$ git branch  
  devel  

コンフィグファイルの編集

AWXをインストールする際に指定するコンフィグファイル./awx/installer/inventory を以下のように変更します。

1行目をコメントアウトし、実行するPythonをVer3 に明示的に定義を追加します。

# localhost ansible_connection=local ansible_python_interpreter="/usr/bin/env python"  
localhost ansible_connection=local ansible_python_interpreter="/usr/bin/python3"  

Docker-compose を使う場合は、以下を追記します

use_docker_compose=true  

AWX のインストール

インストールは、以下の手順でPlaybookを実行します。

$ pwd  
  ./awx/installer  
$ ansible-playbook -i inventory install.yml  

Playbook の実行が成功すると、以下のような結果となります。

.....  
.....  
PLAY RECAP *****************************************************************************************************************************  
localhost                  : ok=14   changed=3    unreachable=0    failed=0    skipped=100  rescued=0    ignored=0     

AWX の動作確認

コンテナの起動確認

AWXコンテナが正常に起動しているか確認してください。

$ docker ps -a  

CONTAINER ID        IMAGE                        COMMAND                  CREATED             STATUS              PORTS                                                 NAMES  
4e7abd3f8eb4        ansible/awx_task:9.0.1       "/tini -- /bin/sh -c…"   2 minutes ago       Up 2 minutes        8052/tcp                                              awx_task  
1d473569a82f        ansible/awx_web:9.0.1        "/tini -- /bin/sh -c…"   2 minutes ago       Up 2 minutes        0.0.0.0:80->8052/tcp                                  awx_web  
7c90aedfbd50        ansible/awx_rabbitmq:3.7.4   "docker-entrypoint.s…"   2 minutes ago       Up 2 minutes        4369/tcp, 5671-5672/tcp, 15671-15672/tcp, 25672/tcp   awx_rabbitmq  
cb0e164c4972        postgres:10                  "docker-entrypoint.s…"   2 minutes ago       Up 2 minutes        5432/tcp                                              awx_postgres  
bde6da6135eb        memcached:alpine             "docker-entrypoint.s…"   2 minutes ago       Up 2 minutes        11211/tcp                                             awx_memcached  

AWX のGUI 確認

WebブラウザでAWXを動かしているVMのIPアドレスを指定して起動します

http://192.168.56.101

ログインIDとパスワードは、./awx/installer/inventory ファイル内に記載されています

参考

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう