当前位置: 首页 > news >正文

杭州门户网站建设池州哪家做网站

杭州门户网站建设,池州哪家做网站,比较开放的浏览器网址,专业的购物网站建设目录 一.循环迭代#xff08;loop/with_items#xff09; 1.作用 2.案例演示 #xff08;1#xff09;遍历输出以列表形式定义的abc #xff08;2#xff09;遍历输出以变量定义的webservers组内主机 #xff08;3#xff09;遍历输出以字典定义的数据 #xf…目录 一.循环迭代loop/with_items 1.作用 2.案例演示 1遍历输出以列表形式定义的abc 2遍历输出以变量定义的webservers组内主机 3遍历输出以字典定义的数据 4遍历嵌套定义的loop 二.条件判断when 1.作用 2.when语句的比较运算符 1!/用于比较两个对象是否不等/相等可用于字符串、数字类型 2//用于比较两个对象的大小 3.when语句的逻辑运算符 1and逻辑与两个对象同真为真 2or逻辑或两个对象见真为真 3not逻辑否取反 4()作为一个更大的表达式包含一组表达式 4.when语句的exists判断 1判断目录是否存在 2判断文件是否不存在取反操作 5.when语句对于变量的判断 1defined变量已被定义 2变量未被定义 3变量被定义为空 6.when语句对于结果的判断 1success/succeededfailure/failed判断任务任性成功与否 2change/changedskip/skipped判断任务执行状态 三.整体条件判断block 1.作用 2.block用法示例 3.block错误处理时用法演示 4.block固定执行用法演示 一.循环迭代loop/with_items 1.作用 主要是用于让管理节点在需要编写多个任务时的情况下仅用一个任务来进行循环迭代完成任务使用loop关键字对目标进行迭代在ansible相对比较旧的版本中使用的with_item平替现在我的2.9.27仍然兼容loop关键字内可以是列表、变量、字典等 2.案例演示 1遍历输出以列表形式定义的abc [rootmain playkongzhi]# cat loop1.yaml --- - hosts: serveratasks:- name: test itemdebug: msg: {{ item }}loop:- a- b- c[rootmain playkongzhi]# ansible-playbook loop1.yaml ok: [servera] (itema) {msg: a } ok: [servera] (itemb) {msg: b } ok: [servera] (itemc) {msg: c } 2遍历输出以变量定义的webservers组内主机 [rootmain playkongzhi]# cat loop1.yaml --- - hosts: serveratasks:- name: test itemdebug: msg: {{ item }}loop: {{ groups.webservers }}[rootmain playkongzhi]# ansible-playbook loop1.yaml ok: [servera] (itemservera) {msg: servera } ok: [servera] (itemserverb) {msg: serverb } 3遍历输出以字典定义的数据 循环输出hello和nihao [rootmain playkongzhi]# cat loop1.yaml --- - hosts: serveratasks:- name: test itemdebug: msg: {{ item }}loop:- x1: hello- x2: nihao [rootmain playkongzhi]# ansible-playbook loop1.yaml ok: [servera] (item{ux1: uhello}) {msg: {x1: hello} } ok: [servera] (item{ux2: unihao}) {msg: {x2: nihao} } 4遍历嵌套定义的loop 循环创建user1和user2 [rootmain playkongzhi]# cat loopuser.yaml --- - hosts: serveratasks:- name: create user1 and user2user:name: {{ item.name }}state: presentuid: {{ item.uid }}loop:- name: user1uid: 1011- name: user2uid: 1012 [rootmain playkongzhi]# ansible servera -a id user1 servera | CHANGED | rc0 uid1011(user1) gid1011(user1) groups1011(user1) [rootmain playkongzhi]# ansible servera -a id user2 servera | CHANGED | rc0 uid1012(user2) gid1012(user2) groups1012(user2) 二.条件判断when 1.作用 1条件判断用于此任务的结果依赖变量、fact或者是上一个任务的结果用条件判断就可以决定如何去执行对应的任务。在节点上建立了限制捕获那些命令的输出结果不同执行的任务要求不同。 2可以判断某服务的配置文件是否发生变动时考虑是否重启。 3可以根据cpu状况来定制合适的调优策略 2.when语句的比较运算符 1!/用于比较两个对象是否不等/相等可用于字符串、数字类型 示例 [rootmain playkongzhi]# cat bijiao.yaml --- - hosts: serveratasks:- name: com themdebug:msg: 等于when: name ownervars:name: sulibaoowner: sulibao ​ ok: [servera] {msg: 等于 } 2//用于比较两个对象的大小 示例 [rootmain playkongzhi]# cat bijiao.yaml --- - hosts: serveratasks:- name: com themdebug:msg: hellowhen: name ownervars:name: sulowner: liok: [servera] {msg: hello } 3.when语句的逻辑运算符 1and逻辑与两个对象同真为真 [rootmain playkongzhi]# cat when.yaml --- - hosts: serveratasks:- name: dis infodebug:msg: yeswhen: 1 0 and 1 9ok: [servera] {msg: yes } 2or逻辑或两个对象见真为真 [rootmain playkongzhi]# cat when.yaml --- - hosts: serveratasks:- name: dis infodebug:msg: yeswhen: 1 0 or 1 9 ​ ok: [servera] {msg: yes } 3not逻辑否取反 [rootmain playkongzhi]# cat when.yaml --- - hosts: serveratasks:- name: dis infodebug:msg: yeswhen: not 1 0 and 1 9 ​ skipping: [servera] 4()作为一个更大的表达式包含一组表达式 [rootmain playkongzhi]# cat when.yaml --- - hosts: serveratasks:- name: dis infodebug:msg: yeswhen: (not 1 0 and 1 9) or 5 6ok: [servera] {msg: yes } 4.when语句的exists判断 1判断目录是否存在 [rootmain playkongzhi]# cat test.yaml --- - hosts: serveratasks:- debug:msg: directory existwhen: path is existsvars:path: /rootok: [servera] {msg: directory exist } 2判断文件是否不存在取反操作 [rootmain playkongzhi]# cat test.yaml --- - hosts: serveratasks:- debug:msg: file not existwhen: not path is existsvars:path: /root/ansible.bakok: [servera] {msg: file not exist } 5.when语句对于变量的判断 1defined变量已被定义 [rootmain playkongzhi]# cat varswhen.yaml --- - hosts: serveratasks:- name: test varsdebug:msg: var definedwhen: inventory_hostname is defined ​ ok: [servera] {msg: var defined } 2变量未被定义 [rootmain playkongzhi]# cat varswhen.yaml --- - hosts: serveratasks:- name: test varsdebug:msg: var undefinedwhen: a is undefined ​ ok: [servera] {msg: var undefined } 3变量被定义为空 [rootmain playkongzhi]# cat varswhen.yaml --- - hosts: serveravars:a:tasks:- name: test varsdebug:msg: var nonewhen: a is noneok: [servera] {msg: var none } 6.when语句对于结果的判断 1success/succeededfailure/failed判断任务任性成功与否 [rootmain playkongzhi]# cat result.yaml --- - hosts: serveratasks:- name: cd resultshell: cd /cevdignore_errors: true   #为了测试结果完整忽略错误register: result- name: test resultdebug:msg: no directory /cevdwhen: not result is success ​ ok: [servera] {msg: no directory /cevd } 2change/changedskip/skipped判断任务执行状态 [rootmain playkongzhi]# cat result.yaml --- - hosts: serveratasks:- name: cd resultshell: touch /a.txtignore_errors: trueregister: result- name: test resultdebug:msg: touch successwhen: result is changed ​ ok: [servera] {msg: touch success } 三.整体条件判断block 1.作用 解决when语句多个判断需要书写多个when的情况使用block将多个任务组合起来对这个整体进行when条件判断条件成立了才会去执行块中的所有任务。在playbook中可以给block定义name也可以直接使用when但不能直接对其使用loop循环。这里主要介绍block常规用法rescue错误处理用法和always固定执行用法 2.block用法示例 [rootmain playkongzhi]# cat block.yaml --- - hosts: serveratasks:- name: carry blockblock:- name: free shell: free -m- name: echo shell: free -m /a.txtwhen: 1 2 ​ [rootmain playkongzhi]# ansible servera -a cat /a.txt servera | CHANGED | rc0 total       used       free     shared buff/cache   available Mem:           5848         306       5348         11         193       5313 Swap:         2047           0       2047 3.block错误处理时用法演示 没有/my目录shell模块执行错误执行rescue部分 注意block模块中只要有一个任务执行失败都会跳转执行rescue部分 [rootmain playkongzhi]# cat rescue.yaml --- - hosts: serveratasks:- name: test rescueblock:- shell: ls /myrescue:- debug: msg: no directory ​ ok: [servera] {msg: no directory } 4.block固定执行用法演示 不管bloack块执行成功还是失败都执行alway部分 [rootmain playkongzhi]# cat always.yaml --- - hosts: serveratasks:- name: test rescueblock:- shell: ls /myrescue:- debug: msg: no directoryalways:- debug:msg: there always ​ ok: [servera] {msg: no directory } ​ ok: [servera] {msg: there always }
http://www.zqtcl.cn/news/308496/

相关文章:

  • 合肥佰瑞网站搜索引擎优化步骤
  • 营销型网站建设亏1广西桂林天气预报15天
  • 想做一个网站平台怎么做公司网站建设费用估计
  • 电商网站开发平台pi netwo网页设计文件下载
  • 南平网站设计笔记本怎么建设网站
  • 舆情分析网站免费人工智能培训班收费标准
  • 青岛网站建设 大公司制作相册视频
  • 什么是网站的域名jquery素材网站
  • 课程网站建设ppt模板百度seo推广
  • 网站建设需要用到什么怎么在电脑上用手机app软件
  • 公司做网站有意义么网站认证必须做么
  • 网站虚拟空间更新缓存php外贸网站建设
  • 河南省建设执业资格注册中心网站门户定制网站建设公司
  • 网站开发比较厉害wordpress中文 插件
  • 文化投资的微网站怎么做个人微信公众号如何推广
  • 单位的网站怎样设计才美观网页设计图片的代码
  • 长沙专业做网站排名济南手机网站定制费用
  • 西安专题门户响应式网站建设系统网站有哪些
  • 山东省建设局网站监理员考试asp.net mvc6电商网站开发实践
  • 做网站需要提供什么资料网站备案是什么意思
  • 河南网站建设及推广东莞百度代做网站联系方式
  • 大型企业网站制作浦东新区做网站
  • 简单大气网站源码织梦怎么用框架实现在浏览器的地址栏只显示网站的域名而不显示出文件名
  • 电子商务型网站建设线上推广营销策划
  • 网站建设管理工作情况的通报网站开发vs设计报告
  • 嘉定网站网站建设公司官网制作
  • 做旅游广告在哪个网站做效果好财经网站建设
  • 网站样式下载网站地图定位用什么技术做
  • 自己做网站怎么做的百中搜优化软件
  • 南宁建站平台与网站建设相关的论文题目