设为首页 收藏本站
查看: 2434|回复: 0

[经验分享] puppet部署与应用

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-2-18 09:16:13 | 显示全部楼层 |阅读模式

1.          实验需求:

1)     2台服务器部署puppet服务

2)   1台服务器做puppetmaster和NTP Server

3)   实现主动拉取,服务器推送同步。

2.          实验环境:

主机
操作系统
IP地址
主要软件
Puppetmaster
NTP Server
CentOS6.5 X86_64
192.168.10.30
Facter-1.7.1.tar.gz
Puppet-2.7.21.tar.gz
Puppetclient1
CentOS6.5 X86_64
192.168.10.15
Facter-1.7.1.tar.gz
Puppet-2.7.21.tar.gz
Puppetclient2
CentOS6.5 X86_64
192.168.10.18
Facter-1.7.1.tar.gz
Puppet-2.7.21.tar.gz

3.      实验步骤:

基本安装操作:

1.搭建puppetmaster

1)规划服务器主机名

wKiom1bD9qXQFx9XAAA7JY2FfOA170.jpg

wKiom1bD9rXgkIJzAAA3hWcbtbo877.jpg

wKioL1bD9yjgMd5iAAAOkHPZRx4935.jpg

添加以下几行:

wKiom1bD9tGSa5ZbAAAbo-KDKbk285.jpg

wKioL1bD90HDweuFAABKE39woQE381.jpg
2).服务器时间同步
由于facter使用SSL证书,依赖时间同步,所以需要搭建NTP服务器。
wKioL1bD91LSFmdYAAB7HybMUVA003.jpg
wKiom1bD9v2A6i8tAAAN_OayE4k555.jpg

添加两行:  其作用是当/etc/ntp.conf中定义的server都不可用时,将使用local时间作为NTP服务提供给NTP客户端。
wKiom1bD9wujhSFlAAAQ6TEb2Tg188.jpg
wKioL1bD94PjY1szAACHfOPWnug193.jpg
Puppet作为NTP客户端的配置
wKioL1bD95fCRIFcAAAzRBzj8oA595.jpg
安装ruby
wKiom1bD90Ohw9zWAAAzaYiJuo0849.jpg
wKioL1bD97qCx3udAAAht2J2SDQ658.jpg
安装完成后检查ruby版本。
wKiom1bD92ej4zJqAABDwFLBp4E561.jpg
Puppet、facter 安装
wKioL1bD993ztiF6AAAtuG6Tt34938.jpg
通过facter工具分析检测客户端传输过来的信息。
安装facter:
wKiom1bD94mRIZLgAABplXWQ8hM221.jpg
解压源码包
wKioL1bD-ADzZldeAAAb5AZlXSI700.jpg
编译安装源码包
wKiom1bD97mTGBfxAABB9Y6uTrA937.jpg
安装puppet:
解压源码包:
wKiom1bD99GjgipIAAAkFjYdxi8550.jpg
编译安装源码包:
wKioL1bD-EagOSdbAABdp84K9Uo798.jpg
复制配置文件:
wKiom1bD9_vQwDaHAACBUhkkgI4718.jpg
修改文件属性:
wKiom1bD-A2i7VMBAAAxr1tZwAw063.jpg
wKioL1bD-KjzAQabAABbAEEVPSU676.jpg
Puppet服务证书请求与签名:
生产环境中iptables默认是全部关闭的
Master端配置:
wKiom1bD-FuzFe9fAABtNq64Kho426.jpg
修改配置文件:
wKioL1bD-N6BFIhAAAAmrLvtqU8867.jpg
在【main】标题下添加以下一行,配置服务器模块路径:
wKiom1bD-IyRrydWAAAfCjxf7_o897.jpg
启动Puppet主程序
wKiom1bD-JiDAF14AAAvAxPeAT0797.jpg
2.搭建puppetclient
首先配置puppetclient1,步骤如下:
1) 规划服务器主机名
wKioL1bD-suBu0MMAAA0KAJSNGY999.jpg
wKioL1bD-tagVc1-AAAu5xpKZOs950.jpg
wKiom1bD-nyjdUO7AAAOpbat_V4212.jpg
添加以下几行:
wKioL1bD-u2RUGnUAAAcFr6ATBk691.jpg
wKiom1bD-pnwAU23AABT2AIZYzc788.jpg
确保可以用通过域名ping通Puppetmaster,
wKioL1bD-yvQpox0AACIRRegwgs228.jpg
2)服务器时间同步
wKiom1bD-tiC1arvAAAr5YUQCAA351.jpg
wKiom1bD-uixBtAZAABX3z231Ek400.jpg
3)安装ruby
wKioL1bD-12wgqidAAA0Eki_DwI853.jpg
wKiom1bD-wjwRRXHAAAi8qxbg80344.jpg
wKioL1bD-3jzXul4AABFj98MguA597.jpg
4) puppet、facter安装
wKiom1bD-yLhor9KAAAyTprgMxU159.jpg
通过facter工具分析检测客户端传输过来的信息。
安装facter:
解压源码包:
wKioL1bD-5Ox3KdjAAAfRLoDDMw939.jpg
编译安装源码包:
wKiom1bD-zrjJdyuAABPPtvVqV4727.jpg
安装puppet:
wKiom1bD-1rDAt7JAAAgDiPthrQ563.jpg
编译安装源码包:
wKioL1bD-83A93BeAABkVLRkMgo889.jpg
复制配置文件:
wKiom1bD-3qSQCH5AABuEOISctU705.jpg
修改文件属性:
wKiom1bD-4nixVq4AAAyA7ptVkU255.jpg
Puppet服务证书请求与签名:
生产环境中iptables默认是全部关闭的
wKioL1bD-_uCoEi4AABtE1j6lNI590.jpg
修改配置文件:
wKiom1bD-6jyka3TAAAnCfMOm94683.jpg
在【main】标题下添加以下一行,设置服务器的域名:

wKioL1bD_BvRi5ZaAAAHyK4K31I000.jpg
Puppetclient2的配置过程和puppetclient1的类似,注意将主机名改为client2.
wKioL1bD_DuCdo4LAABB6_HKEW8761.jpg
wKioL1bD_FrST0cGAAAsMcVg6Aw202.jpg
下面的操作都跟client1 一样,这里我就不截图了。
Client端:
分别在puppetclient1和puppetclient2 上进行注册。
wKiom1bD_A2yEh_8AACZB0glhIo354.jpg
wKioL1bD_H-TkA6sAACDjuNYMec676.jpg
此时可以按ctrl+c 结束,因为puppet一直在等待任务,但是已经从server查看到申请信息。
wKioL1bD_JGA_DTlAABrRFGlk0M762.jpg
将未注册的客户端进行注册:
wKioL1bD_KSzzvxIAAAdy6q-vkc516.jpg
可以通过目录去查看已经注册的客户端:
wKiom1bD_FSjbEblAAB5AIMd28k228.jpg
此时客户端已经完成证书的请求与签名。
3.配置实例:
1)配置一个测试节点:
节点信息:/etc/puppet/manifests/nodes
模块信息:/etc/puppet/modules/
为了保护Linux的ssh端***破,批量修改客户端的sshd端口,将端口22修改为9922,并实现重启工作。
Master端:
1)创建需要的必要目录:
wKioL1bD_ObirOIkAABj6ZJhZjI795.jpg
2)修改权限:
wKiom1bD_JOQ7am8AAAr6LtgM-Q835.jpg
此时/etc/puppet/modules/ssh/ 目录下结构如下:
wKioL1bD_QaTgWAOAACBjGugKhU209.jpg
3)创建模块配置文件install.pp
wKiom1bD_LGjnRkXAAAqzNseQAM594.jpg
输入以下信息(首先确定客户端安装ssh服务)
wKiom1bD_MHhA7nkAAAgek-i1OI928.jpg
4)创建模块配置文件config.pp
wKioL1bD_TLQ7gP7AAAht1_BQDc279.jpg
输入以下信息配置需要同步的文件
wKiom1bD_OLiGP4aAAEJDWsIrOU708.jpg
5)创建模块配置文件service.pp
wKioL1bD_Vfh8zoPAAAkqRU0NUE023.jpg
wKiom1bD_QCQbRwNAACd2b9VB5w831.jpg
6)创建模块主配置文件init.pp
wKioL1bD_Xbg5ycBAAAn-bF7df4369.jpg
wKiom1bD_SGy3TkdAAA0J2jwSdI935.jpg
此时/etc/puppet/modules/ssh/manifests/目录下有4个文件。
wKioL1bD_cHDGeFyAACUWNoJ_9c597.jpg
7)建立服务器端ssh统一维护文件
由于服务器端和客户端的sshd_config文件默认一样,此时将服务器端/etc/ssh/sshd_config复制到模块默认路径。
wKioL1bD_c3SisbeAAAxFiSuKiE926.jpg
修改权限
wKiom1bD_XWgFAKyAAAzZo_ASog673.jpg
8)创建测试节点配置文件,并将ssh加载进去
wKioL1bD_fHy48zvAAAqcrw9WZU195.jpg
wKiom1bD_aSCluJoAAApAE82FWk355.jpg
9)将测试节点载入puppet ,修改site.pp
wKioL1bD_hmgcwk-AAAwor2BVuc892.jpg
wKiom1bD_cKjkdJ-AAAcRVwf2hc951.jpg
10)修改服务器端维护的sshd_config配置文件
wKiom1bD_c-R6XqdAAAskschuXE607.jpg
wKioL1bD_kORLQPxAAAZdVgdsOY969.jpg
11)重启puppet
wKiom1bD_erQC7cFAABIJxKKomQ964.jpg
在client1 客户端主动拉取:(192.168.10.15)
wKioL1bD_rKBxJ4wAAAfBqYoFZ4711.jpg
此时在client1端已经执行成功,验证如下:
wKiom1bD_luD8hrYAAAzhyXYbvg884.jpg
wKioL1bD_tCBDCdWAAAXydMw3q4133.jpg
查看服务器ssh服务是否重启,端口是否生效。
wKiom1bD_niw9dJ2AABjCQ_P01E525.jpg
服务器推送同步:
当大规模部署时采用服务器推送模式
Client2端:
1)修改配置文件
wKioL1bD_uvy6otaAAAn21X-DpI540.jpg
最后一行添加:
wKioL1bD_vaDGfNcAAAPErLWTGQ048.jpg
wKiom1bD_p-SaN2hAAA8Hqzoxd8149.jpg
最后一行添加:
wKiom1bD_q6CF-dTAAAQeJBXMTI693.jpg
2)启动puppet客户端
wKioL1bD_yCi-YeUAAA1FAXPuY0666.jpg
wKioL1bD_zLgrAVRAAA8gi-c0wA835.jpg
wKioL1bD_0Kwgz5wAAAXz33bJWU111.jpg
确认启动ssh服务
wKiom1bD_vHT5MbgAABS33bAPDA597.jpg
Master端:
3)开始往客户端推送:
wKioL1bD_2KxY-AqAACA01eFbro438.jpg
4)验证结果
wKiom1bD_w6xE6S6AAAS6uyAKQo079.jpg
查看服务器ssh服务是否重启,端口是否生效。
wKioL1bD_4GxGAe3AABX7uWS2TE438.jpg

实验总结:
1.puppet可以在单机上使用,也可以在C/S结构上使用,在大规模使用puppet的情况下,通常使用C/S结构,在这种结构中puppet客户端只运行puppetclient,puppet服务器端只运行puppetmaster。
2.Facter工具使用SSL证书依赖时间同步,需要搭建NTP服务器。
3.通过一个配置实例批量修改客户端sshd端口。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-179418-1-1.html 上篇帖子: Puppet SSL证书协商错误 记录 下篇帖子: puppet 安装配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表