Ansible的切片特性与多机器选取

一、【概述】

本文介绍一下Ansible的多机器选取和切片特性,这个还是一个比较有用的技巧,可以快速选取仓库中我们需要的机器清单。

因为该特性可能与其他工具语法稍微有些不一样,时间长了会忘,值得记录一下

二、【具体说明】

1. 逻辑组合

根据官网的介绍,选取机器或机器组使用的符号无外乎:“ *  :  !  &” ,这几种符号覆盖了常用的逻辑,比较好理解

描述

例子        

效果

所有主机

all (or *)

选取所有主机

单个主机

host1

选取了host1这台主机

多个主机

host1:host2 (or host1,host2)

选取了host1和host2两台,注意这里的:不表示范围

一组主机        

webservers

选取名为webservers的主机组

多组主机

webservers:dbservers

使用:来选取多个主机组,把:当,理解就行

排除某个主机

webservers:!atlanta

选取在web组中没有出现在atl组的机器

选取主机组的交集

webservers:&staging

选取同时在两个组中的机器

以上逻辑可以复合使用,比如Group1:Group2:&Group3:!Group4

2. 切片

另外ansible也支持对机器组进行切片,不过注意,这里的切片首尾关系和Python稍微不同。

这三台机器为例:

[webservers]
cobweb
webbing
weber
webservers[0:2]     # == webservers[0],webservers[1],webservers[2]# == cobweb,webbing,weber
webservers[1:2]     # == webservers[1],webservers[2]# == webbing,weber
webservers[1:]      # == webbing,weber
webservers[:3]      # == cobweb,webbing,weber

我们这里以Python切片做对比,可以发现Ansible的切片“顾头也顾尾”,但是Python切片索引“顾头不顾尾”

list = [0,1,2,3,4,5]
print(list[1:2])
# [1]print(list[1:])
# [1, 2, 3, 4, 5]print(list[:4])
# [0, 1, 2, 3]

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Effective Objective - C】—— 熟悉Objective-C

【Effective Objective - C】—— 熟悉Objective-C 熟悉Objective-C1.oc的起源消息和函数的区别运行期组件和内存管理要点: 2.在类的头文件中尽量少引入其他头文件向前声明要点: 3.多使用字面量语法,少用与之等价的方法字符串字面量字面数值字…

SQL-修改表操作

🎉欢迎您来到我的MySQL基础复习专栏 ☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克🍹 ✨博客主页:小小恶斯法克的博客 🎈该系列文章专栏:重拾MySQL 🍹文章作者技术和水平很有限,如果文中出现错误&am…

探索SQL性能优化之道:实用技巧与最佳实践

SQL性能优化可能是每个数据库管理员和开发者在日常工作中必不可少的一个环节。在大数据时代,为确保数据库系统的响应速度和稳定性,掌握一些实用的SQL优化技巧至关重要。 本文将带着开发人员走进SQL性能优化的世界,深入剖析实用技巧和最佳实践…

运用3d技术建立数字化模型---模大狮模型网

随着科技的不断进步和发展,3D技术已经被广泛运用于各个领域。其中,建立数字化模型是3D技术的一个重要应用方向。本文将从3D技术的概念、数字化模型的定义、数字化模型的建立方法、应用领域等方面介绍运用3D技术建立数字化模型的相关知识。 一、3D技术的概…

JVM内存模型深度剖析与优化

欢迎大家关注我的微信公众号: 目录 JVM整体结构及内存模型 JVM内存参数设置 JVM整体结构及内存模型 首先附一段简单代码,我们从代码层面来讲解内存模型 public class Math {public static final int initData 666;public static User user new …

【QML COOK】- 007-Item对象、信号和槽

信号(signal)和槽(slot)是Qt的独特的设计,自然在QML中也被支持。 Item是QML所有类型的基类,Item类型不会显示在窗口上,但是可以支持信号和槽。本节就用Item编写一个信号和槽的实例。 1. 创建Q…

【ACL 2023】 The Art of Prompting Event Detection based on Type Specific Prompts

【ACL 2023】 The Art of Prompting: Event Detection based on Type Specific Prompts 论文:https://aclanthology.org/2023.acl-short.111/ 代码:https://github.com/VT-NLP/Event_APEX Abstract 我们比较了各种形式的提示来表示事件类型&#xff0…

uniapp 打包成 apk(原生APP-云打包)免费

修改APP配置 根据需求,修改 manifest.json 配置,常见的修改有: 应用名称,应用版本名称,应用版本号 升级版本时,应用版本名称和应用版本号必须高于上一版的值 应用图标 点浏览选择png格式的图片后&#x…

智汇云舟副总裁陈虹旭受邀出席2024昆山工业元宇宙创新论坛

近日,由昆山市工业和信息化局、昆山经济技术开发区科技局指导,中国电子商会元宇宙专委会主办的2024昆山工业元宇宙创新论坛圆满举行。来自西北工业大学、中国电信股份有限公司昆山分公司、中国电信天翼云公司等单位的一百余位专家和企业领导齐聚一堂&…

在阿里巴巴,领导提拔你不是看重你的能力

很多人都在想,为什么领导总是不提拔你,难道真的是如领导给你的反馈“你的能力不行”,这里我想告诉大家,这件事情绝对没有这么简单,尤其是在阿里巴巴这样“江湖气”非常浓的大厂。 Part.1 领导要提拔你,绝对…

代码随想录刷题笔记(DAY11)

今日总结:继续准备期末,今天的算法题目比较简单,晚上看看能不能再整理一篇前端的笔记。 Day 11 01. 有效的括号(No. 20) 题目链接 代码随想录题解 1.1 题目 给定一个只包括 (,),{&#xff…

Linux 软连接ln -s

什么是文件软链接? Linux 的“软连接”与windos 的"快捷方式"相似。文件软链接(Symbolic Link 或 SymLink)是一种特殊的文件类型,它实际上是一个指向另一个文件或目录的引用。创建软链接时,系统会建立一个新…