AWX導入(AnsibleTowerコミュニティ版)

2 min read読了の目安(約2000字

環境:Windows10 (minikubeインストール以外はLinuxも手順共通のはず…)
AWX:18.0.0

そもそもAWXって何?

Ansible Towerのコミュニティ版
無償で利用できるが、Ansible Towerと違いサポートは無い

minikubeインストール

https://minikube.sigs.k8s.io/docs/start/
ここからWindows installerをダウンロードしインストールする。
minikubeはローカル環境でkubernetesを動かすツール

Ingressインストール

$ minikube addons enable ingress

minikube起動

コマンドプロンプトを管理者モードで開く
CPU4,メモリ8GBが推奨

$ minikube start --cpus=4 --memory=8g --addons=ingress

※minikubeを利用する際、任意のドライバーが必要となる。
 vmware,docker,kvm2,podman,virtualboxのいずれかが必要
 今回はVirtualBoxをインストール済み

AWXオペレーターのデプロイ

$ minikube kubectl -- apply -f https://raw.githubusercontent.com/ansible/awx-operator/devel/deploy/awx-operator.yaml

AWXのデプロイ

C:\minikube等任意の場所にmyawx.ymlを作成し下記を入力する。

apiVersion: awx.ansible.com/v1beta1
kind: AWX
metadata:
  name: awx
spec:
  tower_ingress_type: Ingress
$ minikube kubectl apply -- -f C:\minikube\myawx.yml

確認

$ minikube kubectl get pods

画像のようになっていればOK

AWXにアクセスする

アクセスURLを取得

$ minikube service awx-service --url
http://IP:PORT

ブラウザからアクセスするとこんな画面が出る

パスワード取得

minikube kubectl -- get secret awx-admin-password -o jsonpath='{.data.password}'| more > C:\minikube\src.txt && certutil -f -decode C:\minikube\src.txt C:\minikube\dest.txt && type C:\minikube\dest.txt

Linuxの場合は

minikube kubectl -- get secret awx-admin-password -o jsonpath='{.data.password}' | base64 --decode

デコードがうまくいかない場合、ブラウザ上でデコードできるツールもある

https://www.en-pc.jp/tech/base64.php
ログイン
ID:admin
password:出力された文字列

これで導入完了です。
お疲れさまでした!

公式のAWX導入手順

https://github.com/ansible/awx/blob/devel/INSTALL.md

参考

https://qiita.com/segur/items/80a8f2e8642aedf83ae2