Ansible的脚本-----playbook剧本【下】
创始人
2024-12-17 17:35:01
0

目录

实战演练六:tags 模块

实战演练七:Templates 模块


实战演练六:tags 模块

可以在一个playbook中为某个或某些任务定义“标签”,在执行此playbook时通过ansible-playbook命令使用--tags选项能实现仅运行指定的tasks。
playbook还提供了一个特殊的tags为always。作用就是当使用always作为tags的task时,无论执行哪一个tags时,定义有always的tags都会执行。

vim play5.yaml - name: five play   remote_user: root   hosts: dbservers   gather_facts: true   tasks:   - name: copy file     copy: src=/etc/hosts dest=/opt/     tags:     - test    - name: touch file     file: path=/opt/myhosts state=touch     tags:     - only   ansible-playbook play5.yaml --tags="test"   #指定标签,只运行该标签下的任务



被控制节点查看opt目录下是否有hosts文件

vim play5.yaml - name: five play   remote_user: root   hosts: dbservers   gather_facts: true   tasks:   - name: copy file     copy: src=/etc/hosts dest=/opt/     tags:     - test    - name: touch file     file: path=/opt/myhosts state=touch     tags:     - only     - always  ansible-playbook play5.yaml --tags="test"     #当使用always作为tags的task时,无论执行哪一个tags时,定义有always的tags都会执行。

被控制节点查看

实战演练七:Templates 模块

Jinja是基于Python的模板引擎。Template类是Jinja的一个重要组件,可以看作是一个编译过的模板文件,用来产生目标文本,传递Python的变量给模板去替换模板中的标记。

cp /opt/httpd.conf ./httpd.conf.j2   先准备一个以 .j2 为后缀的 template 模板文件,设置引用的变量  vim httpd.conf.j2  Listen {{server_ip}}:{{http_port}}   #42行 ServerName {{host_name}}:{{http_port}}   #95行        vim /etc/ansible/hosts [webservers] 192.168.9.113 server_ip=192.168.9.113 http_port=8080 host_name=www.xy102.com 192.168.9.111 server_ip=192.168.9.111 http_port=8081 host_name=www.xy103.com 

vim play1.yaml - name: first play   gather_facts: false   hosts: webservers   remote_user: root   tasks:   - name: disable firewalld     service: name=firewalld state=stopped enabled=no   - name: disable selinux     command: 'setenforce 0'     ignore_errors: true   - name: mount cdrom     mount: src=/dev/sr0 path=/mnt fstype=iso9660 state=mounted   - name: install httpd     yum: name=httpd state=latest   - name: copy config template file     template: src=httpd.conf.j2 dest=/etc/httpd/conf/httpd.conf     notify: "reload httpd"   - name: start httpd     service: name=httpd state=started enabled=yes   handlers:   - name: reload httpd     service: name=httpd state=reloaded  ansible-playbook play1.yaml 


两个被控制节点查看42、95行是否修改成功

相关内容

热门资讯

7方式!新祥心有挂吗,微信小程... 7方式!新祥心有挂吗,微信小程序自建房记牌器(有挂开挂辅助神器);无需打开直接搜索加(薇:13670...
一分钟教你!新九哥辅助开挂,新... 一分钟教你!新九哥辅助开挂,新导游正版辅助(有挂开挂辅助插件);无需打开直接搜索薇:13670430...
第3阶段精通!传送屋激k万能辅... 您好:传送屋激k万能辅助器这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户...
透视美元局!wpk辅助,聚星a... 透视美元局!wpk辅助,聚星ai辅助工具下载,2026新版教程!(有挂开挂辅助下载);无需打开直接搜...
8演示!广东雀神智能免费插件安... 8演示!广东雀神智能免费插件安装包,人海大厅辅助插件(有挂开挂辅助器);无需打开直接搜索薇:1367...
一分钟了解!衡阳丫丫辅助,闲玩... 一分钟了解!衡阳丫丫辅助,闲玩暗宝插件(有挂开挂辅助下载);无需打开直接搜索加薇136704302(...
第9刹那精通!友八鸽辅助,白金... 您好:白金岛跑胡子脚本这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌...
透视线上!新广西老友辅助,新道... 透视线上!新广西老友辅助,新道游戏辅助器免费,解说技巧(有挂开挂辅助脚本);无需打开直接搜索薇:13...
三妙招!新道游科技透视免费版下... 三妙招!新道游科技透视免费版下载,超圣大厅可控是什么意思(有挂开挂辅助工具);无需打开直接搜索薇:1...
攻略讲解!微信小程序挂后台,卡... 攻略讲解!微信小程序挂后台,卡五星辅助(有挂开挂辅助插件);无需打开直接搜索薇:136704302 ...