目录
- 前言
- 一、安装
- 1.安装K3S
- 2.提前导入redis、PG镜像
- 3.安装AWX
- 4.启动web页面
- 5.卸载干净
- 二、使用
- 1.登陆密码
- 2.中英文切换
- 3.查看当前版本
- 三、总结
前言
我们都听过Ansible,它本质上是一个进行了封装的Shell,优点在于它是去中心化的工具,可以直接通过ssh管理远程主机,实现无Agent的部署。
而AWX提供了一个基于web的用户界面、REST API和构建在Ansible之上的任务引擎。
图形化的AWX 能够更方便的编排和部署 Ansible Playbook,并提供集中的日志记录、审计和系统跟踪
。
今天澳同学想让我整一个最新版的AWX
,咱们一起冲冲冲!
一、安装
1.安装K3S
既然是部署在容器上,那当然少不了k8s,但澳同学给我的机器只有一个,且还是2核4G的,
不慌,咱用K3S,具体安装方法可参考上一篇博客:链接
2.提前导入redis、PG镜像
镜像包:https://pan.baidu.com/s/11T6GH83Vp10Wik5bAULUVQ
提取码:awx1
# 容器运行时是docker
docker image load -i kube-rbac-proxy_v0.8.0.tar
docker image load -i postgres_13.tar
docker image load -i redis_7.tar
#============================
# 容器运行时是container
ctr -n k8s.io image import kube-rbac-proxy_v0.8.0.tar
ctr -n k8s.io image import postgres_13.tar
ctr -n k8s.io image import redis_7.tar
3.安装AWX
#ssh 连至目标服务器节点,创建目录
mkdir -pv /data/dbatools/awx #这里目录大家随便建,目的是存放AWX相关安装包
cd /data/dbatools/awxgit clone https://github.com/ansible/awx-operator.git
cd awx-operator/
git checkout 2.12.2 #切换到最新的版本tag【2024.3.10,最新版是2.12.2】
如何查看最新tag版本:https://github.com/ansible/awx-operator/releases
#接下来我们手动修改【踩坑:如果不改的话,好像是下载了21.3.0版本的】
$ vim ./config/manager/kustomization.yaml
resources:
- manager.yaml
generatorOptions:disableNameSuffixHash: true
configMapGenerator:
- files:- controller_manager_config.yamlname: awx-manager-config
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
images:
- name: controllernewName: quay.io/ansible/awx-operatornewTag: 2.12.2 #选择想安装的版本【目前最新是2.12.2】
vim ./roles/installer/defaults/main.yml
_image: quay.io/ansible/awx
_image_version: "23.8.0" #改一下【指定版本,第255行】
#再次更新一下变量,开始安装
git checkout 2.12.2
export NAMESPACE=awx
make deploy #大概等5分钟【安装服务,启用对应yaml文件,一键完成】
4.启动web页面
# vim ./deamo/awx.yaml
---
apiVersion: awx.ansible.com/v1beta1
kind: AWX
metadata:name: awx-demonamespace: awx
spec:service_type: nodeport#=============================================================
$ kubectl apply -f awx.yaml #应用该服务
5.卸载干净
这一步可忽略,目的是卸载干净后,再次安装新版本AWX
#把awx namespace下的所有资源(包括CRD)删除干净
kubectl delete ns awx
二、使用
1.登陆密码
查看暴露的端口
接下来,我们访问web页面:IP:32712
账号默认是:admin
密码获取方式如下:【从secret中获取】
kubectl get secret awx-demo-admin-password -o jsonpath="{.data.password}" | base64 --decode ; echo
2.中英文切换
小提示:可以通过设置浏览器的语言,更改AWX语言模式(英文 or 中文)
3.查看当前版本
kubectl describe deploy -n awx |grep Image: |sort -u
三、总结
接下来,咱们就可以愉快的使用AWX了~
我是卑微涛,评论区欢迎交流,我们下篇文章再见了~ (^∀^●)ノシ