Jenkins-Ansible 插件相关用法

1. ansible-hoc 单条命令的实现

调用 shell 模块,构建步骤填写如下

运行任务,查看执行结果是否正确返回 webservers 主机的 hostname
inventory 部分也可以直接选择 Inline content 选项填写文件内容


调用 file 模块,构建步骤填写如下

运行任务,在 webservers 主机上查看 test.log 文件是否生成

2. ansible-playbook yml文件的实现

获取目标主机的的 ip,并将返回的结果存储在 result 变量中

root@jenkins \~\]#**vim /data/jenkins/test.yml** - hosts: webservers remote_user: root tasks: - name: excute cmd shell: cmd: hostname -I register: result - name: show result debug: msg: "{{ result }}" 构建步骤填写如下 ![](https://i-blog.csdnimg.cn/direct/780d6ba85ce64177a4b1b975bed51739.png)

3. 实现多环境部署

yml 文件如下

root@jenkins ansible\]#**vim /data/jenkins/test.yml** - hosts: webservers remote_user: root tasks: - name: excute cmd shell: cmd: hostname -I register: result - name: show result debug: msg: "{{ result }}" hosts 文件如下 \[root@jenkins ansible\]#**vim test-hosts** \[webservers

10.0.0.202 ansible_ssh_user=root

10.0.0.203 ansible_ssh_user=root

root@jenkins ansible\]#**vim product-hosts** \[webservers

10.0.0.205 ansible_ssh_user=root

10.0.0.206 ansible_ssh_user=root
选择参数,定义变量名称,并添加不同环境 hosts 选项


构建步骤填写如下,host list 使用选项名称使用 $ 符号引用变量

4. 实现 ansible-playbook 参数化

yml 文件如下

root@jenkins ansible\]#**vim /data/jenkins/test.yml** - hosts: "**{{ ansible_hosts }}** " remote_user: root tasks: - name: excute cmd shell: cmd: hostname -I register: result - name: show result debug: msg: "{{ result }}" hosts 文件如下 \[root@jenkins ansible\]#**vim hosts-test** \[webservers

10.0.0.202 ansible_ssh_user=root

appservers

10.0.0.203 ansible_ssh_user=root

root@jenkins ansible\]#**vim hosts-product** \[webservers

10.0.0.205 ansible_ssh_user=root

appservers

10.0.0.206 ansible_ssh_user=root

添加第一个选项参数


添加第二个选项参数


构建步骤填写如下


高级选项填写如下,key 是 ansible host 文件中的 hosts 变量,value 选项参数名称用 ${} 符号引用

相关推荐
roman_日积跬步-终至千里4 分钟前
【Nginx】Nginx 多协议负载均衡实战:StarRocks 与 MinIO 代理配置全解析
运维·nginx·负载均衡
lwhdjbcjdjd4 分钟前
Nginx实战指南:反向代理与负载均衡的原理与配置
运维·nginx·负载均衡
wa的一声哭了5 分钟前
Linux服务器配置ssh免密登陆多台服务器、服务器别名配置
linux·运维·服务器·网络·arm开发·python·ssh
beijingliushao10 分钟前
93-MongoDB-Linux
linux·数据库·mongodb
qinyia14 分钟前
Wisdom SSH:AI助手可用的运维工具详解,帮助理解提升人机合作效率
运维·服务器·人工智能·ssh
勇往直前plus22 分钟前
ElasticSearch详解(篇二)
大数据·elasticsearch·jenkins
YongCheng_Liang34 分钟前
openEuler 22.03 LTS 部署 ELK(Elasticsearch+Logstash+Kibana)完整教程
linux·运维·elk·elasticsearch
go_bai1 小时前
Linux-线程
linux·开发语言·c++·经验分享·笔记
小坏讲微服务1 小时前
Spring Cloud Alibaba 2025.0.0 整合 ELK 实现日志
运维·后端·elk·spring cloud·jenkins
清浅儿1 小时前
Linux权限知识点
linux·运维·服务器