最近接触了debian的系统,现在要在上面部署puppet,在此记录下,其实第一次接触这个东西,也看到好多资料,都很强大,很详细,在此从一篇文章中摘取了自己想要的和自己做的结合,专做记录,所以有自己原创,但是也有别人,所以算转载了,后篇,会写出自己的东西。
上面的写的介绍不错吧?下面开始自己做了。
puppet server:192.168.154.129 server.puppet.com
puppet client:192.168.154.130 client.puppet.com
切记要同一域
下面开始安装:
server端:
client端:
Ps:修改/etc/defaule/puppet配置文件为yes
重启服务/etc/init.d/puppet /etc/init.d/puppetmaster
puppet 的客户端和服务器是通过ssl链接的,在服务器有一个自签名的根证书,在安装软件的时候自动生成。注意:要在安装软件之前先设置主机名,因为生成证书的时候要主机名写入证书,如果证书生成好了再改主机名,就连不上,这是很多初学者遇到的问题。每个客户端的证书要经过根证书签名才能和服务器链接。所以首先要在客户端之下面的命令来请求服务器签名证书。
记得在hosts里面写入server.puppet.com的解析关系,puppet.com是这里的域
client: puppetd --test --server server.puppet.com
server: puppetca -s -a
查看已经授权的client: puppetca -a --list
然后查看client和server端文件的md5值,验证
这样,客户端和服务端就配置好了,可以在服务端配置好测试mainfest代码进行测试、puppetmaster的第一个执行代码是在/etc/puppet/mainfest/site.pp 因此这个文件必须存在,而且其他的代码也要通过代码来调用,现在,建立一个最简单的site.pp文件,看下:
client:执行puppetd --test --server server.puppet.com
查看/tmp
上面的应该看见了吧,下面来解决实际情况:
比如:1>新加入一台机器,加入puppet.com域的时候,不能每次都让server来手动“批准”吧,怎么让他自动认证呢?
在服务器端puppet.conf配置文件里[main]下方加入autosgin = true
重启puppetmaster服务即可
这样客户端执行puppetd --test --server server.puppet.com 服务器会自动认证
2>有些时候需要修改主机名,我们需要重新配置认证
(1)、首先需要在客户端删除rm -rf /var/lib/puppet/ssl/
(2)、然后在服务器端删除客户端的证书:puppetca --clean client.puppet.com
(3)、然后在客户端执行puppetd --test --server server.puppet.com即可。