准备
1. 关闭防火墙(测试环境方便测试用)
systemctl stop firewalld.service
2. 测试服务器
机器名/域名 | ip | puppet服务 |
---|---|---|
centos1 | 192.168.56.11 | puppet-agent |
centos2 | 192.168.56.12 | puppetserver |
centos3 | 192.168.56.13 | puppet-agent |
3. 安装puppet repository
rpm -Uvh https://yum.puppet.com/puppet5/puppet5-release-el-7.noarch.rpm
puppet server 5.1
1. 清空yum缓存
rm -rf /var/cache/yum
2. insatll pacakge
yum install puppetserver
3.修改配置文件(master)
vi /etc/puppetlabs/puppet/puppet.conf
[main]
certname = centos2
server = centos2
environment = production
runinterval = 5m
[master]
vardir = /opt/puppetlabs/server/data/puppetserver
logdir = /var/log/puppetlabs/puppetserver
rundir = /var/run/puppetlabs/puppetserver
pidfile = /var/run/puppetlabs/puppetserver/puppetserver.pid
codedir = /etc/puppetlabs/code
4. 启动server服务
systemctl start puppetserver
5. 开机自动启动
systemctl enable puppetserver
# 测试
/opt/puppetlabs/bin/puppet master -v -d --no-daemonize
puppet agent 5.3
1. 安装puppet repository
rpm -Uvh https://yum.puppet.com/puppet5/puppet5-release-el-7.noarch.rpm
2. install pacakge
yum install puppet-agent
3. 拷贝rpm包
find /var/cache/yum -name "*.rpm" -exec cp {} /data/tmp \;
4. 安装
rpm -ivh puppet-agent-5.3.3-1.el7.x86_64.rpm
5. 修改配置文件(agent)
vi /etc/puppetlabs/puppet/puppet.conf
[main]
certname = centos3
server = centos2
environment = production
runinterval = 5m
6. 启动服务
方法一
systemctl start puppet
方法二
sudo /opt/puppetlabs/bin/puppet resource service puppet ensure=running enable=true.
7. 测试并验证agent配置
sudo /opt/puppetlabs/bin/puppet agent --test
8. master上给agent证书签名
1)查看待签名证书
/opt/puppetlabs/bin/puppet cert list
2)签名
/opt/puppetlabs/bin/puppet cert sign <NAME>
puppet.conf例子
官方文档地址:
文件说明: https://puppet.com/docs/puppet/5.3/config_file_main.html
配置项: https://puppet.com/docs/puppet/5.3/configuration.html
Example agent config
[main]
certname = agent01.example.com
server = puppet
environment = production
runinterval = 1h
Example master config
[main]
certname = puppetmaster01.example.com
server = puppet
environment = production
runinterval = 1h
strict_variables = true
[master]
dns_alt_names = puppetmaster01,puppetmaster01.example.com,puppet,puppet.example.com
reports = puppetdb
storeconfigs_backend = puppetdb
storeconfigs = true
environment_timeout = unlimited