ansible剧本模式特殊模块使用

news2024/12/23 22:32:17

Nginx安装剧本

 

ansible-playbook test1.yaml

//补充参数

-k(-ask-pass):用来交互输入ssh密码

-K(-ask-become-pass):用来交互输入sudo密码

-u:指定用户

-e:命令行指定变量

--syntax-check 粗略检查语法

--list-task #列出任务

--start-at-tast=‘install httpd by yum’#指定执行的位置

获取子字段的值(address)加点指定即可

copy:count“ansible_default_ipv4.address”

when //条件判断,常见实现跳过某个主机不执行

//迭代ansible提供了很多种循环结构,命名为with_items作用等同于loop循环

tasks任务 模块的格式

横向格式

user:name=zhagnsan groups=kgc

纵向格式

user:

 name: zhagnsan

 groups: "{{item}}"

with_items 的编写格式

横向格式

值为纯量时

with_items: ["a","b","c"]

值为对象时

with_items:{key1: value1,key2: value2}

with_items:

- {key1: value1,key2: value2}

纵向格式

值为纯量是(单纯的一个值)

with_items:

- a

- b

- c

值为对象时

with_items:

- key1: value1

- key2: value2

ansible循环结构体

with_items  with_flattened  with_list  loop

-a

-b

-c

在处理单层列表(每个列表只有一个元素)时,上面几个循环机构体是没有区别的,都会把每个列表的值遍历一遍

with_items with_flattened with_list loop

- [a,b,c]

- [1,2,3]

- [A,B,C]

在处理嵌套的多层列表(一个列表有多个元素)时,with_items和with_flattened会将嵌套列表拉平扩展,将循环处理所有的元素

with_list和loop不会嵌套列表拉平扩展,指挥按照最外层的列表进行循环处理

with_together 将几个列表的元素对其合并后输出,比如第一个列表的第一个元素和第二个列表的第一个元素合并输出,第一个列表第二个元素和第二个列表第二个元素合并输出

with_nested with_cartesian 将每个列表的元素按照分别组合循环输出比如a1A a1B a1C   a2A a2B a2C . . . .

运行playbook

ansible-playbook XXX.yaml --ayntax-check #检查语
法 --list-task 列出所有任务 --lisst-hosts 列出剧本在那个主机执行 --start-at-task='任务名称' 指定从哪个任务开始执行

使用普通用户执行playbook

-remote_user:普通用户 #远程主机需要事先sudo授权

become:yes

become_user: root

ansible-playbook XXX.yaml -k -K

定义和引用变量

- name:

. . .

vars:

- 变量1: 值1

- 变量2: 值2

- 变量3:

   - key1: value1 - {key1: value1, key2: value2}

     key2:value2 - {key1: value3,key2:value4}

- 变量4:

    - 值1

    - 值2

    -值3

- 变量5:【值1,值2,值3】

tasks:

-name: XXX

模块:参数选项1={{item}}

with_items: “{变量4}”

在tasks里引用变量是,可以从vars自定义的变量中引用,还可以直接引用facts字段的值,还鞥你ansible-playbook -e "变量名=值",此方式优先级大于playbook中vars定义的变量的值

when条件判断

- name:

. . .

tasks:

- name: XXX

   模块:. . .

   when: 变量名 条件运算符(== != >= <= )"值" when判断结果为true才会执行当前任务,false不执行任务

template模板模块

1)先要准备一个xxx.j2 模板文件,在文件中使用{{变量名}} 引用主机变量或者vars自定义的变量及facts字段的值

2)在playbook中的tasks中定义templae模板配置 template:src=XXX.j2 dest=XXX

tags模块

可以在一个playbook中为某个或某些任务定义“标签”,在执行此playbook时通过标签执行

tags模块

- name:

 . . .

 tasks:

 tags:

 - 标签1

 - 标签2

- name:XXX

模块:

tags:

 -aways

ansible-playbook --tags="标签" XXX.yaml

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/648866.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【服务器数据恢复】HP LeftHand存储raid5不可用的数据恢复案例

HP LeftHand存储简介&#xff1a; HP LeftHand存储支持搭建RAID5、RAID6、RAID10磁盘阵列&#xff0c;支持卷快照&#xff0c;卷动态扩容等。服务端和客户端分别如下&#xff1a; LeftHand存储共有三个级别&#xff1a;物理磁盘、基于多个物理磁盘组成的逻辑磁盘&#xff08;ra…

广东电信突发故障,手机没信号,对讲机的重要性再次凸显

当我们常用的通信网络出现故障时&#xff0c;就会面临全网瘫痪的情况&#xff0c;这个时候无线电通信就显得尤为重要了&#xff01; 在6月8日下午两点左右&#xff0c;有多位广东电信的用户发现&#xff0c;自己的手机突然出现了打不出去电话&#xff0c;及上不了网的情况&…

Unity编辑器扩展-第四集-获取物体的方法

第三集链接&#xff1a;Unity编辑器扩展-第三集-添加按钮到组件菜单并且重置组件_菌菌巧乐兹的博客-CSDN博客 一、本节目标效果展示 1.改选中单个物体的名字 2.改选中所有物体的名字 3.选中了所有的物体&#xff0c;但只改第一层物体的名称 4.来个有用的&#xff08;选中的所有…

Python进阶语法之列表推导式

Python进阶语法之列表推导式 Python列表推导式是Python中最有魅力的特性之一&#xff0c;它提供了一种优雅、简洁的方式来创建列表。这种语法不仅使得代码更加简洁&#xff0c;易读&#xff0c;而且在某些情况下还可以提高代码的执行效率。接下来&#xff0c;我们将一起深入探…

SpringBoot中@ControllerAdvice的三种使用场景

一、全局异常处理 代码示例如下: /*** author qinxun* date 2023-06-14* Descripion: 业务层异常枚举*/ public enum ServiceExceptionEnum {SUCCESS(0, "成功"),ERROR(1, "失败"),SYS_ERROR(1000, "服务端发生异常"),MISSING_REQUEST_PARAM_E…

使用同步信号量和互斥信号量解决生产者和消费者问题

生产者和消费者问题 生产者和消费者问题是一个经典的进程同步问题。在这个问题中&#xff0c;生产者不断地向缓冲区中写入数据&#xff0c;而消费者则从缓冲区中读取数据。生产者进程和消费者进程对缓冲区的操作是互斥的&#xff0c;即任意时刻只能有一个进程对这个缓冲区进行…

RTU电流采集上传

RTU电流采集上传 案例说明器件 物联网平台开发代码修改三元组 测试 案例说明 本案例使用HD1&#xff08;RTU&#xff09;检测外部电流&#xff0c;并将电流上传阿里云端。 压力传感器输出电流信号&#xff0c;读取压力传感器数值时需要检测电流大小。haasHD1(RTU)有两路ADC—…

深度学习应用篇-元学习[16]:基于模型的元学习-Learning to Learn优化策略、Meta-Learner LSTM

【深度学习入门到进阶】必看系列&#xff0c;含激活函数、优化策略、损失函数、模型调优、归一化算法、卷积模型、序列模型、预训练模型、对抗神经网络等 专栏详细介绍&#xff1a;【深度学习入门到进阶】必看系列&#xff0c;含激活函数、优化策略、损失函数、模型调优、归一化…

[C语言实现]数据结构堆之《害怕二叉树所以天赋全点到堆上了》

&#x1f970;作者: FlashRider &#x1f30f;专栏: 数据结构 &#x1f356;知识概要&#xff1a;详解堆的概念、小根堆与大根堆的区别、以及代码实现。 目录 什么是堆&#xff1f; 如何实现堆&#xff1f; 代码实现堆(小根堆) 定义堆以及堆的初始化和销毁。 堆的插入 堆…

LeetCode·每日一题·1177. 构建回文串检测·前缀和

作者&#xff1a;小迅 链接&#xff1a;https://leetcode.cn/problems/can-make-palindrome-from-substring/solutions/2309940/qian-zhui-he-zhu-shi-chao-ji-xiang-xi-by-n3ps/ 来源&#xff1a;力扣&#xff08;LeetCode&#xff09; 著作权归作者所有。商业转载请联系作者获…

最新水文水动力模型在城市内涝、城市排水、海绵城市规划设计中深度应用

随着计算机的广泛应用和各类模型软件的发展&#xff0c;将排水系统模型作为城市洪灾评价与防治的技术手段已经成为防洪防灾的重要技术途径。本次培训将聚焦于综合利用GIS及CAD等工具高效地进行大规模城市排水系统水力模型的建立&#xff0c;利用SWMM实现排水系统水力模拟。讲解…

【RH850/U2A】:GreenHills编译配置

GreenHills编译配置 GreenHills语法.gpj文件.opt文件示例GreenHills编译器在编译我们的文件时涉及它需要哪些文件及相关配置呢?带着疑问我们开始来梳理。 我们还是以具体示例来展开(硬件平台:RH850 U2A8) GreenHills语法 一般我们是需要查看它的帮助文档的,文档在哪里呢?…

CSP第二轮/NOIP 比赛注意事项

一、在哪里写代码 主办方会提前在桌面已在 E 盘根目录下建立以考生准考证编号命名的文件夹,考生应检查该文件夹名称是否正确(包括编号及大小写字母),如有错误须立即上报监考人员,由监考人员进行更改。确认无误后,考生须为每道试题再单独建立一个子文件夹,子文件夹名与对应…

某互联网银行绿色金融背后的“安全秘诀”

​随着银保监会出台《银行业保险业绿色金融指引》、人民银行牵头制定《G20转型金融框架》的发布&#xff0c;金融行业正在持续加大对绿色金融支持力度。某互联网银行为了响应号召&#xff0c;采用数字化无纸化办公&#xff0c;线上零接触服务减少大量碳排放&#xff0c;成为国内…

oracle rac架构解读

一、oracle 数据库架构 单节点数据库&#xff0c;如果实例宕机了&#xff0c;如果一个业务链接在实例上面&#xff0c;那么这个业务就中断了。这个时候系统就不具有可用性了&#xff0c;那么这个时候单节点的可用性是很差的。 对于RAC来说&#xff0c;和单实例一样&#xff0c;…

新榜 | 小红书美妆用户趋势洞察报告

目前&#xff0c;小红书上聚集了大量年轻、高知的女性美妆用户&#xff0c;她们倾向于在小红书平台分享美妆护肤产品和使用经验&#xff0c;用户间的互动、分享氛围浓厚&#xff1b;而这些评论互动也传递了用户的真实诉求&#xff0c;理解用户的关注点对于企业和品牌来说将具有…

Vue中如何进行数据导入与Excel导入

Vue中如何进行数据导入与Excel导入 Vue是一款非常流行的JavaScript框架&#xff0c;它提供了一套用于构建用户界面的工具和库。在Vue中&#xff0c;我们可以使用多种方式来导入数据&#xff0c;包括从服务器获取数据、从本地存储获取数据、从文件中读取数据等等。其中&#xf…

如何提高职场沟通能力

如何提高职场沟通能力 在现代职场中&#xff0c;良好的沟通能力不仅有助于我们更好地完成工作任务&#xff0c;还能提高团队协作效率&#xff0c;降低矛盾和误解。本文将为你提供一些建议和技巧&#xff0c;帮助你提高职场沟通能力。 1. 倾听 倾听是沟通中最重要的技能之一…

社招准备和面试题

这次就整理下这次社招都做了哪些准备以及自己面试过的题目。 首先就是专业知识的准备&#xff0c;看了很多常用的机器学习算法&#xff0c;并对其算法做了推导。看了深度学习推荐系统这本书里面的模型&#xff0c;对自己简历中涉及到的模型重点掌握&#xff0c;比如DIN、DIEN、…

创客匠人6月功能更新:服务商管理、直播、学员版APP全新上线

创客匠人6月功能更新&#xff0c;包括服务商管理、直播、学员版APP、圈子、商城、店铺等众多产品升级&#xff0c;我们一起来看看吧。 正式升级时间&#xff1a;6月20日 一、服务商管理 1.服务商模块排版优化&#xff1a;支持查看整个团队的用户信息和业绩明细。 2.支持记…