Ubuntu 26.04 LTSでAnsible AWXを構築する|k3s+AWX Operator入門
※ 本記事にはアフィリエイト広告(Amazonアソシエイト・楽天アフィリエイト等)が含まれています。
この記事はもともと、Ubuntu 22.04でAWXを触ったときの自分用メモでした。コマンドの羅列だけで読み物として不親切だったのと、AWXのインストール方法が現在は大きく変わっているため、最新のUbuntu 26.04 LTSのインストールから通しで動かす手順に全面リライトしました。
ゴールはシンプルで、ブラウザからAnsibleを操作できるGUI「AWX」を、検証機(またはVM)に立ち上げるところまでです。
AWXとは?なぜ入れたいのか
Ansibleはコマンドラインの自動化ツールですが、AWXはそのWeb GUI版です(Red Hatの有償製品「Ansible Automation Platform」のアップストリーム=無料版にあたります)。
- Playbookの実行をボタン一つにできる
- 実行履歴・ログがWebで見える
- ジョブのスケジュール実行や権限管理ができる
「コマンドを叩ける人しか自動化を使えない」状態から卒業できるのが最大の魅力です。
前提と検証環境
- マシン:検証用PC(VMでもクラウドVPSでも手順は同じ)
- OS:Ubuntu Server 26.04 LTS(2026年4月リリースの最新LTS)
- 構成:k3s(軽量Kubernetes)+ AWX Operator
昔のAWXは docker-compose や専用インストーラで入れられましたが、現在の公式インストール方法はKubernetes上にAWX Operatorで入れる方式のみです。「Kubernetesかぁ…」と身構えるかもしれませんが、軽量ディストリビューションのk3sを使えばコマンド1行なので大丈夫です。
Step 1:Ubuntu 26.04 LTS をインストールする
- Ubuntu公式サイトから Ubuntu Server 26.04 LTS のISOをダウンロード
- VMなら新規仮想マシンに、実機ならbalenaEtcher等でUSBメモリに書き込んで起動
- インストーラーは基本すべてデフォルトでOK。1点だけ、途中の 「Install OpenSSH server」には必ずチェックを入れてください(以後の作業をSSHで進めるため)
- インストール完了後、ログインしてまずお決まりの更新を:
sudo apt update && sudo apt upgrade -y
sudo reboot
Step 2:k3s(軽量Kubernetes)を入れる
k3sは1コマンドで入るKubernetesです。
curl -sfL https://get.k3s.io | sh -
1〜2分で完了します。動作確認:
sudo k3s kubectl get nodes
STATUS が Ready になっていればOK。以降 kubectl を素で使えるように、設定をコピーしておきます。
mkdir -p ~/.kube
sudo cp /etc/rancher/k3s/k3s.yaml ~/.kube/config
sudo chown $(id -u):$(id -g) ~/.kube/config
export KUBECONFIG=~/.kube/config
echo 'export KUBECONFIG=~/.kube/config' >> ~/.bashrc
Step 3:AWX Operator をデプロイする
AWX Operatorは「AWXの面倒を見てくれる管理役」です。作業用ディレクトリを作り、kustomization.yaml を用意します。
mkdir ~/awx && cd ~/awx
kustomization.yaml:
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- github.com/ansible/awx-operator/config/default?ref=<最新タグ>
images:
- name: quay.io/ansible/awx-operator
newTag: <最新タグ>
namespace: awx
<最新タグ> は awx-operatorのリリースページで最新版を確認して、2箇所とも同じ値に置き換えてください(AWXはリリースが速いので、記事にバージョンを直書きするとすぐ古くなります)。
適用して、Operatorが起動するのを確認します。
kubectl apply -k .
kubectl get pods -n awx
awx-operator-controller-manager-… というPodが Running になれば準備完了です。
Step 4:AWX本体をデプロイする
同じディレクトリに awx.yaml を作ります。
apiVersion: awx.ansible.com/v1beta1
kind: AWX
metadata:
name: awx
spec:
service_type: nodeport
nodeport_port: 30080
kustomization.yaml の resources に追記します。
resources:
- github.com/ansible/awx-operator/config/default?ref=<最新タグ>
- awx.yaml
再度適用:
kubectl apply -k .
ここがいちばん時間がかかる工程です。PostgreSQLやWeb・タスク用のPodが順に立ち上がるので、様子を見ながら気長に待ちます。
kubectl get pods -n awx -w
私の環境では全Podが Running になるまで10分弱かかりました。途中で Pending や再起動が見えても、たいてい待てば解決します。
Step 5:ログインする
管理者(admin)の初期パスワードを取り出します。
kubectl get secret awx-admin-password -n awx -o jsonpath="{.data.password}" | base64 --decode ; echo
ブラウザで http://サーバーのIPアドレス:30080 を開き、ユーザー名 admin+さっきのパスワードでログイン。AWXのダッシュボードが表示されたら構築完了です!
ハマりどころまとめ
実際にやってみてつまずいた(or つまずきそうになった)ポイントです。
- メモリ不足:4GBだとPodが
Pendingのまま進みません。8GBは用意する - 起動が遅いのは正常:
kubectl apply直後は数分間エラーっぽいログが流れますが、待つのが正解 - タグの指定漏れ:
kustomization.yamlのref=とnewTag:の2箇所を同じバージョンにしないと動きません - パスワードのSecret名は
metadata.nameに依存します(awxならawx-admin-password)
まとめ
- 現在のAWXは Kubernetes+AWX Operator が公式のインストール方法
- Ubuntu 26.04 LTS+k3sなら、OSインストール込みでも半日かからずGUIのAnsible環境が手に入る
- 最新の手順・バージョンは公式ドキュメントを必ず確認してください
Ubuntuの基礎から学びたい方は Ubuntuを基礎から徹底的に学んでみる!!#1 も、あわせてどうぞ。
私がこのブログで使っているレンタルサーバーです。公式が「サーバー処理速度 国内No.1」をうたうとおり表示が速く、初期費用は無料。WordPressの簡単セットアップも使えるので、検証用の環境をさっと用意したいときにも便利です。
ConoHa WINGを見てみる