|
1)安装环境:
rhel-server-6.2 版本的机器两台
master host: 192.168.254.242
client host:192.168.254.245
2)安装前准备:
与ubuntu基本一致,需注意的是,要设置master的防火墙,开放puppet所使用的8140端口(详见附录1),这里为了方便,直接关闭防火墙# /etc/init.d/iptables save
# /etc/init.d/iptables stop
开机时默认关闭防火墙
# chkconfig iptables off
3)安装:
puppet(Redhat) 最新的版本似乎只面向ec2(详见附录2),因此需要自行安装旧的版本:
首先到puppet官方的下载库 http://downloads.puppetlabs.com/ 下载所需的版本,经测试,以下包可用
facter-1.6.5-1.el6.noarch.rpm
puppet-2.7.9-2.el6.noarch.rpm
puppet-server-2.7.9-2.el6.noarch.rpm
首先添加puppet的官方的源,以便在安装的时候可自动下载puppet的依赖包,具体看附录3:
# rpm -ivh http://yum.puppetlabs.com/el/6/products/i386/puppetlabs-release-6-7.noarch.rpm
在server节点安装 puppetmaster:#sudo yum install facter-1.6.5-1.el6.noarch.rpm puppet-2.7.9-2.el6.noarch.rpm puppet-server-2.7.9-2.el6.noarch.rpm可通过脚本 /etc/init.d/puppetmaster 来控制状态(start,restart,stop,status)在client节点安装 puppet:#sudo yum install facter-1.6.5-1.el6.noarch.rpm puppet-2.7.9-2.el6.noarch.rpm可通过脚本 /etc/init.d/puppet 来控制状态注:如系统未安装运行puppet所需的ruby环境,上述两条指令会自动安装。
然后配置文件 /etc/puppet/puppet.conf。这是puppet的主要配置文件。在server节点,打开/etc/puppet/puppet.conf后,在[master]下添加当前机器的certname
[master]certname=vm242.com
保存后重启服务:#service puppetmaster restart
在client节点,打开/etc/puppet/puppet.conf后,添加: [agent]
certname=vm245.com
server=vm242.com
report=true
#pluginsync=true
注:当有ruby插件(如用户自定的资源database等)需要同步的时候,再取消pluginsync的注释。在puppet 3.0 里中,pluginsync 的默认值是true,在此之前的版本默认是false,要开启插件同步需明确写出pluginsync=true。 然后重启puppet服务 #service puppet restart
client请求认证和manster接受请求的过程就与ubuntu一致。
正常情况下的安装请参照官方安装文档:http://docs.puppetlabs.com/guides/installation.html#red-hat-enterprise-linux-and-derivatives附录1
redhat的防火墙机制比较严格,即使openstack已使用端口全开的访问机制,当client向master请求认证时,会出现:no route to host 的错误。这时请设置防火墙开放相应端口或关闭防火墙。
附录2
puppet(Redhat) 最新的版本似乎只面向ec2,具体说是puppet所用的facter模块在启动时自ec2的网址发起链接,导致请求超时而产生错误。在终端输入 #facter 会出引发如下错误 /usr/lib/ruby/1.8/timeout.rb:64:in `rbuf_fill': execution expired (Timeout::Error)
……
from /usr/lib/ruby/site_ruby/1.8/facter/ec2.rb:5:in `metadata'
from /usr/lib/ruby/site_ruby/1.8/facter/ec2.rb:33
……from /usr/bin/facter:74
可以看到,facter会去调用ec2.rb模块,导致请求超时。附录3
puppet 安装依赖包:Installing:
facter noarch 1.6.5-1.el6 /facter-1.6.5-1.el6.noarch 164 k
puppet noarch 2.7.9-2.el6 /puppet-2.7.9-2.el6.noarch 2.8 M
Installing for dependencies:
augeas-libs x86_64 0.9.0-4.el6 base 317 k
compat-readline5 x86_64 5.2-17.1.el6 base 130 k
libselinux-ruby x86_64 2.0.94-5.3.el6_4.1 updates 99 k
ruby x86_64 1.8.7.352-12.el6_4 updates 534 k
ruby-augeas x86_64 0.4.1-1.el6 puppetlabs-deps 21 k
ruby-libs x86_64 1.8.7.352-12.el6_4 updates 1.6 M
ruby-shadow x86_64 1.4.1-13.el6 puppetlabs-deps 11 k
Updating for dependencies:
libselinux x86_64 2.0.94-5.3.el6_4.1 updates 108 k
libselinux-utils x86_64 2.0.94-5.3.el6_4.1 updates 81 k
[size=1em]puppet常见错误总结[size=1em]http://gzzanninghu.blog.163.com/blog/static/170583133201110163372699/
|
|
|
|
|
|
|