1、 puppet:运维自动化软件,针对多台服务器统一操作,批量安装、上线维护,减少人力及误操作风险。 可在单机上也可以以C/S机构使用。服务器端为puppetmaster,客户端为puppetclient.client和master之间是基于ssl和证书的,需要注册。Puppet同步后会保持状态,默认30分钟重新检测同步一次。

2、 puppet工作流程:

1) 客户端通用facter探测主机的变量,并通过SSL连接发送到服务器。

2) 服务器通过facter分析客户端的主机名,并找到manifests里对应的node配置并分析生成一个伪代码,并发给客户端。

3) 客户端收到伪代码,把执行结果发给服务器。

4) 服务器把结果记录日志

3、 puppetmaster的配置:分模块配置结构和目录结构两部分

模块配置中可以创建许多应用模块,每一个应用模块必须有一个入口,文件(主配置文件)init.pp文件,可以只有这一个文件也可以包含其他文件。

目录结构中包含需要客户端复制的文件及客户端节点信息等:必须有的入口文件名为site.pp

4、 客户端同步的方式有两种;

1) 客户端主动拉取(小规模):puppet agent -t

2) 服务器端推送同步(大规模):需要客户端添加验证信息和权限

              Puppet  kick  客户机名