【Puppet in action】 学习笔记之Puppet目录结构及配置文件说明


1、管理命令:
  • service puppetmaster start     --启动puppet server
  • puppet agent --server mytest1 --test     --客户端发起验证
  • puppet cert --list     --查看等待验证的主机
  • puppet cert sign mytest2     --签署主机mytest2的验证请求
  • puppet cert --clean mytest2    --删除某客户端的认证信息,需同时在客户端侧删除其ssl目录

2、Puppet目录及文件结构图(摘自Puppet in action):

3、主要模块及目录:
  • 客户端重新签名,需要先删除/var/lib/puppet/ssl目录
  • 服务端重新签名,也需要先删除签名文件:find $(puppet master --configprint ssldir) -name "$(puppet master --configprint certname).pem" -delete
  • /etc/puppet/modules      --模块信息目录
  • /etc/puppet/manifests/nodes    --用于存放节点信息的目录,节点定义文件需在site.pp中引入

4、puppet.conf主配置文件:
  • puppetd --genconfig > /etc/puppet/puppet.conf     --生成Puppet配置文件
  • puppetmasterd--genconfig > /etc/puppet/puppet.conf
  • puppet doc --reference configuration      --查看配置参考手册

puppet.conf核心配置与常用配置说明(摘自Puppet in action)
详情,可参考http://docs.puppetlabs.com/references/  。

Puppet Master配置样例——puppet.conf:[main]vardir = /var/lib/puppetlogdir = /var/log/puppetrundir = /var/run/puppetssldir = $vardir/ssl[master]pluginsync = truereports = log, foremanenvironment = productioncertname = server.abc.com
Puppet Agent客户端主配置文件样例——puppet.conf:[main]vardir = /var/lib/puppetlogdir = /var/log/puppetrundir = /var/run/puppetssldir = $vardir/sslpluginsync = true[agent]classfile = $vardir/classes.txt     --关联与检索配置文件目录localconfig = $vardir/localconfig     --设置本地缓存配置目录runinterval = 1800listen = true     --监听进程report = true    server = puppet.abc.com     --指定Master地址

5、主机配置文件site.pp全局配置文件,默认目录为/etc/puppet/manifests。puppet apply --genmanifest > /etc/puppet/manifests/site.pp     --命令生成site.pp文件但通常为手工编辑site.pp,如:Exec { path => "/usr/local/sbin:/usr/local/bin:/usr/sbin" }    #设置环境变量$fileserver = "puppet.abc.com"$ntpserver = "ntp.abc.com"Package { provider => "yum" }     #指定使用yum安装软件包#以下为在所有节点上创建一个temp1.txt的文件#node default {#          file { "/tmp/temp1.txt": content => "Hello World!"; }#          }import "modules.pp"     #加载模块配置文件import "nodes/*.pp"     #加载主机信息import "test.domain.com.pp"     #加载测试主机
6、认证与安全配置文件namespaceauth.conf和auth.confnamespaceauth.conf     --针对不同名称空间的权限控制,通常使用默认值
auth.conf     --Puppet中的ACL控制文件,主要用于控制Puppet's REST API的授权访问。配置格式:
配置样例:path     /factsauth     yesmethod     find, searchallow     a.abc.com, b.abc.com
7、客户端自动认证配置autosign.confautosign.conf     --允许该配置文件中定义的客户端自动完成签名验证。配置样例:re.abc.com*.ad.abc.com*.local
可以提前在Master上生成Puppet客户端的证书,然后复制到客户端相应目录下,以实现自动认证的配置。puppet cert generate client.abc.com     --自动生成证书的命令证书文件存放在:/var/lib/puppet/ssl/private_keys/client.abc.com.pem/var/lib/puppet/ssl/certs/client.abc.com/pem/var/lib/puppet/ssl/certs/ca.pem需要将以上文件复制到客户端主机相同的目录下。
8、报告系统配置tagmail.conftagmail.conf     --启用邮件发送报告的功能。需要在Puppet Master端配置reports=tagmail需要在Puppet Agent端配置report=true默认使用本机sendmail发送,可修改reportform=smtpserver,使用指定的邮件服务器。
9、文件系统配置fileserver.conf配置Puppet客户端允许/禁止访问Master的文件目录。配置格式:[mount_point]     path     /path/to/files     allow     *.abc.com     deny     *.ad.abc.com样例:【files]     path     /etc/puppet/files     allow     *.abc.com
智能推荐

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
© 2014-2019 ITdaan.com 粤ICP备14056181号  

赞助商广告