1.Puppet常用命令
puppet help
puppet help apply 查看apply命令详细帮助文档
agent #客户端进程,负责从master获取数据
apply #运行本地manifests
--noop 试运行命令,实际并不生效
--logdest 日志发送方式
ca #本地证书管理
catalog #编译、保存、查看puppet代码,转换成catalog
cert #证书颁发,用于签署证书
certificate#提供访问证书ca的管理
certificate_request #管理证书请求
config配置选项
facts系统信息检查
file在filebucket中检索和存储文件
inspect发送报告
key删除、保存、创建证书秘钥
kick远程控制agent,远程出发puppet agent命令
mster服务端进程
modules从Forge创建、安装、查询模块
node管理节点
parser解析器管理
plugin插件管理
reoucre将系统资源转换成puppet代码
describe打印当前系统可用资源,以及每个资源的属性
2.puppet常用资源类型
user, group, file, service, exec, cron, notify
资源关系依赖参数:
reuqire :引用一个或者多个依赖的对象,保证该资源在被依赖的对象执行成功之后被应用。即require引用的对象执行之后,当前对象才被应用。
before : 与require相反,保证该资源在被依赖的对象执行之前被应用。即本资源执行成功之后,before引用的对象才会被应用。
元参数require和before只能表示依赖关系,而不能触发
subscribe : 类似require,当引用的对象发生改变时,对当前的对象执行相应的动作
notify : 类似before,该资源对象发生改变时,通知某个资源进行更新。
举例:
file {
'/etc/sshd/sshd_config':
ensure => file,
require => Package['sshd'],
notify => Service['sshd'],
source => 'puppet://$fileserver/files/sshd/sshd_config',
}
service {
'sshd':
ensure => running,
enbale => true,
hasrestart => true,
hasstatus => true,
subscribe => File['/etc/ssh/sshd_config'],
}
package{'sshd': ensure => installed}
在puppet中将按照如下顺序应用以上3个资源:
Package['sshd']->File['/etc/sshd/sshd_config']~>Service['sshd']
其中->标示require依赖,~>标示notcify触发