Ansible 和 AWX 是自动化运维领域的强大工具组合。Ansible 是一个简单高效的 IT 自动化工具,而 AWX 则是 Ansible 的开源 Web 管理平台,提供图形化界面来管理 Ansible 任务。本指南将带你一步步在 Ubuntu 22.04 上安装 Ansible 和 AWX,使用 Minikube 搭建单节点 Kubernetes 集群,并适配网络不稳定的环境。无论你是初学者还是有经验的运维工程师,这篇超详细指南都能帮你成功部署 AWX 并运行你的第一个任务!
环境说明
- 操作系统:Ubuntu 22.04
- 主节点:IP 192.168.85.132,主机名 leo
- Kubernetes 环境:Minikube(单节点集群)
- 容器运行时:Docker
- Ansible 版本:最新稳定版(通过 apt 安装)
- AWX 版本:2.19.0(通过 AWX Operator 部署)
- 目标:安装 Ansible 和 AWX,搭建单节点 Kubernetes 集群并运行 AWX,适配网络不稳定环境。
组件作用
- Ansible:一个开源的自动化工具,用于配置管理、应用部署和任务自动化,支持通过 SSH 管理远程主机,无需安装客户端。
- AWX:Ansible 的官方 Web 管理平台,提供图形化界面,支持任务调度、库存管理、权限控制和日志查看,是企业级 Ansible 管理的首选工具。
- Docker:容器运行时,用于运行 Minikube 和 AWX 的容器化组件。
- Minikube:一个轻量级的 Kubernetes 实现工具,用于在本地快速搭建单节点 Kubernetes 集群,适合开发和测试环境。
- kubectl:Kubernetes 的命令行工具,用于管理 Kubernetes 集群资源。
- Kustomize:一个 Kubernetes 原生配置管理工具,AWX Operator 的部署依赖它来处理 YAML 文件。
- make:构建工具,用于执行 AWX Operator 的部署脚本。
软件介绍
Ansible 是一个简单而强大的 IT 自动化平台,允许用户通过 YAML 格式的 Playbook 定义任务,支持配置管理、应用部署、编排等功能。AWX 是 Ansible Tower 的开源版本,提供了一个 Web 界面来管理 Ansible 任务,支持多用户协作、任务调度和权限管理。通过在 Kubernetes 上部署 AWX,可以实现更高的可扩展性和灵活性。本指南将使用 Minikube 在 Ubuntu 22.04 上部署 AWX,确保即使在网络不稳定的环境下也能成功安装。
本次安装需要的镜像如下:
软件如下
集群镜像如下
虚拟机信息如下
本次安装通过Vmware虚拟机进行安装,配置资源如下,但是实际使用的话8G内存+8CPU+50GB磁盘就够用,我的资源多我就对此忽略不计了,我本次安装也是遇到了很多问题,才整理出这个完整的步骤,本次的步骤包括在线安装和离线部署,还有就是这里面的镜像大家拉取后可以打包保存起来,下次安装的话可以省下来很多时间。
安装步骤
第一部分:安装 Ansible
1. 更新系统并安装 Ansible
# 更新系统软件包索引,确保获取最新的软件包信息
sudo apt update -y# 安装 software-properties-common,提供管理 PPA 源的工具
sudo apt install -y software-properties-common# 添加 Ansible 官方 PPA 源,以便安装最新版本的 Ansible
sudo add-apt-repository --yes --update ppa:ansible/ansible# 安装 Ansible 以及依赖工具 curl 和 git
sudo apt install -y ansible curl git
离线安装(可选):
如果网络不稳定,可以离线下载 Ansible 的 .deb 包:
- 访问 Debian 软件包页面 或 Ansible 官方 GitHub 发布页面,下载最新 .deb 文件(如 ansible_2.16.x_all.deb)。
- 使用 MobaXterm 连接到 leo@192.168.85.132,将文件拖放到 /home/leo/ 目录。
- 安装:
# 安装下载的 .deb 包 sudo dpkg -i /home/leo/ansible_2.16.x_all.deb# 解决可能的依赖问题 sudo apt install -f -y
2. 验证 Ansible 安装
# 检查 Ansible 版本,验证是否安装成功
ansible --version
期望输出:
ansible [core 2.16.x]
第二部分:准备 Kubernetes 环境
1. 安装 Docker
# 安装 Docker 容器运行时
sudo apt install -y docker.io# 启用并启动 Docker 服务
sudo systemctl enable docker --now
离线安装(可选):
如果网络不稳定,可以离线下载 Docker 的 .deb 包:
- 从 Docker 官网 下载最新 .deb 包(如 docker.io_20.10.21-0ubuntu1~22.04.3_amd64.deb)。
- 使用 MobaXterm 连接到 leo@192.168.85.132,将文件拖放到 /home/leo/ 目录。
- 安装:
# 安装下载的 .deb 包 sudo dpkg -i /home/leo/docker.io_*.deb# 解决可能的依赖问题 sudo apt install -f -y# 启用并启动 Docker 服务 sudo systemctl enable docker --now
2. 配置用户权限
# 将当前用户添加到 docker 组,避免每次运行 Docker 命令都需要 sudo
sudo usermod -aG docker $USER && newgrp docker
3. 验证 Docker 安装
# 检查 Docker 版本,验证是否安装成功
docker --version
期望输出:
Docker version 26.1.3, build 26.1.3-0ubuntu1~22.04.1
4. 安装 Minikube
# 下载 Minikube 的最新版本二进制文件
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64# 安装 Minikube 到系统路径
sudo install minikube-linux-amd64 /usr/local/bin/minikube
离线安装(可选):
- 从 Minikube GitHub Releases 下载 minikube-linux-amd64(直接链接:minikube-linux-amd64)。
- 使用 MobaXterm 连接到 leo@192.168.85.132,将文件拖放到 /home/leo/ 目录。
- 安装:
# 安装 Minikube 到系统路径 sudo install /home/leo/minikube-linux-amd64 /usr/local/bin/minikube
5. 验证 Minikube 安装
# 检查 Minikube 版本,验证是否安装成功
minikube version
期望输出:
minikube version: v1.35.0
6. 安装 kubectl
# 下载 kubectl v1.32.0 的二进制文件
curl -LO "https://dl.k8s.io/release/v1.32.0/bin/linux/amd64/kubectl"# 赋予执行权限
chmod +x kubectl# 移动到系统路径
sudo mv kubectl /usr/local/bin/
离线安装(可选):
- 从 Kubernetes GitHub Releases 下载 kubectl 的 Linux AMD64 二进制文件(直接链接:kubectl)。
- 使用 MobaXterm 连接到 leo@192.168.85.132,将文件拖放到 /home/leo/ 目录。
- 安装:
# 赋予执行权限 chmod +x /home/leo/kubectl# 移动到系统路径 sudo mv /home/leo/kubectl /usr/local/bin/
7. 验证 kubectl 安装
# 检查 kubectl 版本,验证是否安装成功
kubectl version --client
期望输出:
Client Version: v1.32.0
8. 安装 make
# 安装 make 工具,用于执行 AWX Operator 的部署脚本
sudo apt install -y make
离线安装(可选):
- 从 Ubuntu 软件源 下载最新 .deb 包(如 make_4.3-4.1build1_amd64.deb)。
- 使用 MobaXterm 连接到 leo@192.168.85.132,将文件拖放到 /home/leo/ 目录。
- 安装:
# 安装下载的 .deb 包 sudo dpkg -i /home/leo/make_*.deb# 解决可能的依赖问题 sudo apt install -f -y
9. 验证 make 安装
# 检查 make 版本,验证是否安装成功
make --version
期望输出:
GNU Make 4.3
10. 启动 Minikube
# 清理现有 Minikube 集群(如果存在)
minikube delete
拉取 Minikube 镜像:
# 在线拉取 Minikube 所需的 kicbase 镜像
docker pull gcr.io/k8s-minikube/kicbase:v0.0.46
如果拉取失败,使用华为云镜像源:
# 从华为云镜像源拉取 kicbase 镜像
docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/gcr.io/k8s-minikube/kicbase:v0.0.46# 打标签为原始镜像名称
docker tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/gcr.io/k8s-minikube/kicbase:v0.0.46 gcr.io/k8s-minikube/kicbase:v0.0.46
打包镜像:
# 将 kicbase 镜像打包为 tar 文件,以便离线使用
docker save -o /home/leo/kicbase-v0.0.46-amd64.tar gcr.io/k8s-minikube/kicbase:v0.0.46
加载镜像(验证打包是否可用):
# 加载打包的镜像,验证是否可用
docker load -i /home/leo/kicbase-v0.0.46-amd64.tar
期望输出:
Loaded image: gcr.io/k8s-minikube/kicbase:v0.0.46
启动 Minikube:
# 启动 Minikube,指定 Docker 驱动,分配 6144Mi 内存和 4 个 CPU
minikube start --driver=docker --memory=6144 --cpus=4
11. 验证 Minikube 状态
# 检查 Minikube 状态,验证是否启动成功
minikube status
期望输出:
minikube
type: Control Plane
host: Running
kubelet: Running
apiserver: Running
kubeconfig: Configured
第三部分:安装 AWX
1. 下载并解压 AWX Operator
# 下载 AWX Operator 2.19.0 的源码包
curl -LO https://github.com/ansible/awx-operator/archive/refs/tags/2.19.0.tar.gz# 重命名为更清晰的文件名
mv 2.19.0.tar.gz awx-operator-2.19.0.tar.gz# 解压源码包
tar -xzf awx-operator-2.19.0.tar.gz
离线安装(可选):
- 从 AWX Operator GitHub Releases 下载 awx-operator-2.19.0.tar.gz(直接链接:awx-operator-2.19.0.tar.gz)。
- 使用 MobaXterm 连接到 leo@192.168.85.132,将文件拖放到 /home/leo/ 目录。
- 解压:
# 解压下载的源码包 tar -xzf /home/leo/awx-operator-2.19.0.tar.gz
2. 安装 Kustomize(make deploy 依赖)
# 下载 Kustomize v5.6.0 的二进制文件
curl -LO https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize%2Fv5.6.0/kustomize_v5.6.0_linux_amd64.tar.gz# 解压 Kustomize
tar -xzf kustomize_v5.6.0_linux_amd64.tar.gz# 移动到系统路径
sudo mv kustomize /usr/local/bin/
离线安装(可选):
- 从 Kustomize GitHub Releases 下载 kustomize_v5.6.0_linux_amd64.tar.gz(直接链接:kustomize_v5.6.0_linux_amd64.tar.gz)。
- 使用 MobaXterm 连接到 leo@192.168.85.132,将文件拖放到 /home/leo/ 目录。
- 安装:
# 解压 Kustomize tar -xzf /home/leo/kustomize_v5.6.0_linux_amd64.tar.gz# 移动到系统路径 sudo mv kustomize /usr/local/bin/
3. 拉取并加载所有必要镜像
修复 DNS 解析(确保镜像源可访问):
# 检查当前 DNS 配置
cat /etc/resolv.conf
如果显示 nameserver 127.0.0.53,说明使用的是本地 DNS 代理,可能导致解析失败。永久修改 DNS:
# 编辑 systemd-resolved 配置文件
sudo nano /etc/systemd/resolved.conf
- 在 [Resolve] 部分添加:
[Resolve] DNS=8.8.8.8 8.8.4.4 FallbackDNS=223.5.5.5 223.6.6.6
- 8.8.8.8 和 8.8.4.4 是 Google DNS。
- 223.5.5.5 和 223.6.6.6 是阿里公共 DNS。
- 保存并退出:Ctrl+O,Enter,Ctrl+X。
重启 DNS 服务:
# 重启 systemd-resolved 服务以应用 DNS 配置
sudo systemctl restart systemd-resolved# 确保 /etc/resolv.conf 指向正确的文件
sudo ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
验证 DNS 解析:
# 测试是否能解析镜像源域名
ping docker.m.daocloud.io
ping docker.mirrors.ustc.edu.cn
如果仍然失败,临时修改 /etc/resolv.conf:
# 临时修改 DNS 配置
sudo nano /etc/resolv.conf
- 修改为:
nameserver 8.8.8.8 nameserver 8.8.4.4
- 保存并退出:Ctrl+O,Enter,Ctrl+X。
拉取镜像:
- 拉取 gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0(AWX Operator 依赖):
# 首选:从华为云镜像源拉取 docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0# 如果失败,尝试 DaoCloud 镜像源 docker pull docker.m.daocloud.io/kubebuilder/kube-rbac-proxy:v0.15.0 docker tag docker.m.daocloud.io/kubebuilder/kube-rbac-proxy:v0.15.0 gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0# 打标签(如果使用华为云镜像源) docker tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0 gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0# 加载到 Minikube minikube image load gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0# 打包镜像 docker save -o /home/leo/kube-rbac-proxy-v0.15.0.tar gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0# 验证打包是否可用 docker rmi gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0 docker load -i /home/leo/kube-rbac-proxy-v0.15.0.tar minikube image load gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0
- 拉取 quay.io/ansible/awx-operator:2.19.0(AWX Operator 镜像):
# 首选:直接拉取 docker pull quay.io/ansible/awx-operator:2.19.0# 如果失败,尝试 DaoCloud 镜像源 docker pull docker.m.daocloud.io/ansible/awx-operator:2.19.0 docker tag docker.m.daocloud.io/ansible/awx-operator:2.19.0 quay.io/ansible/awx-operator:2.19.0# 加载到 Minikube minikube image load quay.io/ansible/awx-operator:2.19.0# 打包镜像 docker save -o /home/leo/awx-operator-2.19.0.tar quay.io/ansible/awx-operator:2.19.0# 验证打包是否可用 docker rmi quay.io/ansible/awx-operator:2.19.0 docker load -i /home/leo/awx-operator-2.19.0.tar minikube image load quay.io/ansible/awx-operator:2.19.0
- 拉取 redis:7(AWX 依赖,修正为成功环境中的标签):
# 首选:从 AWS 镜像源拉取 docker pull public.ecr.aws/docker/library/redis:7.0# 如果失败,尝试 DaoCloud 镜像源 docker pull docker.m.daocloud.io/library/redis:7.0 docker tag docker.m.daocloud.io/library/redis:7.0 public.ecr.aws/docker/library/redis:7.0# 打标签为 redis:7(与成功环境一致) docker tag public.ecr.aws/docker/library/redis:7.0 redis:7# 加载到 Minikube minikube image load redis:7# 打包镜像 docker save -o /home/leo/redis-7.tar redis:7# 验证打包是否可用 docker rmi redis:7 docker load -i /home/leo/redis-7.tar minikube image load redis:7
- 拉取 quay.io/ansible/awx:24.6.0(AWX 镜像,与 AWX Operator 2.19.0 兼容):
# 首选:直接拉取 docker pull quay.io/ansible/awx:24.6.0# 如果失败,尝试 DaoCloud 镜像源 docker pull docker.m.daocloud.io/ansible/awx:24.6.0 docker tag docker.m.daocloud.io/ansible/awx:24.6.0 quay.io/ansible/awx:24.6.0# 如果已加载 quay.io/ansible/awx:24.6.1,打标签为 24.6.0 docker tag quay.io/ansible/awx:24.6.1 quay.io/ansible/awx:24.6.0# 加载到 Minikube minikube image load quay.io/ansible/awx:24.6.0# 打包镜像 docker save -o /home/leo/awx-24.6.0.tar quay.io/ansible/awx:24.6.0# 验证打包是否可用 docker rmi quay.io/ansible/awx:24.6.0 docker load -i /home/leo/awx-24.6.0.tar minikube image load quay.io/ansible/awx:24.6.0
- 拉取 quay.io/ansible/awx-ee:24.6.0(AWX Execution Environment 镜像):
# 首选:从 DaoCloud 镜像源拉取 docker pull docker.m.daocloud.io/ansible/awx-ee:24.6.0# 备选 1:从中国科学技术大学镜像源拉取 docker pull docker.mirrors.ustc.edu.cn/ansible/awx-ee:24.6.0# 备选 2:直接从 quay.io 拉取(可能需要代理) docker pull quay.io/ansible/awx-ee:24.6.0# 打标签(如果使用 DaoCloud 或中科大镜像源) docker tag docker.m.daocloud.io/ansible/awx-ee:24.6.0 quay.io/ansible/awx-ee:24.6.0 # 或 docker tag docker.mirrors.ustc.edu.cn/ansible/awx-ee:24.6.0 quay.io/ansible/awx-ee:24.6.0# 如果已加载 quay.io/ansible/awx-ee:24.6.1,打标签为 24.6.0 docker tag quay.io/ansible/awx-ee:24.6.1 quay.io/ansible/awx-ee:24.6.0# 加载到 Minikube minikube image load quay.io/ansible/awx-ee:24.6.0# 打包镜像 docker save -o /home/leo/awx-ee-24.6.0.tar quay.io/ansible/awx-ee:24.6.0# 验证打包是否可用 docker rmi quay.io/ansible/awx-ee:24.6.0 docker load -i /home/leo/awx-ee-24.6.0.tar minikube image load quay.io/ansible/awx-ee:24.6.0
- 拉取 postgres:15(AWX 数据库):
# 首选:从 DaoCloud 镜像源拉取 docker pull docker.m.daocloud.io/library/postgres:15# 备选 1:从中国科学技术大学镜像源拉取 docker pull docker.mirrors.ustc.edu.cn/library/postgres:15# 备选 2:直接从 Docker Hub 拉取(可能需要代理) docker pull postgres:15# 打标签(如果使用 DaoCloud 或中科大镜像源) docker tag docker.m.daocloud.io/library/postgres:15 postgres:15 # 或 docker tag docker.mirrors.ustc.edu.cn/library/postgres:15 postgres:15# 加载到 Minikube minikube image load postgres:15# 打包镜像 docker save -o /home/leo/postgres-15.tar postgres:15# 验证打包是否可用 docker rmi postgres:15 docker load -i /home/leo/postgres-15.tar minikube image load postgres:15
- 拉取 quay.io/sclorg/postgresql-15-c9s:latest(AWX 数据库,成功环境中使用的镜像):
# 首选:从 DaoCloud 镜像源拉取 docker pull docker.m.daocloud.io/quay.io/sclorg/postgresql-15-c9s:latest# 备选 1:从中国科学技术大学镜像源拉取 docker pull docker.mirrors.ustc.edu.cn/quay.io/sclorg/postgresql-15-c9s:latest# 备选 2:直接从 Quay.io 拉取(可能需要代理) docker pull quay.io/sclorg/postgresql-15-c9s:latest# 打标签(如果使用 DaoCloud 或中科大镜像源) docker tag docker.m.daocloud.io/quay.io/sclorg/postgresql-15-c9s:latest quay.io/sclorg/postgresql-15-c9s:latest # 或 docker tag docker.mirrors.ustc.edu.cn/quay.io/sclorg/postgresql-15-c9s:latest quay.io/sclorg/postgresql-15-c9s:latest# 加载到 Minikube minikube image load quay.io/sclorg/postgresql-15-c9s:latest# 打包镜像 docker save -o /home/leo/postgresql-15-c9s.tar quay.io/sclorg/postgresql-15-c9s:latest# 验证打包是否可用 docker rmi quay.io/sclorg/postgresql-15-c9s:latest docker load -i /home/leo/postgresql-15-c9s.tar minikube image load quay.io/sclorg/postgresql-15-c9s:latest
离线加载镜像(如果在线拉取失败):
# 加载之前打包的镜像
docker load -i /home/leo/kube-rbac-proxy-v0.15.0.tar
docker load -i /home/leo/awx-operator-2.19.0.tar
docker load -i /home/leo/redis-7.tar
docker load -i /home/leo/awx-24.6.1.tar
docker load -i /home/leo/awx-ee-24.6.1.tar
docker load -i /home/leo/postgres-15.tar
docker load -i /home/leo/postgresql-15-c9s.tar# 加载到 Minikube
minikube image load gcr.io/kubebuilder/kube-rbac-proxy:v0.15.0
minikube image load quay.io/ansible/awx-operator:2.19.0
minikube image load redis:7
minikube image load quay.io/ansible/awx:24.6.1
minikube image load quay.io/ansible/awx-ee:24.6.1
minikube image load postgres:15
minikube image load quay.io/sclorg/postgresql-15-c9s:latest
验证镜像是否加载:
# 检查 Minikube 中的镜像,验证是否加载成功
minikube ssh -- docker images | grep -E "kube-rbac-proxy|redis|awx-operator|awx|awx-ee|postgres"
期望输出:
quay.io/sclorg/postgresql-15-c9s latest 7cf012c03d6e 5 days ago 373MB
quay.io/ansible/awx-operator 2.19.0 a60201718711 9 months ago 552MB
quay.io/ansible/awx 24.6.1 87ab0ba4bf68 8 months ago 980MB
quay.io/ansible/awx-ee 24.6.1 f5df180d3d59 8 months ago 1.75GB
redis 7 7705dd2858c1 10 months ago 109MB
gcr.io/kubebuilder/kube-rbac-proxy v0.15.0 7ebda747308b 17 months ago 55.9M
4. 修改 AWX Operator 镜像版本
# 进入 AWX Operator 目录
cd ~/awx-operator-2.19.0# 编辑 manager.yaml 文件
nano config/manager/manager.yaml
- 找到 image 字段,将:
修改为:image: quay.io/ansible/awx-operator:latest
image: quay.io/ansible/awx-operator:2.19.0
- 保存并退出:Ctrl+O,Enter,Ctrl+X。
5. 部署 AWX Operator
# 进入 AWX Operator 目录
cd ~/awx-operator-2.19.0# 设置命名空间环境变量
export NAMESPACE=ansible-awx# 创建命名空间
kubectl create namespace $NAMESPACE# 部署 AWX Operator
make deploy
验证:
# 实时查看 Pod 状态,验证 AWX Operator 是否运行
kubectl get pods -n ansible-awx -w
期望输出:
NAME READY STATUS RESTARTS AGE
awx-operator-controller-manager-xxx 2/2 Running 0 Xm
6. 部署 AWX 实例
# 进入 AWX Operator 目录
cd ~/awx-operator-2.19.0# 复制示例配置文件
cp config/samples/awx_v1beta1_awx.yaml awx-ubuntu.yml# 编辑配置文件
nano awx-ubuntu.yml
- 修改为以下内容:
--- apiVersion: awx.ansible.com/v1beta1 kind: AWX metadata:name: awx-ubuntunamespace: ansible-awx spec:service_type: NodePortimage_pull_policy: IfNotPresent # 确保使用本地镜像web_resource_requirements:requests:cpu: 50mmemory: 128Mitask_resource_requirements:requests:cpu: 150mmemory: 384Miee_resource_requirements:requests:cpu: 150mmemory: 192Mi
- 保存并退出:Ctrl+O,Enter,Ctrl+X。
应用配置:
# 部署 AWX 实例
kubectl apply -f awx-ubuntu.yml -n ansible-awx
验证 AWX 实例:
# 实时查看 Pod 状态,验证 AWX 实例是否运行
kubectl get pods -n ansible-awx -w
期望输出:
NAME READY STATUS RESTARTS AGE
awx-operator-controller-manager-xxx 2/2 Running 0 Xm
awx-ubuntu-postgres-15-0 1/1 Running 0 Xs
awx-ubuntu-task-<hash> 4/4 Running 0 Xs
awx-ubuntu-web-<hash> 3/3 Running 0 Xs
7. 访问 AWX
端口转发:
# 查看 AWX 相关 Pod
kubectl get pods -n ansible-awx# 端口转发,将 AWX Web 服务映射到本地 8052 端口
nohup kubectl port-forward awx-ubuntu-web-<hash> 8052:8052 -n ansible-awx --address 0.0.0.0 &
直接通过 Minikube 获取服务 URL:
# 获取 AWX 服务的访问 URL
minikube service awx-ubuntu-service -n ansible-awx --url
期望输出:
http://192.168.49.2:30080
获取管理员密码:
# 获取 AWX 管理员密码
kubectl get secret awx-ubuntu-admin-password -n ansible-awx -o jsonpath="{.data.password}" | base64 --decode; echo
登录 AWX:
- URL:http://192.168.85.132:8052
- 用户名:admin
- 密码:上一步输出的密码
因为我是NAT模式,所以需要使用端口转发来做映射
接着打开登入页面
输入账号:admin
输入密码:praymwaE6t9I1Bh7kcGvqGxJ2JXlhy9Q
这个地方需要注意
这两个字段是通过hash得出来的,每次重启服务都会变化,在做映射服务的时候需要将hash字段替换到命令中的<hash>部分
希望这个文章能对大家带来便利,如果需要离线镜像的朋友,可以私信我,免费提供