anchor出现背景:Puppet Forge是一个网上的module仓库,许多人写的puppet module会传上去,供大家下载使用。大家下载了一个module可以直接使用,不应该再来改动里面manifests。

但是在puppet2.6版本,当一个class声明另外一个class时,被声明的class的资源将不会被外部的这个类所包含,这使得我们不可能通过一些简单的小class文件组成一个复杂功能的module。为了解决这个问题,引入了anchor。

具体事例请看:http://projects.puppetlabs.com/projects/puppet/wiki/Anchor_Pattern

可见anchor是为了将被引入的class的资源包含进来而存在的。

在使用anchor之前必须确保puppetlabs/stdlib module已经安装好了。在使用anchor时注意:

l  被包含的class必须在两个唯一命名的anchor之间

l  任何被包含的class必须确定它与anchor之间的关系如:

anchor { 'ntp_first': } -> Class['ntp::service'] -> anchor { 'ntp_last': }

在puppet3.4.0之后的版本里有contain方法来替代anchor。

class ntp {

file { '/etc/ntp.conf':

...

require => Package['ntp'],

notify  => Class['ntp::service'],

}

contain ntp::service

package { 'ntp':

...

}

}

include ntp

exec { '/usr/local/bin/update_custom_timestamps.sh':

require => Class['ntp'],

}

puppet中anchor的作用的更多相关文章

  1. web.xml中load-on-startup的作用

    如下一段配置,熟悉DWR的再熟悉不过了:<servlet>   <servlet-name>dwr-invoker</servlet-name>   <ser ...

  2. C#中构造函数的作用

    C#中构造函数的作用 共同点: 都是实例化对象,初始化数据的 默认构造是说所有的类都从祖先object那继承了空参的构造方法,你不写与写空参构造都存在,而有参数的构造一般是自己写的,写就有不写就没有, ...

  3. MySQL数据库中delimiter的作用概述

    以下的文章主要是向大家描述的是MySQL数据库中delimiter的作用是什么?我们一般都认为这个命令和存储过程关系不大,到底是不是这样的呢?以下的文章将会给你相关的知识,望你会有所收获. 其实就是告 ...

  4. js中getBoundingClientRect的作用及兼容方案

    js中getBoundingClientRect的作用及兼容方案 1.getBoundingClientRect的作用 getBoundingClientRect用于获取某个html元素相对于视窗的位 ...

  5. Linq中关键字的作用及用法

    Linq中关键字的作用及用法 1.All:确定序列中的所有元素是否都满足条件.如果源序列中的每个元素都通过指定谓词中的测试,或者序列为空,则为 true:否则为 false. Demo: 此示例使用 ...

  6. JAVA中protected的作用

    JAVA中protected的作用   1.public:public表明该数据成员.成员函数是对所有用户开放的,所有用户都可以直接进行调用 2.private:private表示私有,私有的意思就是 ...

  7. url中#号的作用

    url中#号的作用就是本页面位置跳转 比如这个url地址:http://www.aaaaa.com/index.html?ad=34&m=c#red red就是index.html页面的依哥位 ...

  8. Java中hashCode的作用

    转  http://blog.csdn.net/fenglibing/article/details/8905007 Java中hashCode的作用 2013-05-09 13:54 64351人阅 ...

  9. struts2 中 Actionsupport 的作用

    struts2 中 Actionsupport 的作用 Action 跟 Actionsupport 的区别     当我们在写action的时候,可以实现Action接口,也可以继承Actionsu ...

随机推荐

  1. python 源码解析

    http://blog.donews.com/lemur/archive/category/cpython%E6%BA%90%E7%A0%81%E5%89%96%E6%9E%90/

  2. Android 自定义View修炼-自定义弹幕效果View

    一.概述 现在有个很流行的效果就是弹幕效果,满屏幕的文字从右到左飘来飘去.看的眼花缭乱,看起来还蛮cool的 现在就是来实现这一的一个效果,大部分的都是从右向左移动漂移,本文的效果中也支持从左向右的漂 ...

  3. Java基础知识强化之IO流笔记63:随机访问流RandomAccessFile

    1. 随机访问流RandomAccessFile RandomAccessFile类不属于流,是Object类的子类.但它融合了InputStream和OutputStream的功能.支持对随机访问文 ...

  4. php笔记02:整型细节说明

    1.php的一个整数可以是十进制,也可以是八进制和十六进制: 比如:$a=0123; //八进制 $a=0x1A; //十六进制 2.php的整数都是有符号的数(java也是只有有符号数) 3.在ph ...

  5. Python 文件操作模块 shutil 详解

    1.导入模块 shutil import shutil 2.shutil方法 2.1 shutil.copy(src,dst) //将 src 复制到 dst 保留文件权限    例:将Alan复制到 ...

  6. 关于Java基本数据类型

    Java的基本数据类型分为两大类:boolean类型和数字类型.而数值类型又分为整数类型和浮点类型.而整数类型中的字符类型也可以被单独对待. 总共是4类8种. byte类型整数在内存里占8位. -12 ...

  7. Centos 7中 vim 中文乱码

    参考:http://www.myexception.cn/operating-system/1534005.html 一. sudo vim /etc/vimrc 在文件中加入如下几行:      s ...

  8. 一些实用的js高级技巧

    技巧一之setTimeout. 应用案例:比如你想一个函数循环执行10次,怎么办?以前通常是先setInterval,然后clearInterval,技巧一就是克服这个问题 (function () ...

  9. ASP的高效率的分页算法.net,php同样可以参考

    一般习惯使用的有两种分页算法,一是传统的ADO分页,二是SELECT TOP分页算法.对于小型数据表,比如一两万的数据量的表,我倾向使用ADO算法,对于大型的数据表,则必须采用后者的算法了. 先来说说 ...

  10. hive外部表自动读取文件夹里的数据

    我们在创建表的时候可以指定external关键字创建外部表,外部表对应的文件存储在location指定的目录下,向该目录添加新文件的同时,该表也会读取到该文件(当然文件格式必须跟表定义的一致),删除外 ...