ansible系列(26)--ansible的tags标签
1. tags标签
默认情况下, Ansible 在执行一个 playbook 时,会执行 playbook 中所有的任务。而标签功能是用来指定要运行 playbook 中的某个特定的任务;
- 为
playbook添加标签的方式有如下几种:- 对一个
task打一个标签; - 对一个
task打多个标签; - 对多个
task打一个标签;
- 对一个
task打完标签使用的几种方式:-t执行指定tag标签对应的任务;--skip-tags执行除--skip-tags标签之外的所有任务;
1.1 指定执行某个tags
编写playbook文件,为每个task都设置一个tag:
[root@xuzhichao playbook]# cat install_httpd.yml
---
- hosts: 192.168.20.23
remote_user: root
tasks:
- name: Install Htttpd Server
yum:
name: httpd
state: present
tags:
- install_httpd
- install_apache
- name: Configure Httpd Server
copy:
src: conf/httpd.conf.j2
dest: /etc/httpd/conf/httpd.conf
owner: "root"
group: "root"
mode: "0644"
notify: Restart Httpd Server
tags: conf_httpd
- name: Init Httpd Server
copy:
src: file/test.html.j2
dest: /var/www/html/test.html
owner: "apache"
group: "apache"
mode: "0644"
tags: init_httpd
- name: Start Httpd Server
service:
name: httpd
state: started
enabled: yes
tags: start_httpd
handlers:
- name: Restart Httpd Server
service:
name: httpd
state: restarted
查看此playbook所有的tag:
[root@xuzhichao playbook]# ansible-playbook install_httpd.yml --list-tags
playbook: install_httpd.yml
play #1 (192.168.20.23): 192.168.20.23 TAGS: []
TASK TAGS: [conf_httpd, init_httpd, install_apache, install_httpd, start_httpd]
指定运行的任务的tag,使用 -t 指定 tags 标签对应的任务, 多个 tags 使用逗号隔开即可:
[root@xuzhichao playbook]# ansible-playbook -C -t install_httpd,start_httpd install_httpd.yml
PLAY [192.168.20.23] ******************************************************************************************************************************************
TASK [Install Htttpd Server] **********************************************************************************************************************************
ok: [192.168.20.23]
TASK [Start Httpd Server] *************************************************************************************************************************************
changed: [192.168.20.23]
PLAY RECAP ****************************************************************************************************************************************************
192.168.20.23 : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
1.2 指定排除某个tags
使用 --skip-tags 排除不执行的 tags :
[root@xuzhichao playbook]# ansible-playbook --skip-tags install_httpd,start_httpd install_httpd.yml
PLAY [192.168.20.23] ******************************************************************************************************************************************
TASK [Configure Httpd Server] *********************************************************************************************************************************
changed: [192.168.20.23]
TASK [Init Httpd Server] **************************************************************************************************************************************
ok: [192.168.20.23]
RUNNING HANDLER [Restart Httpd Server] ************************************************************************************************************************
changed: [192.168.20.23]
PLAY RECAP ****************************************************************************************************************************************************
192.168.20.23 : ok=3 changed=2 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
ansible系列(26)--ansible的tags标签的更多相关文章
- Ansible系列(五):playbook应用和roles自动化批量安装示例
html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...
- Ansible系列(四):playbook应用和roles自动化批量安装示例
Ansible系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html playbook是ansible实现批量自动化最重要的手段.在其中可以使用变 ...
- Ansible系列(七):执行过程分析、异步模式和速度优化
本文目录:1.1 ansible执行过程分析1.2 ansible并发和异步1.3 ansible的-t选项妙用1.4 优化ansible速度 1.4.1 设置ansible开启ssh长连接 1.4. ...
- Ansible系列(二):选项和常用模块
html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...
- Ansible系列(一):基本配置和使用
本文目录:1.1 安装Ansible1.2 配置Ansible 1.2.1 环境配置 1.2.2 SSH互信配置 1.2.3 简单测试1.3 inventory Ansible是一种批量.自动部署工具 ...
- Ansible系列(六):各种变量定义方式和变量引用
本文目录:1.1 ansible facts1.2 变量引用json数据的方式 1.2.1 引用json字典数据的方式 1.2.2 引用json数组数据的方式 1.2.3 引用facts数据1.3 设 ...
- Ansible系列(三):YAML语法和playbook写法
html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...
- Ansible系列(六):循环和条件判断
本文目录:1. 循环 1.1 with_items迭代列表 1.2 with_dict迭代字典项 1.3 with_fileglob迭代文件 1.4 with_lines迭代行 1.5 with_ne ...
- Ansible系列(五):各种变量定义方式和变量引用
Ansible系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html 1.1 ansible facts facts组件是用来收集被管理节点信息的 ...
- 自动化运维工具ansible学习+使用ansible批量推送公钥到远程主机
目录: 一.ansible简介 1.1.ansible是什么 1.2.ansible如何工作 1.3.ansible优缺点 1.4.ansible安装方式 1.5.ansible文件简单介绍 1.6. ...
随机推荐
- 第一次画pcb学到的知识
第一次画pcb学到的知识 1. Typec (6针) 其中的CC1.CC2引脚为快充协议的引脚,用不到的时候串个5.1K的电阻接地s 2. AMS117降压电路 AMS1117芯片的输入电压都要一个1 ...
- WPF实现树形表格控件(TreeListView)
前言 本文将探讨如何利用WPF框架实现树形表格控件,该控件不仅能够有效地展示复杂的层级数据,还能够提供丰富的个性化定制选项.我们将介绍如何使用WPF提供的控件.模板.布局.数据绑定等技术来构建这样一个 ...
- #范德蒙德卷积,第二类斯特林数,NTT#洛谷 2791 幼儿园篮球题
题目 \(T(T\leq 200)\)组数据求 \[\frac{1}{C(n,k)}\sum_{i=0}^kC(m,i)C(n-m,k-i)i^L \] 对于所有数据满足 \(n,m,k\leq 2* ...
- 本周四晚19:00知识赋能第七期第3课丨OpenHarmony WiFi扫描仪实现
8月25日19:00~20:00,第七期知识赋能第三节直播就要开始啦!如果你是缺乏实战经验的学生,如果你是初出茅庐的职场新人,如果你是想参与开源的贡献者,那么本期的直播课将不容错过!通过本期直播,开发 ...
- 面试必备HashMap源码解析
Map的实现有很多种,而HashMap算是最经典的实现之一了吧,在平时的使用中,绝大部分的使用也都是HashMap,我记得刚入行那会,脑子里对Map的使用就是Map map = new HashMap ...
- HarmonyOS开发案例分享:万能卡片也能用来玩游戏
一.前言 作为一名开发爱好者,从大了讲,我学习并进行HarmonyOS相关开发是为了能为鸿蒙生态建设尽一份绵薄之力,从小了讲,就是为了自己的兴趣.而万能卡片是一个让我非常感兴趣的东西. 很多时候我跟别 ...
- HarmonyOS实现表单页面的输入,必填校验和提交
一. 样例介绍 本篇Codelab基于input组件.label组件和dialog组件,实现表单页面的输入.必填校验和提交: 1. 为input组件设置不同类型(如:text,email,date等 ...
- sql 语句系列(计算的进阶)[八百章之第十六章]
前言 介绍两个实用的sql查询语句. 1.计算平均数时候,去除最大值和最小值. 2.修改累计值. 计算平均数时候,去除最大值和最小值 sql server: select AVG(sal) from( ...
- 力扣287(java&python)-寻找重复数(中等)
题目: 给定一个包含 n + 1 个整数的数组 nums ,其数字都在 [1, n] 范围内(包括 1 和 n),可知至少存在一个重复的整数. 假设 nums 只有 一个重复的整数 ,返回 这个重复的 ...
- 力扣566(java)-重塑矩阵(简单)
题目: 在 MATLAB 中,有一个非常有用的函数 reshape ,它可以将一个 m x n 矩阵重塑为另一个大小不同(r x c)的新矩阵,但保留其原始数据. 给你一个由二维数组 mat 表示的 ...