关于整个puppet的学习发现一些的问题

简介:

1、在开始配置证书匹配时候,/etc/hosts的hostname、/etc/sysconfig/network的HOSTNAME要与puppet cert list --all显示客户端hostname的要一致,客户端的puppet配置里的server就是要指向服务端的hostname,不然证书无法匹配成功和无法从S发送到C

wKioL1brYYrSunZlAAAjgOiGcQg871.png

wKioL1brYYviB0YbAAA5_iNF00I265.png

 

wKioL1brYgOD6jQ6AAAI4xval7s147.png

wKiom1brYXPgHg_-AAAB5bsWp1g883.png


2、在配置模块那里的定义(这里不能填写hostname里的名字,需要填写命令行下正常显示的hostname,不然定义模块里的文件是发送不去客户端的),和一次性可以传送多个文件去客户端(node default  #这一个是全局配置,node slave/slave1  #针对指定客户端的配置)

wKiom1brYYqS3gNaAAAf2WxqCfQ169.png 

上面的node slave不是*.com,如果是slave.com后导致模块里的文件无法传送,在客户端的/var/log/messages日志提示错误,slave1是那天临起床前突发奇想加进去(是slave的克隆机)
 

wKiom1brYa6hB7v-AAARkKxeOmM315.png

wKiom1brYa6ivGsuAAAQ_znEe2s411.png


所以发现上面错误提示,将模块的.com去掉(以.为分隔符,保留第一栏),接下客户端接收文件成功,日志也没有提示错误信息

wKioL1brYmCgJ2cMAAAosXjuTHI364.png

wKiom1brYdCgQc-hAAAMvE9jpjM451.png

wKioL1brYmCj5ZhnAAAM3CgVjkc619.png

 

3、将服务端现成搭建好论坛上的apache的目录复制到/etc/puppet/modules/apache(apache必须作为另一个新模块,不能合在同一个模块中,不然加上recurse => "true"和purge => true这两个参数会报错)
报错如下:
Mar 13 17:55:22 slave puppet-agent[31445]: Could not retrieve catalog from remote server: Error 400 on SERVER: Could not  find class testm for slave.com on node slave.com

所以需要这样做:

mkdir  -p  /etc/puppet/modules/apache/{files,manifests,templates}

vi /etc/puppet/modules/apache/manifests/init.pp
class apache{
file {"/tmp/apache":          #不要加apache的目录,直接写成/usr/local/即可,不然就重复目录了(图1)
owner => "root",
group => "root",
source => "puppet://$puppetserver/modules/apache",
recurse => "true",          #主目录下有子目录的递归作用
purge => true               #和服务器不同的删除掉(CS两边保持一致,同时加上recurse => "true"才有意义
}
}

 wKioL1brYoeQS-hiAAALbhYeVwQ404.png

 wKiom1brYhij7e1dAAD5yvuWjuc818.png


wKioL1brYtHynEekAABW2upJvNc930.png


wKioL1brYvLC_1GXAAD1qu68_Ek740.png


下面是将testm和apache拆分出来后就不会报错了(图2)


wKiom1brYoHx5w69AABAssMuQIU222.png 


wKioL1brY0rCPIzbAABYQxKNZ2A264.png


PS:当复制文档内容到配置文件保存退出查看日志发现有提示错误,这时候需要对照一下内容是否正确,其次是一些标点符号

附:服务端的模块配置

wKiom1brYxCS35PQAAA4bEzRWOQ556.png








     本文转自wsw26 51CTO博客,原文链接:http://blog.51cto.com/wsw26/1751750,如需转载请自行联系原作者


相关文章
|
关系型数据库 MySQL Shell
|
消息中间件 持续交付
|
Windows
Puppet学习之文件管理
Puppet学习之文件管理 使用puppet可以方便的进行文件管理,可以对文件的内容、属组、属主、权限等进行管理。可管理的文件类型包括普通文件、目录、链接文件。类型需要在ensure类型中明确指定。
893 0