木偶:订购箭头和通知箭头有什么区别?

Pet*_*mit 7 puppet

在官方的Puppet文档中,它说有两个链箭:https: //docs.puppetlabs.com/puppet/latest/reference/lang_relationships.html

- >(排序箭头) 使左侧的资源在右侧的资源之前应用.用连字符和大于号写的.

〜>(通知箭头) 首先应用左侧的资源,如果左侧资源发生更改,则向右侧的资源发送刷新事件.用波浪号和大于号的书写.

有人可以澄清这两者之间的区别吗?

BMW*_*BMW 11

您提到的文件给出了最好的解释.如果您尝试通过简单的方式理解它,使用存在的样本.

Package['ntp'] -> File['/etc/ntp.conf'] ~> Service['ntpd']
Run Code Online (Sandbox Code Playgroud)

因为File['/etc/ntp.conf'],puppet需要确保ntp在创建或更新文件之前已经安装了包ntp.conf.没有重启请求.

但是对于Service ['ntpd'],ntp.conf需要首先存在 - 这与订单相同->.*但是如果puppet发现文件ntp.conf有任何更改(无论是创建还是更新),都需要重新启动服务ntp.这就是差异*.

有关木偶订购的更多信息,请参阅以下文件:

学习木偶 - 资源订购

并自己做一些测试,以了解它是如何工作的.

  1. 使用订单设置Package ['ntp'],File ['/ etc/ntp.conf'],Service ['ntpd'].
  2. 运行puppet申请以确保在系统上准备好包/文件/服务.
  3. 在文件ntp.conf中进行更改.
  4. --debug使用该puppet apply命令启用该选项.调试日志将在后台为您提供详细信息 - 例如,您应该看到文件已更新并且ntpd服务重新启动.