一给 发表于 2025-3-27 12:31:36

解锁 AWX+Ansible 自动化运维新体验:快速摆设实战

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,确保纵然在网络不稳定的环境下也能成功安装。
              本次安装须要的镜像如下:https://i-blog.csdnimg.cn/direct/54496b9bd5a443de844f9f8b7646347c.png

       软件如下

       https://i-blog.csdnimg.cn/direct/e89fb9bbd6b441bcbbf31eab0b7fcfed.png
       集群镜像如下

       https://i-blog.csdnimg.cn/direct/8665cd2cca714329bac3961bd4fbb4b8.png
       虚拟机信息如下

       https://i-blog.csdnimg.cn/direct/514ba07c86ba4ba7a681efffe598ac76.png
        
               本次安装通过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               第二部分:准备 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      

[*]在 部分添加:
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-ubuntu
namespace: ansible-awx
spec:
service_type: NodePort
image_pull_policy: IfNotPresent# 确保使用本地镜像
web_resource_requirements:
    requests:
      cpu: 50m
      memory: 128Mi
task_resource_requirements:
    requests:
      cpu: 150m
      memory: 384Mi
ee_resource_requirements:
    requests:
      cpu: 150m
      memory: 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          Xmawx-ubuntu-postgres-15-0                           1/1   Running   0          Xsawx-ubuntu-task-<hash>                           4/4   Running   0          Xsawx-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
[*]密码:上一步输出的密码
       https://i-blog.csdnimg.cn/direct/bcb9612ccf194d8b8a3a1ca9e597d789.png
       由于我是NAT模式,所以须要使用端口转发来做映射
       https://i-blog.csdnimg.cn/direct/3370e5771ef04d69a0207091b7a5167e.png
       接着打开登入页面
       https://i-blog.csdnimg.cn/direct/323ea2093bfb43da9ebbd889472b18cf.png
       输入账号:admin
       输入密码:praymwaE6t9I1Bh7kcGvqGxJ2JXlhy9Q
       https://i-blog.csdnimg.cn/direct/06ccca5c00824dd88965ccc0a1fcbf7b.png
       这个地方须要注意
       https://i-blog.csdnimg.cn/direct/463a3a20820848b18a33a4e307768e40.png

       这两个字段是通过hash得出来的,每次重启服务都会变革,在做映射服务的时间须要将hash字段更换到下令中的<hash>部分
       盼望这个文章能对各人带来便利,假如须要离线镜像的朋友,可以私信我,免费提供
                       

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 解锁 AWX+Ansible 自动化运维新体验:快速摆设实战