您的位置:首页 > 其它

Puppet学习之puppet的安装和配置

2015-04-24 16:31 260 查看


一、Puppet简介
版本也开始支持对Windows操作系统有限的一些管理<span
style="font-family:; mso-bidi-font-size: 10.5pt;" 0pt"="">。Puppet适用于服务器管的整个过程
,比如初始安装、配置更新以及系统下线。
二、Puppet的安装
Puppet的安装方式支持源码安装、yum安装以及ruby的gem安装。官网推荐使用yum来安装puppet,方面以后的升级、管理、维护。Centos可以采用yum来安装,但是Centos的默认源中没有puppet包,因此需要先安装epel包。Epel是企业版Linux附加软件包(Extra
Packages for Enterprise Linux)的缩写,是一个由特别兴趣小组创建、维护并管理的,针对红帽企业版Linux(RHEL)及其衍生发行版(比如CentOS、Scientific
Linux)的一个高质量附加软件包项目。

1.
Master的安装

yum -y install ruby ruby-libs ruby-shadow
wget ftp://ftp.sunet.se/pub/Linux/distributions/yellowdog/yum/6.2/extras/RPMS/epel-release-5-3.noarch.rpm
rpm -Uvh epel-release-5-3.noarch.rpm

yum -y install puppet puppet-server facter

2.
Agent的安装

yum install ruby ruby-libs ruby-shadow
wget ftp://ftp.sunet.se/pub/Linux/distributions/yellowdog/yum/6.2/extras/RPMS/epel-release-5-3.noarch.rpm
rpm -Uvh epel-release-5-3.noarch.rpm

yum -y install puppet facter

至此如果安装过程不报错的话,puppet已经安装成功了。
三、Puppet的简单配置
1.
Master的配置
先来看看puppet主目录下都有什么文件已经每个文件是做什么用的:
ls -1 /etc/puppet/

auth.conf #定义puppet master的acl文件

fileserver.conf #定义puppet master文件服务器的配置文件

manifests #puppet脚本主文件目录,site.pp文件必须存在

modules #puppet模块目录

puppet.conf #puppet主配置文件

ssl #存放ssl证书的目录

刚开始的话,
puppet.conf不需要配置就可以满足。
需要更改hosts文件,注意hosts要和主机名对应。
vim
/etc/hosts添加如下内容:

10.1.4.218 puppet.zhang.com puppet

10.1.4.213 node1.zhang.com node1

10.1.4.214 node2.zhang.com node2

大家要根据实际情况加,我这里是一个master,两个agent。
2.
Agent的配置
Agent的配置主要是更改agent上的/etc/puppet/puppet.conf文件的[agent]部分。
在agent上vim /etc/puppet/puppet.conf
添加如下配置

server = puppet.zhang.com
#master服务器的地址

runinterval = 3600
#每隔多久的时间进行自动更新,时间单位为秒

listen = true
#客户端作为一个服务进行监听,允许其它的机器触发puppet运行允许远程触发puppet的节点配置

四、puppet的启动和停止
1.
Master的启动和停止
Master的启动

/etc/rc.d/init.d/puppetmaster start

也可以以采用 service
puppetmaster start启动
第一次启动建议采用puppet master --verbose --no-daemonize方式启动,有助于测试和调试错误,如果采用后面这种方式,你可以看到启动的整个过程,启动过程会做一些初始化的工作,为master创建本地证书认证中心,证书和key。并打开socket等待client的连接。你可以在/etc/puppet/ssl目录看到相关的文件和目录。
Master的停止

/etc/rc.d/init.d/puppetmaster stop

也可以以采用 service
puppetmaster stop停止
更改多选项可以使用/etc/rc.d/init.d/puppetmaster –h查看
2.
Agent的启动和停止
Agent的启动

/etc/rc.d/init.d/puppet start

也可以采用service puppet start来启动
调试的时候可以采用

puppet agent --server=puppet.zhang.com --no-daemonize –verbose

的方式来启动,这样启动我们可以看到agent是如何和master建立连接的。
Agent的停止

/etc/rc.d/init.d/puppet stop

也可以采用service puppet stop来停止。

五、FAQ
1.
连接master的时候出现如下报错:

dnsdomainname: Unknown host

解决办法:检查机器主机名的设置,以及是否添加进hosts。
2.
连接master的时候出现如下报错:

err: Could not request certificate: getaddrinfo: Name or service not known

解决办法:服务器端没有配置hosts域名绑定,在hosts中添加。
3.
连接master的时候出现如下报错:

warning: peer certificate won't be verified in this SSL session

解决办法:服务端还没有返回签发证书,使用puppet cert --list查看
4.
连接master的时候出现如下报错:

err: Could not retrieve catalog from remote server: certificate verify failed

解决办法:客户端和服务器端时间不同步,SSL连接需要依赖主机上的时间是否正确。执行更新时间的命令:/sbin/ntpdate asia.pool.ntp.org
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: