共计 3368 个字符,预计需要花费 9 分钟才能阅读完成。
一、准备环境
1、设置主机名和 hosts 文件
Master
Agent
2、启动节点 ntpd 服务
3、制作本地 yum 仓库
见这个链接
http://www.linuxidc.com/Linux/2016-08/133862.htm
4、搭建 FTP 服务器,提供自定义 yum 仓库访问接口
[root@master ~]# cat /etc/vsftpd/vsftpd.conf
listen=YES
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/etc/vsftpd/vsftpd.log
xferlog_std_format=YES
ftpd_banner=Welcome to Ftp(installed by DQ)
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
5、将生成好的 yum 源 copy 到 FTP 共享目录中
[root@master ~]# cp -arv /home/puppet /var/ftp/pub/
6、agent 上配置远程 yum 仓库
[root@agent ~]# cat /etc/yum.repos.d/puppet.repo
[CentOS-puppet]
name=puppetlabs epel gems for centos
baseurl=ftp://master.puppet.com/pub/puppet/
enabled=1
gpgcheck=0
priority=1
测试 puppet yum 是否可用
- 说明 puppet 安装依赖 ruby-shadow 和 ruby-augeas,ruby 相关的软件包通过 EPEL 源获取,但是需要设置 Master 和 Agent 上 EPEL 源的优先级比自行制作的 puppet 低,否则 puppet 会获取 EPEL 中高版本安装
- 可参照步骤 3,制作本地 yum 仓库中的设置,这里不再赘述
二、Master 端 yum 安装配置 puppet
1、安装 Puppet-server、puppet 和 facter
[root@master ~]# yum install puppet puppet-server facter -y
2、配置 puppet.conf 注意:配置文件中有两个 certname,[master] 中配置的 certname 是为所有节点认证用的 master 名称,[agent] 中配置的 certname 是其本身 agent 的名称,当然不配置默认是和 master 的名称是一样的。
[root@master ~]# cp /etc/puppet/puppet.conf{,.bak}
[root@master ~]# cat /etc/puppet/puppet.conf |grep "^\s*[^# \t].*$"
[main]
logdir = /var/log/puppet
rundir = /var/run/puppet
ssldir = $vardir/ssl # 证书存放目录,默认 $vardir 为 /var/lib/puppet
[agent]
classfile = $vardir/classes.txt
server = master.puppet.com # 设置 agent 认证连接 master 端的服务器名称,注意这个名字必须能够被节点解析
certname = agent.puppet.com # 设置 agent 端 certname 名称
localconfig = $vardir/localconfig
[master]
certname = master.puppet.com # 设置 puppetmaster 认证服务器名
3、创建 site.pp 文件 site.pp 文件是 puppet 读取所有模块 pp 文件的开始,在 3.0 版本以前必须设置,否则服务无法启动。
[root@master ~]# touch /etc/puppet/manifests/site.pp
4、启动 puppetmaster 服务
[root@master ~]# /etc/init.d/puppetmaster start
Starting puppetmaster: [OK ]
5、查看本地证书情况 puppetmaster 第一次启动会自动生成证书自动注册自己
[root@master ~]# tree /var/lib/puppet/ssl/
/var/lib/puppet/ssl/
├── ca
│ ├── ca_crl.pem
│ ├── ca_crt.pem
│ ├── ca_key.pem
│ ├── ca_pub.pem
│ ├── inventory.txt
│ ├── private
│ │ └── ca.pass
│ ├── requests
│ ├── serial
│ └── signed
│ └── master.puppet.com.pem # 已注册
├── certificate_requests
├── certs
│ ├── ca.pem
│ └── master.puppet.com.pem
├── crl.pem
├── private
├── private_keys
│ └── master.puppet.com.pem
└── public_keys
└── master.puppet.com.pem
9 directories, 13 files
[root@master ~]# puppet cert --list --all
+ "master.puppet.com" # 带 + 标示已经注册成功 (CF:74:C7:C7:91:DB:F5:82:3A:5E:01:93:E8:23:64:C4)
+ (alt names: "DNS:master.puppet.com", "DNS:puppet", "DNS:puppet.puppet.com")
6、查看监听状态 puppetmaster 服务开启后,默认监听 TCP 8140 端口
二、Agent 端 yum 安装配置 puppet
1、安装 puppet 和 facter
[root@agent ~]# yum install puppet facter -y
2、配置 puppet.conf
3、agent 通过调试模式启动节点向 master 端发起认证
4、master 端确定认证
[root@master ~]# puppet cert --list --all
[root@master ~]# puppet cert --sign agent.puppet.com
[root@master ~]# tree /var/lib/puppet/ssl/
查看认证情况,agent 未认证
注册 agent
再次查看认证情况,agent 已认证
Puppet 学习系列:
Puppet 学习一:安装及简单实例应用 http://www.linuxidc.com/Linux/2013-08/88710.htm
Puppet 学习二: 简单模块配置和应用 http://www.linuxidc.com/Linux/2013-08/88711.htm
相关阅读:
有关 Puppet agent 端三种备份恢复方案探讨研究 http://www.linuxidc.com/Linux/2013-07/87885.htm
选择更安全的方式注册你的 Puppet 节点 http://www.linuxidc.com/Linux/2013-07/87884.htm
通过配置 SSH 深刻理解 Puppet 的语法及工作机制 http://www.linuxidc.com/Linux/2013-07/87882.htm
Puppet 利用 Nginx 多端口实现负载均衡 http://www.linuxidc.com/Linux/2013-02/79794.htm
CentOS(5 和 6)下 Puppet 的 C / S 模式实例 http://www.linuxidc.com/Linux/2011-12/50502.htm
Puppet 的详细介绍 :请点这里
Puppet 的下载地址 :请点这里
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-08/133863.htm