当前位置: 首页 > 编程日记 > 正文

ansible组件-playbook学习笔记

playbook的基础组件

name

定义playbook或者task的名称

hosts

用于指定要执行指定任务的主机

user

用于指定远程主机上的执行任务的用户

task

任务列表

vars

定义变量

vars_files

定义变量文件

notify

任务执行结果如果是发生更改的则触发定义在handler的任务

handlers

用于当前关注资源发生变化时采取一定指定的操作

示例1

> # vim test.yml
> - hosts: all
>   user: root
>   tasks:
>   - name: playbook_test
>     shell: touch /a.txt
>     tags: chuang jian a.txt

参数解释

hosts参数指定了对那些主机进行操作
user参数指定了使用什么用户登陆远程主机操作
tasks指定了一个任务,其下面的name参数同样是对任务的描述,在执行过程中会打印出来
tags给指定的任务定义一个调用标识

语法检测

# ansible-playbook --syntax-check test.yml

测试运行

# ansible-playbook -C test.yml

运行playbook

# ansible-playbook test.yml

只运行指定标记的任务

-t tags
# ansible-playbook -t 标记名称 test.yml

跳过某个被标记的任务

--skip-tags= 标记名称
# ansible-playbook --skip-tags=标记名称 test.yml

从某个任务开始往下运行

--start-at-task 任务名称
# ansible-playbook --start-at-task "任务名称" test.yml

示例2:使用变量

>#vim create_user.yml
>- name: create_user
>  hosts: web1
>  user: root
>  gather_facts: false
>  vars:
>  - user: "tuerqi"
>  tasks:
>  - name: create user
>    user: name="{{ user }}"

示例3:条件执行

># vim when.yml
>- hosts: web1
>  user:root
>  gather_facts: True
>  tasks:
>  - name: use when
>    shell: touch /bali.txt
>    when: ansible_hostname == "web1"

示例4:条件触发

># vim handlers.yml
>- name: handlers test
>  hosts: web1
>  user: root
>  tasks:
>  - name: test copy
>    copy: src=/etc/passwd dest=/tmp/handlers.txt
>    notify: test handlers
>  hanlers:
>  - name: test handlers
>    shell: echo "www.lala.com" >> /tmp/handlers.txt

解释说明

只有 copy 模块真正执行后,才会去调用下面的 handlers 相关的操作

转载于:https://blog.51cto.com/13523939/2074049

相关文章:

【linux工具】ldconfig:linux配置动态链接库

简介 ldconfig命令的用途主要是在默认搜寻目录/lib和/usr/lib以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(格式如lib*.so*),进而创建出动态装入程序(ld.so)所需的连接和缓存文件。 用法 ldconfig [-v|–ve…

T-SQL IN 谓词

T-SQL谓词之一 IN。检查指定(IN谓词前)的值,字段值或标量表达式是否包含在定义的一组元素(放在括弧内)中。这组元素可以有一或多个值,而不同值之间由逗点分开。 创建一个临时表,并插入一些值。 CREATETable#t( Fonts NVARCHAR(10))INSERTI…

vue:虚拟dom的实现

Vitual DOM是一种虚拟dom技术,本质上是基于javascript实现的,相对于dom对象,javascript对象更简单,处理速度更快,dom树的结构,属性信息都可以很容易的用javascript对象来表示: let element{tagN…

【Ubuntu】apt-get命令小结

apt-get install 安装软件包 apt-get remove 删除已安装的软件包(保留配置文件) apt-get update 更新 apt-get autoremove 自动删除没用的包 apt-get purge 删除包,不保留配置文件 apt-get –purge remove

腾讯58篇论文入选CVPR 2019,两年增长超200%

全球计算机视觉顶级会议 IEEE CVPR 2019(Computer Vision and Pattern Recognition,即IEEE国际计算机视觉与模式识别会议) 即将于6月在美国长滩召开。本届大会总共录取来自全球论文1299篇。中国团队表现不俗,此次,腾讯公司有超过58篇论文被本…

SQL Server 2008备份策略设计下(六)

上一篇博文探讨了各种恢复模式和备份类型,这一节继续来探讨如何设计备份策略。设计一个数据库的最佳备份策略,会面临如何选择使用哪种恢复模式的问题,因为恢复模式控制着备份和还原的行为。一般来讲,简单恢复模式一般适合用于测试…

【Qt】Qt样式表(Style Sheet):官网说明及例子

网址 http://doc.qt.io/qt-5/stylesheet.html 样式表语法 各种Qt控件的样式表例子 Qt样式表参考手册

神爱程序员,于是带来Python

“我累了,需要很长时间的休息。”2018 年 7 月,在 PEP 572(Python 改进提案) 被接受后的第三天,由于仍然不断面对着别人的质疑,反馈意见不断袭来,让这位一手缔造新的编程语言帝国的图灵奖获得者…

Dubbo配置文件详解

为新项目练手,把项目中用到的web service、RMI的服务改用DubboZookeeperSpring,网上找到几篇不错的配置详解 1.此篇博文主要从以下几种配置方式来讲 XML 配置文件方式、XML 配置文件方式、annotation 配置方式 https://www.cnblogs.com/chanshuyi/p/514…

Mono源代码学习笔记:Console类(四)

NullStream 类 (internal class) 下面就是 mcs/class/corlib/System.IO/NullStream.cs: 01: namespace System.IO 02: { 03: class NullStream : Stream 04: { 05: public override bool CanRead { get { return true; } } 06: public override b…

Java帝国对Python的渗透能成功吗?

作者 | 刘欣转载自码农翻身(公众号 ID:coderising)引子Java 帝国已经成立 20 多年,经过历代国王的励精图治,可以说是地大物博,码农众多。 可是国王依然不满足,整天想着如何继续开拓疆土&#xf…

【杂】突然有个想法,为了防止公司或其他,监视你的qq或微信,可以做个程序,将信息打乱,分别用qq和微信传输,然后,再还原

突然有个想法,为了防止公司或其他,监视你的qq或微信,可以做个程序,将信息打乱,分别用qq和微信传输,然后,再还原。

CTO 基本功大盘点 —— 没有这些技能,谈何远大前程?

本文由 「TGO鲲鹏会」原创,原文链接:CTO 基本功大盘点 —— 没有这些技能,谈何远大前程? 作者|刘海星 2018 年马上就要过去六分之一了,你的 KPI 完成多少了? 别沮丧,其实我想说的是&…

Windows Phone 7 不温不火学习之《创建用户控件》

同样出自微软的产品,像ASP.NET 一样,Windows Phone 7 也有一个叫UserControl 的东西。这个相当于一个组件,类似于Android 继承View 。 本篇将实现一个用户控件,默认为它添加高宽,并为它添加一个自己的事件,…

从起源、变体到评价指标,一文解读NLP的注意力机制

作者 | yuquanle转载自AI小白入门(ID:StudyForAI)目录1.写在前面2.Seq2Seq 模型3.NLP中注意力机制起源4.NLP中的注意力机制 5.Hierarchical Attention6.Self-Attention7.Memory-based Attention 8.Soft/Hard Attention9.Global/Local Attention10.评价指…

【Git】ubuntu上git commit提交后如何保存和退出类似vim的界面,回到命令行

问题 使用 git commit 命令后,进入类似vim的界面,开始时,不知道如何保存,甚至不知道怎么退出该界面。 解决方法 1、使用 git commit 命令后,进入的是nano文本编辑器(类似vim); 2…

linux硬盘满了问题排查

关键指令: df du find step1: 如果发现硬盘满了,首先要确定一下,使用df查看硬盘使用情况 df -h step2: 从第一步结果判定满了,确定哪些文件或哪个文件占了大头,使用du指令做逐步排查&#xff0c…

win2003登陸及關機設定

開啟未登陸可以關機鍵關機﹕ 到控制面板,本地安全策略,安全性選項﹐启用允许在未登录前关机 關關機事件跟踪﹕ 运行“gpedit.msc”命令打开组策略编辑器,依次展开“计算机配置”→“管理模板”→“系统”,将“顯示关闭事件跟踪程序…

【Qt】信号和槽对值传递参数和引用传递参数的总结

在同一个线程中 当信号和槽都在同一个线程中时,值传递参数和引用传递参数有区别: 值传递会复制对象;(测试时,打印传递前后的地址不同) 引用传递不会复制对象;(测试时,…

Node.js入门(含NVM、NPM、NVM的安装)

本文最初发表于博客园,并在GitHub上持续更新前端的系列文章。欢迎在GitHub上关注我,一起入门和进阶前端。 以下是正文。 Node.js的介绍 引擎 引擎的特性: JS的内核即引擎。因为引擎有以下特性: (1)转化的作…

GitHub日收7000星,Windows计算器项目开源即爆红!

说起此番微软开源 Windows 计算器,有道是“春风得意马蹄疾,一日‘摘星’ 7000”……整理 | 仲培艺来源 | CSDN(ID:CSDNnews)微软又来给自己拥抱开源的决心送”证明素材“了!昨日,微软官宣在 MIT…

域环境下的***

首先还是先简要看一下域的概念吧: 域 (Domain) 是Windows网络中独立运行的单位,域之间相互访问则需要建立信任关系(即Trust Relation)。信任关系是连接在域与域之间的桥梁。当一个域与其他域建立了信任关系后,2个域之间不但可以按需要相互进行…

如何重构“箭头型”代码

本文主要起因是,一次在微博上和朋友关于嵌套好几层的if-else语句的代码重构的讨论(微博原文),在微博上大家有各式各样的问题和想法。按道理来说这些都是编程的基本功,似乎不太值得写一篇文章,不过我觉得很多…

让数百万台手机训练同一个模型?Google把这套框架开源了

作者 | 琥珀出品 | AI科技大本营(公众号id:rgznai100)【导语】据了解,全球有 30 亿台智能手机和 70 亿台边缘设备。每天,这些电话与设备之间的交互不断产生新的数据。传统的数据分析和机器学习模式,都需要在…

【OpenCV】cv::VideoCapture 多线程测试

cv::VideoCapture多线程测试结果: 在多线程中使用抓取摄像头视频帧时线程安全的,但是,多个线程会共用摄像头的总帧率。 比如,我用两个线程测试30帧的摄像头,每个线程差多都是15帧。

都有Python了,还要什么编译器!

编译的目的是将源码转化为机器可识别的可执行程序,在早期,每次编译都需要重新构建所有东西,后来人们意识到可以让编译器自动完成一些工作,从而提升编译效率。但“编译器不过是用于代码生成的软机器,你可以使用你想要的…

【Qt】Qt发布程序时,报错: could not find or load the Qt platform plugin xcb

问题描述 Qt程序在发布时,报错: This application failed to start because it could not find or load the Qt platform plugin “xcb” in “”. Reinstalling the application may fix this problem Aborted (core dumped) 原因 没有将libqxcb…

jsky使用小记

jsky是一款深度WEB应用安全评估工具,能轻松应对各种复杂的WEB应用,全面深入发现里面存在的安全弱点。 jsky可以检测出包括SQL注入、跨站脚本、目录泄露、网页木马等在内的所有的WEB应用层漏洞,渗透测试功能让您熟知漏洞危害。 打开——新建扫…

BSP场景管理方法简介

BSP(Binary Space Partition,二叉空间分割)方法,在大型3d游戏场景管理方面,可以认为是已经证明了的,最成熟的,最经得起考验的场景管理方法。诸如虚幻系列引擎(Unreal 1,2,3)&#xf…

【Qt】Qt样式表总结(一):选择器

官方资料 https://blog.csdn.net/u010168781/article/details/81868523 注释 qss文件中使用:/**/ 来注释 样式规则 样式表由样式规则序列组成。样式规则由选择器和声明组成。选择器指定受规则影响的部件;声明指定应在小部件上设置哪些属性。 如: QLabel { color: white;…