【Puppet in action】 学习笔记之Puppet目录结构及配置文件说明
2015-11-05 01:10
946 查看
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/puppet
logdir = /var/log/puppet
rundir = /var/run/puppet
ssldir = $vardir/ssl
[master]
pluginsync = true
reports = log, foreman
environment = production
certname = server.abc.com
Puppet Agent客户端主配置文件样例——puppet.conf:
[main]
vardir = /var/lib/puppet
logdir = /var/log/puppet
rundir = /var/run/puppet
ssldir = $vardir/ssl
pluginsync = true
[agent]
classfile = $vardir/classes.txt --关联与检索配置文件目录
localconfig = $vardir/localconfig --设置本地缓存配置目录
runinterval = 1800
listen = 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.conf
namespaceauth.conf --针对不同名称空间的权限控制,通常使用默认值
auth.conf --Puppet中的ACL控制文件,主要用于控制Puppet's REST API的授权访问。
配置格式:
配置样例:
path /facts
auth yes
method find, search
allow a.abc.com, b.abc.com
7、客户端自动认证配置autosign.conf
autosign.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.conf
tagmail.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]
4000
path /etc/puppet/files
allow *.abc.com
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/puppet
logdir = /var/log/puppet
rundir = /var/run/puppet
ssldir = $vardir/ssl
[master]
pluginsync = true
reports = log, foreman
environment = production
certname = server.abc.com
Puppet Agent客户端主配置文件样例——puppet.conf:
[main]
vardir = /var/lib/puppet
logdir = /var/log/puppet
rundir = /var/run/puppet
ssldir = $vardir/ssl
pluginsync = true
[agent]
classfile = $vardir/classes.txt --关联与检索配置文件目录
localconfig = $vardir/localconfig --设置本地缓存配置目录
runinterval = 1800
listen = 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.conf
namespaceauth.conf --针对不同名称空间的权限控制,通常使用默认值
auth.conf --Puppet中的ACL控制文件,主要用于控制Puppet's REST API的授权访问。
配置格式:
配置样例:
path /facts
auth yes
method find, search
allow a.abc.com, b.abc.com
7、客户端自动认证配置autosign.conf
autosign.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.conf
tagmail.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]
4000
path /etc/puppet/files
allow *.abc.com
相关文章推荐
- 在Puppet中用ERB模板来自动配置Nginx虚拟主机
- 用puppet快速部署openstack
- Puppet 安装配置
- puppet资源file详细介绍(附案例)
- puppet资源yumrepo详细介绍(附案例)
- puppet资源exec详细介绍(附案例)
- puppet资源service详细介绍(附案例)
- Puppet基础篇7-编写第一个完整测试模块puppet
- Puppet错误及解决方法(三)
- 在centos中安装puppet和安装过程的一些错误解决
- puppet学习笔记
- Puppet 的错误
- puppet集群部署
- 【puppet 基础导读】
- 运维自动化之puppet
- 服务器集中管理工具puppet
- Puppet3在CentOS6.5集群下的安装
- CentOS下部署puppet-dashboard(nginx + passenger启动)
- puppet小测试
- 在 CentOS 6.2 上安装 Puppet 配置管理工具