论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com技术社区
»
论坛
›
安全
›
主机安全
›
解锁 AWX+Ansible 自动化运维新体验:快速摆设实战 ...
解锁 AWX+Ansible 自动化运维新体验:快速摆设实战
一给
论坛元老
|
2025-3-27 12:31:36
|
显示全部楼层
|
阅读模式
楼主
主题
1842
|
帖子
1842
|
积分
5526
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-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
密码
:上一步输出的密码
由于我是NAT模式,所以须要使用端口转发来做映射
接着打开登入页面
输入账号:admin
输入密码:praymwaE6t9I1Bh7kcGvqGxJ2JXlhy9Q
这个地方须要注意
这两个字段是通过hash得出来的,每次重启服务都会变革,在做映射服务的时间须要将hash字段更换到下令中的<hash>部分
盼望这个文章能对各人带来便利,假如须要离线镜像的朋友,可以私信我,免费提供
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
一给
论坛元老
这个人很懒什么都没写!
楼主热帖
手把手教你如何使用kali破解wifi密码( ...
3.2操作系统(基本分页存储管理的基本 ...
C++面试八股文:std::array如何实现编 ...
嵌入式 Linux 内核驱动开发【The first ...
零基础入门 Java 后端开发,有哪些值得 ...
你真的了解二叉树吗?(上篇) ...
Wireshark学习笔记(一)常用功能案例 ...
Kubernetes(K8S) Deployment 升级和回 ...
当“超融合”邂逅“奥 ...
上古神兵,先天至宝,Win11平台安装和配 ...
标签云
AI
运维
CIO
存储
服务器
浏览过的版块
Postrge-SQL技术社区
SQL-Server
Mysql
公有云
备份
运维.售后
物联网
分布式数据库
虚拟化与私有云
快速回复
返回顶部
返回列表