puppet自动化运维之tag标签puppet自动化运维之tag标签

简介:

   标签能更好的让puppet识别一段代码。同时,客户端也可以执行指定的tag,而不需要全部都执行。

 

tag元参数,用于标签资源;

tag函数,用于标签容器;

tagged函数,用于判断一个容器,是否有某个标签,即用于检查tag函数。

 

puppet的自动分配标签分两种:资源和容器。默认是以自己的类型,作为标签名。

 

资源自动分配标签的特点:

       ①自己的资源类型;

       title

       ③所在容器的类型;

       ④所在容器的tital和每个命名空间;

       ⑤继承的tag

 

容器自动分配标签的特点:

       ①自己的类型;

       title和每个命名空间;

       ③所在容器的类型;

       ④所在容器的tital和每个命名空间;

       ⑤继承的tag

 

注:凡title的内容有“/”,该title不会被添加为标签名。

 

#title/

file {"/tmp/filebucket":

       ensure   => file,

       content   => "hello wrold",

}

 

#title不含/

file {"filebucket":

       ensure   => file,

       content   => "hello wrold",

       path   => "/tmp/filebucke ",

}

 

 

 

①.tag元参数:

 

       一般用于,各种资源,可以使用数组。

格式:

 

       tag => "标签名",

       tag => ["标签名1",…, "标签名n"],

 

注:可放入到任何一类资源。

 

例:

#

cron { "run-puppet":

          command => "/usr/sbin/puppet agent --server=master.perofu.com   --test >/dev/null    2>&1",

          minute => inline_template("<%= (hostname+name).hash.abs % 60   %>"),

          tag => "cron_test",

}

 

#

[root@master manifests]# crontab -l

# HEADER: This file was autogenerated at   Fri Mar 21 15:24:59 +0800 2014 by puppet.

# HEADER: While it can still be managed   manually, it is definitely not recommended.

# HEADER: Note particularly that the   comments starting with 'Puppet Name' should

# HEADER: not be deleted, as doing so   could cause duplicate cron jobs.

 

[root@master ~]# puppet agent   --server=master.perofu.com --test --tags cron_test

info: Caching catalog for master.perofu.com

info: Applying configuration version   '1395386333'

notice:   /Stage[main]//Cron[run-puppet]/ensure: created

notice: Finished catalog run in 0.04   seconds

[root@master manifests]# crontab -l

# HEADER: This file was autogenerated at   Fri Mar 21 15:43:55 +0800 2014 by puppet.

# HEADER: While it can still be managed   manually, it is definitely not recommended.

# HEADER: Note particularly that the   comments starting with 'Puppet Name' should

# HEADER: not be deleted, as doing so   could cause duplicate cron jobs.

# Puppet Name:   run-puppet

32 * * * *   /usr/sbin/puppet agent --server=master.perofu.com --test >/dev/null  2>&1

 

 

 

②.tag函数:

       tag函数可以为容器添加标签,,默认就是标签名,个人理解:容器差不多是类,因为类用的多。

 

       如果用户想添加另外的tag,需要class第一行,进行定义。

 

格式:

 

       class   类名{

              tag("标签名")

              …….

}

 

 

例:

#容器的标签名现在有两个:sshsecurity

class ssh{

       tag("security")

       service{"sshd":

              ensure => running,

              enable => true,

       }

}


 

③.tagged函数:

 

    判断一个容器的标签,即tag函数,是否被定义过。

 

vi site.pp

if tagged("sss"){

    $a="The tag is sss"

} else {

    $a="The tag is NONE"

}


file {"/tmp/temp.txt"

    content => "$a",

}

#

cat /tmp/temp.txt

The tag is NONE

 

 

④.如何查看生成的tag标签:

    可查看/var/lib/puppet/reports/节点/yaml







     本文转自yzy121403725 51CTO博客,原文链接:http://blog.51cto.com/lookingdream/1852916 ,如需转载请自行联系原作者


相关文章
|
5月前
|
弹性计算 运维 安全
带你读《云上自动化运维宝典》——万字长文带你了解 CloudOps自动化运维的奥秘,助力云上业务高效稳定运行(1)
带你读《云上自动化运维宝典》——万字长文带你了解 CloudOps自动化运维的奥秘,助力云上业务高效稳定运行(1)
480 1
|
5月前
|
存储 XML JSON
开集目标检测-标签提示目标检测大模型(吊打YOLO系列-自动化检测标注)
开集目标检测-标签提示目标检测大模型(吊打YOLO系列-自动化检测标注)
|
11天前
|
运维 Linux 网络安全
自动化运维的利器:Ansible、Puppet和Chef详解
自动化运维的利器:Ansible、Puppet和Chef详解
37 5
|
11天前
|
运维 Ubuntu 应用服务中间件
自动化运维:使用Ansible进行配置管理和任务自动化
【9月更文挑战第27天】在现代IT基础设施中,自动化运维是提高效率、减少人为错误和确保系统一致性的关键。本文将介绍如何使用Ansible,一个流行的开源IT自动化工具,来简化日常的运维任务。我们将探索Ansible的核心概念,包括它的架构、如何安装和使用它,以及一些实际的使用案例。无论你是新手还是有经验的运维专家,这篇文章都会提供有价值的见解和技巧,以帮助你更好地利用Ansible实现自动化。
|
10天前
|
运维 监控 关系型数据库
自动化运维:编写基本的自动化脚本
自动化运维:编写基本的自动化脚本
11 1
|
2月前
|
运维 Linux Apache
【一键变身超人!】Puppet 自动化运维神器 —— 让你的服务器听话如婴儿,轻松管理资源不是梦!
【8月更文挑战第9天】随着云计算与容器化技术的发展,自动化运维已成为现代IT基础设施的核心部分。Puppet是一款强大的自动化工具,用于配置管理,确保系统保持预期状态。通过易于理解的配置文件定义资源及其依赖关系,Puppet实现了“基础设施即代码”的理念。本文简要介绍了Puppet的安装配置方法及示例,包括Puppet Agent与Master的安装、基本配置步骤和一个简单的Apache HTTP Server管理示例,展示了Puppet在实际应用中的强大功能与灵活性。
42 9
|
2月前
|
运维 监控 持续交付
"揭秘Puppet:自动化运维的超级英雄,一键驾驭复杂IT环境,让运维繁琐瞬间灰飞烟灭,引领未来运维新纪元!"
【8月更文挑战第9天】Puppet作为自动化运维的杰出代表,凭借其强大的配置管理和高度可定制性,助力IT运维实现自动化与智能化转型。通过定义资源模型与使用声明式语言描述系统状态,Puppet能自动调整系统至期望状态,实现标准化运维流程。其工作流程包括定义-应用-报告三步,支持从服务器配置到复杂网络、数据库管理等多种场景。示例代码展示了如何自动化部署Apache服务器,体现了Puppet在实际操作中的高效与便捷。随着技术演进与社区壮大,Puppet将持续推动运维领域的创新发展。
59 6
|
3月前
|
运维 监控 安全
DevOps转型之路:从传统运维到自动化运维的演进
【7月更文挑战第25天】本文旨在探讨DevOps文化和实践如何影响并转变传统的运维模式,通过分析自动化运维的优势与挑战,提供实施自动化运维的策略和方法。文章将结合案例分析,展示自动化运维在提升效率、保障稳定性以及促进团队协作方面的实际成效,为读者提供一条清晰的DevOps转型路径。
33 4
|
3月前
|
人工智能 运维 Prometheus
运维之巅:构建高效自动化运维体系的实战指南
在信息技术飞速发展的今天,企业对IT系统的依赖程度不断加深。如何确保这些复杂系统的稳定性与可靠性,是每一个运维人员面临的挑战。本文将深入探讨构建一个高效自动化运维体系的关键要素,包括工具选择、流程优化、监控告警以及故障响应机制等。通过具体实例和数据分析,揭示自动化运维对企业效率和稳定性的积极影响,并提出一系列可行的实施建议。
113 0
|
5月前
|
弹性计算 运维 监控
【阿里云云原生专栏】自动化运维的艺术:阿里云云原生平台的自动化运维工具集
【5月更文挑战第28天】阿里云云原生平台提供全面的自动化运维工具,涵盖监控告警、资源管理、部署更新、故障自愈、安全管理和数据备份等方面,简化运维工作,增强系统稳定性。通过智能工具集,运维人员能专注于业务优化,实现高效运维,为企业数字化转型提供有力支持。
234 3

推荐镜像

更多