1.puppet master
puppet master 默认是以Ruby内建的WEBRick在后台运行的守护进程,同样也可以采用最常用的Web服务器apache和nginx替换WEBRick以提升性能.puppet master主要功能是编译配置文件,文件,模版,节点的自定义插件.
root@10.1.1.33:nodes# puppet master --help
puppet master [-D|--daemonize|--no-daemonize] [-d|--debug] [-h|--help]
[-l|--logdest syslog||console] [-v|--verbose] [-V|--version]
[--compile ]
* --daemonize: #-D发送到后台守护进程,默认选项
* --no-daemonize: #不发送到后台守护进程
* --debug: #完整调试
* --help: #输出帮助
* --logdest: #日志发送方式,默认是syslog
* --verbose: #显示详细信息
* --version: #打印puppet版本
* --compile: #以JSON的方式输出编译的catalog
使用--getconfig输出默认配置文件
root@10.1.1.33:puppet# puppet master --genconfig > puppet.conf
puppet不启用后台守护进程的方式运行.
root@10.1.1.33:puppet master --no-daemonize --verbose
2.puppet agent
puppet agent 在每个节点以守护进程方式运行,通常每30分钟向master请求一次,以确认新的信息并询问是否有变更.然后负责运行编译好的catalog代码
root@10.1.1.34:tmp# puppet agent --help
puppet agent [--certname ] [-D|--daemonize|--no-daemonize]
[-d|--debug] [--detailed-exitcodes] [--digest ] [--disable [MESSAGE]] [--enable]
[--fingerprint] [-h|--help] [-l|--logdest syslog|eventlog||console]
[--masterport ] [--no-client] [--noop] [-o|--onetime] [-t|--test]
[-v|--verbose] [-V|--version] [-w|--waitforcert ]
使用"--noop"参数,puppet运行catelog,但不执行配置
root@10.1.1.34:tmp# puppet agent --noop
3.puppet apply
puppet apply 是puppet运行命令,主要在检测manifests时或在没有网络连接的情况下使用.不同于puppet agent,puppet apply在运行时不会连接master
root@10.1.1.34:tmp# puppet apply --help
puppet apply [-h|--help] [-V|--version] [-d|--debug] [-v|--verbose]
[-e|--execute] [--detailed-exitcodes] [-L|--loadclasses]
[-l|--logdest syslog|eventlog||console] [--noop]
[--catalog ] [--write-catalog-summary]
(1) 将输出信息输出到日志文件
root@10.1.1.33:manifests# puppet apply -l /tmp/init.pp init.pp
root@10.1.1.33:manifests# cat /tmp/init.pp
Fri Dec 12 16:17:46 +0800 2014 Puppet (notice): Compiled catalog for puppet.domain.com in environment production in 0.04 seconds
Fri Dec 12 16:17:47 +0800 2014 Puppet (notice): Finished catalog run in 0.04 seconds
4.puppet cert
它用于管理本地证书,查看未签名证书,签署证书,废除证书,清除证书.
puppet cert [-h|--help] [-V|--version] [-d|--debug] [-v|--verbose]
[--digest ] []
常用操作:
clean #清除证书
fingerprint #打印证书指纹
generate #生成客户端证书
list #查看认证客户端列表
print #打印主机证书的全文信息
revoke #废除已认证的主机
sign #签署认证
verify #验证本地指定的认证
命令参数:
--all #执行所有操作,包括‘sign‘,‘clean‘, ‘list‘, and ‘fingerprint‘
--digest #设置证书指纹加密的方式
--debug #启用完整调试模式|
--verbose #显示详细信息
--version #显示版本
(1)查看请求认证的客户端列表
root@10.1.1.33:nodes# puppet cert list
(2)为主机agent.domin.com签署验证
root@10.1.1.33:nodes# puppet cert sign agent.domain.com
(3)列出所有签名和未签名的证书
root@10.1.1.33:nodes# puppet cert list --all
+ "agent.domain.com" (SHA256) 3C:82:6A:E2:9B:8B:8F:8A:ED:C9:83:EB:64:47:6C:91:E5:8E:86:A6:B3:D7:1D:E5:4E:39:4D:04:5A:21:C5:86 #符号+表示已经签署过认证
"client.domain.com" (SHA256) E3:B4:46:90:DF:85:37:77:48:BB:F9:FD:9F:13:DE:52:2F:00:1C:71:A3:BC:C2:E2:A5:34:4F:01:DB:27:02:F5
(4)给所有未签署认证的请求颁发认证:
root@10.1.1.33:nodes# puppet cert sign --all
(5)查看所有已签署认证的客户端列表
root@10.1.1.33:nodes# puppet cert list --all
+ "agent.domain.com" (SHA256) 3C:82:6A:E2:9B:8B:8F:8A:ED:C9:83:EB:64:47:6C:91:E5:8E:86:A6:B3:D7:1D:E5:4E:39:4D:04:5A:21:C5:86
5.puppet kick
它用于连接到agent客户端主动运行puppet agent --test命令.类似主动触发配置
Puppet 常用命令