游戏电视苹果数码历史美丽
投稿投诉
美丽时装
彩妆资讯
历史明星
乐活安卓
数码常识
驾车健康
苹果问答
网络发型
电视车载
室内电影
游戏科学
音乐整形

ansible笔记(14)变量(一)

  在ansible中使用变量,能让我们的工作变得更加灵活,在ansible中,变量的使用方式有很多种,我们慢慢聊。
  先说说怎样定义变量,变量名应该由字母、数字、下划线组成,变量名需要以字母开头,ansible内置的关键字不能作为变量名。
  由于之前的几篇文章都是在通过剧本举例,所以我们先聊聊怎样在playbook中使用变量。
  如果我们想要在某个play中定义变量,可以借助vars关键字,示例如下hosts:test70vars:testvar1:testfileremoteuser:roottasks:name:task1file:path:testdir{{testvar1}}state:touch
  上例中,先使用vars关键字,表示在当前play中进行变量的相关设置。
  vars关键字的下一级定义了一个变量,变量名为testvar1,变量值为testfile
  当我们需要使用testvar1的变量值时,则需要引用这个变量,如你所见,使用{{变量名}}可以引用对应的变量。
  也可以定义多个变量,示例如下。vars:testvar1:testfiletestvar2:testfile2
  除了使用上述语法,使用YAML的块序列语法也可以定义变量,示例如下vars:testvar1:testfiletestvar2:testfile2
  在定义变量时,还能够以类似属性的方式定义变量,示例如下hosts:test70remoteuser:rootvars:nginx:conf80:etcnginxconf。d80。confconf8080:etcnginxconf。d8080。conftasks:name:task1file:path:{{nginx。conf80}}state:touchname:task2file:path:{{nginx。conf8080}}state:touch
  如上例所示,我定义了两个变量,两个变量的值对应两个nginx配置文件路径vars:nginx:conf80:etcnginxconf。d80。confconf8080:etcnginxconf。d8080。conf
  当我们需要引用这两个变量时,有两种语法可用
  语法一{{nginx。conf80}}
  语法二{{nginx〔conf8080〕}}
  这样使用变量在逻辑上比较清晰,可以看出conf80与conf8080都属于nginx相关的配置。
  细心如你一定发现了,上例中,我在引用变量时使用了双引号,而在本文的第一个示例中引用变量时却没有使用双引号,这是因为,第一个示例中的变量在被引用时,并没有处于开头的位置,第一个示例中变量被引用时如下path:testdir{{testvar1}}
  当file模块的path参数引用对应的变量时,先写入了’testdir’,然后才引用了testvar1变量,{{testvar1}}并没有处于开头的位置,换句话说就是,{{testvar1}}前面还有字符串’testdir’
  而在上述后面的示例中引用变量时,变量被引用时如下,处于开头的位置path:{{nginx。conf80}}
  这种情况下,我们引用变量时必须使用双引号引起被引用的变量,否则会报语法错误。
  其实,上述情况也有例外
  前文中有描述过,当在playbook中为模块的参数赋值时,可以使用冒号,也可以使用等号,当使用等号为模块的参数赋值时,则不用考虑引用变量时是否使用引号的问题,示例如下hosts:test70remoteuser:rootvars:nginx:conf80:etcnginxconf。d80。confconf8080:etcnginxconf。d8080。conftasks:name:task1file:path{{nginx。conf80}}statetouchname:task2file:path{{nginx〔conf8080〕}}statetouch
  除了能够在playbook中直接定义变量,我们还可以在某个文件中定义变量,然后再在playbook中引入对应的文件,引入文件后,playbook
  即可使用文件中定义的变量,你可能会问,为什么要多此一举呢?这是因为在某些工作场景中这样做很有用,比如,你想要让别人阅读你的playbook,却不想让别人看到某些值,可以使用这种办法,因为别人在阅读playbook时,只能看到引入的变量名,但是看不到变量对应的值,这种将变量分离到某个文件中的做法叫做变量文件分离,变量文件分离除了能够隐藏某些值,还能够让你将不同类的信息放在不同的文件中,并且让这些信息与剧本主体分开。
  先来看看变量文件分离的一些小例子
  首先,我们来定义一个专门用来存放nginx相关变量的文件(文件名为nginxvars。yml),在文件中定义变量时,不要使用vars关键字,直接定义变量即可,定义变量的语法与在playbook中定义变量的几种语法相同语法一示例:testvar1:testfiletestvar2:testfile2语法二示例:testvar1:testfiletestvar2:testfile2语法三示例:nginx:conf80:etcnginxconf。d80。confconf8080:etcnginxconf。d8080。conf
  你可以选择你觉得较为舒适的语法定义变量,如下所示,直接在nginxvars。yml文件中定义变量即可。catnginxvars。ymlnginx:conf80:etcnginxconf。d80。confconf8080:etcnginxconf。d8080。conf
  在nginxvars。yml中定义完相关变量后,即可在playbook中引入文件中的变量,在playbook中引入包含变量的文件时,需要使用varsfiles关键字,被引入的文件需要以开头,以YAML中块序列的语法引入,示例如下hosts:test70remoteuser:rootvarsfiles:testdiransiblenginxvars。ymltasks:name:task1file:path{{nginx。conf80}}statetouchname:task2file:path{{nginx〔conf8080〕}}statetouch
  上例中使用varsfiles关键字引入了对应的变量文件,然后使用了文件中定义的变量。
  上例中varsfiles关键字只引入了一个变量文件,也可以引入多个变量文件,每个被引入的文件都需要以开头,示例如下varsfiles:testdiransiblenginxvars。ymltestdiransibleothervars。yml
  vars关键字和varsfiles关键字可以同时使用,如下vars:conf90:etcnginxconf。d90。confvarsfiles:testdiransiblenginxvars。yml
  除了上述总结,ansible还有一些其他的关于变量的使用方法,暂且放到下一篇文章吧,希望这篇文章能够帮助到你,加油

充话费送手机的把戏,我劝你别入坑充话费送手机的话题之前我谈过无数次,相信其它数码博主也谈过不少,可是还是有很多入坑的,也可以理解,毕竟我们的内容看到的少之又少,不管它少不少,今天又重来一下。充话费送手机……过分的要求中层以上员工坚守岗位到底是对是错?9月19日,恒大集团发布公告称,《关于召开恒大财富投资者大会的通知》近日在网上流传。经核实,该通知系伪造,并非我们集团公司之一的恒大金融理财(深圳)有限公司正式出具。投资者不应……华为商城HarmonyOS新成员nova9闪耀来袭寻宝拿大奖今日,华为发布了新手机nova9系列,出厂即预装HarmonyOS2。nova9系列产品会在HarmonyOS生态产品的最大集合地华为商城首发销售。这位HarmonyOS生态中……海底捞道歉,涨价是管理层错误决策!网友向火锅低下了头有关海底捞涨价的讨论还未平息。4月10日,海底捞公开发布声明,针对涨价事件道歉,并表示,此次涨价是公司管理层错误决定,伤害了顾客的利益,对此表示抱歉并决定即日起,所有门店的菜品……拯救你的直男拍照技术!ColorOS帮你拍出女友的七夕节唯美转眼间又到了一个情人节七夕情人节。对于甜甜蜜蜜的小情侣来说,这无疑又是一个秀恩爱的重要节日,但对于不擅长拍照的直男来说,这又是一个对拍照技巧的灵魂考验。然而广大的直男同志……如何清除Safari,Chrome和Firefox中的缓存macw为您带来清除Safari,Chrome和Firefox中的Mac缓存,历史记录和cookie的信息的教程!无论您是要进行常规维护还是要清除浏览方面的问题,请按照以下步骤……现在想想,跳槽去新造车的是真傻?出品:电动星球News作者:蟹老板如题!虽然略微有点标题党,但这个设问我们希望直至本心:作为一名汽车企业的普通员工,在汽车行业下行与巨大变革并存的时代该如何选……现在的电动车充电桩能有多智能?下班后,小王骑着电动车回到小区,将车子停放在车棚后,再把充电线插入充电桩插座,拿出手机扫一下充电桩上的二维码,支付费用,充电就开始了随着电动自行车充电桩在各地居民区大面积覆盖,……4K8K电视距离普通老百姓的客厅还有多远?4K8K电视距离普通老百姓的客厅还有多远?相信从电视整机厂商、内容提供方到普通老百姓,大家心里都有自己的答案。作为在一个8年里面,参与了多款超高清显示芯片(ASICSOC)的设……Java操作数据库指南(之一)一、java实现关系型数据库操作1、java操作mysql增删改查1、帮助类packagecom。gr。DBHerpel;importjava。sql。;导包ClassName……无人机航测应用技术论坛在桂举行,大疆行业应用携测绘新品亮相随着国家全面启动自然资源信息化工作,加快推进实景三维中国建设进程,使得依靠无人机、激光雷达、倾斜摄影等技术的航测遥感系统开始广泛应用。2020年10月23日24日,2020中国……人心宽处,皆是路西方有一句谚语:不要为打翻的牛奶哭泣。用心付出的东西一旦无法挽回,那就不必再费心思去挽回,更没必要去埋怨,去懊悔。当还拥有的时候,就好好珍惜,全力付出;失去的……
反垄断元年,互联网拆墙释放创新活力即将过去的2021年,反垄断互联互通成为互联网领域当仁不让的关键词。多年割据后,平台之间横亘的高墙正在逐渐打破,一个重新走向互联互通的互联网时代正在到来。微信淘宝链接分享……未来的今日头条,是否跟百度一样几乎啥都可以查的到?自从有了今日头条后,很少上百度了,百度上能搜索到的内容,头条上一样可以找的到。现在的头条走大众化,亲民化的路线,比较贴近民生接地气,头条给我的感觉是朝气蓬勃充满活力,哪一样也不……20条javaScript示例代码让你的代码更简洁1。通过条件判断给变量赋值布尔值的正确姿势badif(aa){btrue}else{bfalse}goodbaa2。在if中判断数组长度不为零的正确姿势badif(arr。le……信息化时代下的教育将何去何从?我为什么强调这个时代,因为这个时代是信息化的时代,而信息化的时代是知识大爆炸的,是人工智能的,是多而不是少的问题。人工智能可以取代很多工作,例如:前台、服务员、保安等。我一直觉……在部队大口喝酒的日子,有多少战友还记得那种情景,欢迎唠一唠?我当兵时部队还没有禁酒令,每到节假日会餐可以饮酒。记得九八年十月份,也是我们新婚后的第一个节日,我去团里看值班的爱人,正赶上他们连队集合去吃午饭,其他连队值班的主官见我来……小米股价跌破发行价,雷军股票软件要装回来?截至1月28日盘中,小米低开低走,跌2。18,报16。12港元股,自股价最高点跌幅近55,股价已腰斩。小米集团于2018年7月9日登陆港交所,发行价17港元股,但上市即破……1月27日晚两市互动精华富瑞特装:子公司富瑞能服潼深3井顺利投产迈瑞医疗:新冠抗体检测试剂已拿到CE及境外多国注册证耐普矿机:产品有应用到锂矿企业但占比较低谱尼测试:北京、上海等四家……2000元左右的热门5G手机,参考这几款,颜值性价比都很高1、realmeQ2Pro:8128G,1399元realmeQ2ProrealmeQ2Pro是realmeX7的套娃机型,性价比要高不少;搭载的是天玑800U处理……荣耀X20Max网上爆料!居然用了慢充?随着荣耀Magic系列的热销。曾经让大屏手机用户期待的发布会彩蛋X20Max机型的消息逐渐多了起来。这其中信息真假难辨。加上有些公众号一向不负责任胡乱爆料比如小米Max4荣耀N……华为手机科技感十足的四个技巧,一分钟告诉你,不用就可惜了对于国内的华为相信大家都比较熟悉,而从这几年华为所发布的几款手机来看,不论是从外观、性能方面都受用户喜爱。同时也圈了不少的花粉。今天小编就来分享一下华为手机中这几个技巧,应该没……国内首款智能加油机器人正式上班,3分钟内即可完成随着科技的发展,人工智能变得越来越成熟。如今,连加油都开始使用机器人了。国内首款智能加油机器人开始上班,我们一起来看看,它究竟有啥强大之处。1hr国内首款智能加油机器人正……微信小程序都有哪些?手机必备微信小程序有哪些?微信小程序Top100榜单。微信最近推出的小程序肯定让很多手机内存报警的用户看到了希望,因为再也不必安装那么多软件占据着手机的空间,只需要在微信搜索对……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网