|
一、简单的文件配置
1.全局配置site.pp
vi /etc/puppet/manifests/site.pp
[root@puppet-server puppet]# cat /etc/puppet/manifests/site.pp
import 'nodes.pp'
$puppetserver = 'puppet-server.com'
2.节点配置文件nodes.pp
[root@puppet-server puppet]# cat /etc/puppet/manifests/nodes.pp
node 'puppet-agent1.com' {
include motd
}
3.创建模块文件目录
mkdir -vp /etc/puppet/modules/motd/{files,templates,manifests}
4.模块核心配置文件init.pp
[root@puppet-server puppet]# cat /etc/puppet/modules/motd/manifests/init.pp
class motd {
package { setup:
ensure => present,
}
file {"/etc/motd":
owner => "root",
group => "root",
mode => 644,
source => "puppet://$puppetserver/modules/motd/etc/motd",
require => Package["setup"],
}
}
5.创建需要配置的模块文件
mkdir /etc/puppet/modules/motd/files/etc
echo "test" >/etc/puppet/modules/motd/files/etc/motd
6.启动并测试
启动master
service puppetmaster start
启动客户端测试
[root@puppet-agent1 puppet]# puppet agent --server=puppet-server.com --no-daemonize --verbose --noop --onetime
无报错则启动进程 service puppet start
#在设置配置文件时注意拼写错误!
为 方便测试可以在agent的puppet.conf
中的[agent]下加入:
runinterval=5
#每5秒同步一次
OK 你可以去更改master端的/etc/puppet/modules/motd/files/etc/motd文件,然后看下在agent端的/etc/motd文件是否同步更改。(生产环境runinterval建议为半小时同步一次)
二、http配置
1.创建http相应的文件目录
[root@puppet-server puppet]# mkdir -vp /etc/puppet/modules/httpd/{manifests,templates,files}
2 配置http模块文件
[root@puppet-server puppet]# vi /etc/puppet/modules/httpd/manifests/init.pp
class httpd {
yumrepo { "repo163":
descr => "163 repo",
baseurl => "http://mirrors.163.com/centos/6/os/x86_64/",
gpgcheck => "0",
enabled => "1";
}
package {
"httpd":
ensure => installed,
require => Yumrepo["repo163"];
}
}
3.修改nodes.pp文件
[root@puppet-server puppet]# vi /etc/puppet/manifests/nodes.pp
node 'puppet-agent1.com' {
include motd
include httpd
}
4.检查配置文件语法
[root@puppet-server puppet]# puppet parser validate /etc/puppet/modules/httpd/manifests/init.pp
5.agent端运行配置
[root@puppet-agent1 ~]# puppet agent --test --server puppet-server.com
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Caching catalog for puppet-agent1.com
Info: Applying configuration version '1447120815'
Notice: /Stage[main]/Httpd/Yumrepo[repo163]/ensure: created
Info: changing mode of /etc/yum.repos.d/repo163.repo from 600 to 644
Notice: /Stage[main]/Httpd/Package[httpd]/ensure: created
Notice: Finished catalog run in 73.09 seconds
6.查看httpd是否安装
[root@puppet-agent1 ~]# rpm -q httpd
httpd-2.2.15-47.el6.centos.x86_64
ok httpd已配置安装完成
#过程中遇到的错误
ERROR OpenSSL::SSL::SSLError: SSL_accept returned=1 errno=0 state=SSLv3 read client certificate A: sslv3 alert bad certificate
这个是认证错误,客户端删掉原来的证书,服务端也要清除这台机器的认证信息,之后再重新向服务端注册认证
操作如下:
客户端删除认证文件:
rm -rf /var/lib/puppet/ssl
服务端删除该机器认证机器:
puppet cert --clean puppet-agetn1.com
ok,服务端在重新签名认证就好了。
|
|
|