Puppet常用配置与管理

前言:对于上一篇文章,当我们安装完puppet后,才是刚刚开始,接下来我们要做的就是怎么来使用puppet管理和维护我们的批量服务器。我们也许会问,那使用puppet的时候需要注意哪些方面呢?平时需要配置什么呢?那接下来我们一起来学习。


一、puppet自动认证:

1
2
3
4
5
6
7
首先我们先来看一个问题,新服务器可以通过kickstart自动安装完,并且自动安装完puppet相关包,安装完后客户端会请求证书,然后服务器会给客户端颁发证书,如果手动颁发很麻烦,如下配置可以让服务器自动验证。
前提是配置好hosts
Master  192-168-0-130.APP.com
Client  192-168-0-131.APP.com
在服务器端的puppet.conf配置文件里面[main]下方加上autosign =  true
重启puppetmaster服务即可!
这样在客户端执行puppetd --server=192-168-0-130.APP.com -- test  服务器端会自动认证!

二、重新生成证书:

1
2
3
4
很多时候由于更换主机名,我们需要重新配置认证:
首先在客户端删除  rm  -rf  /var/lib/puppet/ssl/ 文件夹.
然后在服务器端删除客户端的证书:puppetca --clean 192-168-0-131.APP.com 【 192-168-0-131.APP.com 客户端的主机名】
最后再在客户端执行puppetd --server=192-168-0-130.APP.com -- test  即可!

三、配置客户端自动同步:

1
2
3
4
5
6
7
8
9
10
11
在客户端安装完puppet后,并且认证完后,我们可以看到效果,那怎样让它自动与服务器同步呢?默认多少分钟跟服务器同步呢?怎样修改同步的时间呢,这时候我们需要配置客户端:
1 )、配置puppet相关参数和同步时间:
vi /etc/sysconfig/puppet
PUPPET_SERVER= 192 - 168 - 0 - 130 .APP.com 服务器mater的host
PUPPET_PORT= 8140  访问服务器的 8140 端口
PUPPET_LOG=/ var /log/puppet/puppet.log 本地日志
PUPPET_EXTRA_OPTS=--waitforcert= 500
然后启动 /etc/init.d/puppet start 即可
  2 )、默认配置完毕后,客户端会半个小时跟服务器同步一次,我们可以修改这个时间。 vi /etc/puppet/puppet.conf 的 [agent]下加入:
runinterval =  60  //代表60秒跟服务器同步一次
修改完后重启puppet 过一分钟即可看到客户端同步的效果!


四、puppetrun的使用(puppet kick):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
当我们配置完puppet服务器端和客户端后,客户端会默认半个小时跟服务器端同步,如果我们需要更新重要文件,是不是得立即生效呢,那有什么好的办法吗?答案:有!
在服务器端使用puppetrun这个命令可以给客户端发送一段信号,告诉客户端立刻跟服务器同步,这样就达到我们的目的了!那怎样配置呢?
1 )、修改客户端上的puppet的配置文件
vi /etc/puppet/puppet.conf
在[agent]后面添加
listen =  true  //这个是让puppet监听8139端口。
2 )、修改管户端的puppet的/etc/sysconfig/puppet
vim /etc/sysconfig/puppet
PUPPET_SERVER= 192 - 168 - 0 - 130 .APP.com  //改为你对应的puppetmaster的主机名。
3 )、在管户端新建namespaceauth.conf这个文件,vi /etc/puppet/namespaceauth.conf添加如下内容:
[puppetrunner]
allow *
4 )、在管户端还需要修改auth.conf。
在path /之前添加下内容,加粗部分:
path /run
method save
allow *
path /
auth any
即可!
然后重启客户端:/etc/init.d/puppet restart
5 )、在服务器端测试一下:执行一下命令
puppetrun -p  10  –host  192 - 168 - 0 - 131 .APP.com 后面也可以加多个客户端主机名!
而且已经发送了信号给客户端!可以去客户端查看一下效果 tail -fn  100  / var /log/puppet/puppet.log
#高版本的puppet没有puppetrun这个命令,可以用如下命令来执行,执行之前跟puppetrun一样需要配置并授权
提示finished表示发送信号完成,相反failed则表示失败。
puppet kick -d host  192 - 168 - 0 - 131 .APP.com 也可以code  0 表示成功。
执行完在/tmp/下新建test.txt文件!puppetrun还有更高级的用法,可以查看puppetrun –help


本文转自 wgkgood 51CTO博客,原文链接:http://blog.51cto.com/wgkgood/869694
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值