阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Puppet配置小结

381次阅读
没有评论

共计 5706 个字符,预计需要花费 15 分钟才能阅读完成。

Puppet 是一种 Linux、Unix、windows 平台的集中配置管理系统,使用自有的 Puppet 描述语言,可管理配置文件、用户、cron 任务、软件包、系统服务等。Puppet 把这些系统实体称之为资源,Puppet 的设计目标是简化对这些资源的管理以及妥善处理资源间的依赖关系。

Puppet 系统架构

Puppet 是开源的基于 Ruby 的系统配置管理工具,puppet 是一个 C / S 结构, 当然, 这里的 C 可以有很多, 因此, 也可以说是一个星型结构. 所有的 puppet 客户端同一个服务器端的 puppet 通讯. 每个 puppet 客户端每半小时 (可以设置) 连接一次服务器端, 下载最新的配置文件, 并且严格按照配置文件来配置服务器. 配置完成以后,puppet 客户端可以反馈给服务器端一个消息. 如果出错, 也会给服务器端反馈一个消息。

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 配置小结

图 1 Puppet 工作流程

 

1. 客户端 Puppetd 向 Master 发起认证请求,或使用带签名的证书。

2. Master 告诉 Client 你是合法的。

3. 客户端 Puppetd 调用 Facter,Facter 探测出主机的一些变量,例如主机名、内存大小、IP 地址等。Puppetd 将这些信息通过 SSL 连接发送到服务器端。

4. 服务器端的 Puppet Master 检测客户端的主机名,然后找到 manifest 对应的 node 配置,并对该部分内容进行解析。Facter 送过来的信息可以作为变量处 理,node 牵涉到的代码才解析,其他没牵涉的代码不解析。解析分为几个阶段,首先是语法检查,如果语法错误就报错;如果语法没错,就继续解析,解析的结 果生成一个中间的“伪代码”(catelog),然后把伪代码发给客户端。

5. 客户端接收到“伪代码”,并且执行。

6. 客户端在执行时判断有没有 File 文件,如果有,则向 fileserver 发起请求。

7. 客户端判断有没有配置 Report,如果已配置,则把执行结果发送给服务器。

8. 服务器端把客户端的执行结果写入日志,并发送给报告系统。

 

部署规划

服务器 192.168.137.10 Hehe

客户端 192.168.137.101 localhost.localdomain

安装

因为是基于 ruby 的,所以需要安装 ruby need 的环境(客户端 / 服务器端均需要安装)

libselinux-utils

ruby-libs

ruby

libselinux-ruby

augeas-libs

ruby-shadow

ruby-augeas

yum install dmidecode// 注释:centOS6 需要装

yum install pciutils// 注释:centOS6 需要装

facter,用来采集本机数据的

上述软件直接采用 yum 安装就好

安装完必备环境后,就可以安装 puppet 了。

可以源码安装,也可以 rpm 安装,客户端只需安装 puppet,服务器端还需要安装 Puppet-server。

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-06/103129p2.htm

配置

配置主机名(服务器端,客户端同样处理)

vi /etc/sysconfig/network

Puppet 配置小结

hostname 设置成自己想要的,一般情况不动就可以

可以运行 hostname 查看。

vi /etc/hosts,把服务器客户端的 ip 以及对应的主机名都加进去。

Puppet 配置小结

呵呵。。。这样就配完了。。我一开始还错了。

接下来就是启动和链接了。

服务器端启动

/etc/init.d/puppetmasterd start

检查

netstat -anpt | grep 8140

Puppet 配置小结

客户端启动

/etc/init.d/puppet start

检查

netstat -an | grep 8139

 

客户端向服务端申请证书

puppetd –test –server Hehe

info: Caching certificate for ca

info: Creating a new SSL certificate request for agent165.jiu.com

info: Certificate Request fingerprint (md5): BC:9C:93:4C:8E:71:8A:EB:E0:1E:F0:99:DC:37:BA:E5

Exiting; no certificate found and waitforcert is disabled

服务端审批证书

puppetca -s localhost.localdomain

这样就好了。

 

下面测试

puppet 同步管理功能测试。puppet 文件需要在 /etc/puppet/manifests/site.pp 中写任务。

[root@master ~]# cd /etc/puppet/manifests/

[root@master manifests]# more site.pp

node default{

file {“/tmp/Puppet_test.txt”:

content => “My english name is Taokey.”;}

}

重新启动下 puppet。

[root@master ~]# /etc/init.d/puppetmasterd restart

停止 puppetmaster:[确定]

启动 puppetmaster:[确定]

[root@master ~]# chmod +x /etc/puppet/manifests/site.pp

[root@master ~]# /etc/puppet/manifests/site.pp

/etc/puppet/manifests/site.pp: line 1: node: command not found

/etc/puppet/manifests/site.pp: line 2: file: command not found

/etc/puppet/manifests/site.pp: line 3: syntax error near unexpected token `}’

/etc/puppet/manifests/site.pp: line 3: `content => “My english name is Taokey.”;}’

在客户端同步任务,默认是半个小时同步一次。

[root@agent165 ~]# puppetd –test –server master.jiu.com

info: Caching catalog for agent165.jiu.com

info: Applying configuration version ‘1398159168’

notice: /Stage[main]//Node[default]/File[/tmp/Puppet_test.txt]/content:

— /tmp/Puppet_test.txt 2014-04-22 17:11:09.000000000 +0800

+++ /tmp/puppet-file.28330.0 2014-04-22 17:32:33.000000000 +0800

@@ -1 +1 @@

– taokey are handsome

\ No newline at end of file

+My english name is Taokey.

\ No newline at end of file

 

info: FileBucket adding {md5}f8b6f91540f80377f00e8e73bed18992

info: /Stage[main]//Node[default]/File[/tmp/Puppet_test.txt]: Filebucketed /tmp/Puppet_test.txt to puppet with sum f8b6f91540f80377f00e8e73bed18992

notice: /Stage[main]//Node[default]/File[/tmp/Puppet_test.txt]/content: content changed ‘{md5}f8b6f91540f80377f00e8e73bed18992’ to ‘{md5}4e616a37997cf68dd0f15702af9ceca1’

notice: Finished catalog run in 0.14 seconds

查看 agent165 这台服务器是否生成相应文件。

[root@agent168 ~]# more /tmp/Puppet_test.txt

My english name is Taokey.

到此为止,实验结束。

Puppet 的详细介绍:请点这里
Puppet 的下载地址:请点这里

Puppet 是一种 Linux、Unix、windows 平台的集中配置管理系统,使用自有的 Puppet 描述语言,可管理配置文件、用户、cron 任务、软件包、系统服务等。Puppet 把这些系统实体称之为资源,Puppet 的设计目标是简化对这些资源的管理以及妥善处理资源间的依赖关系。

Puppet 系统架构

Puppet 是开源的基于 Ruby 的系统配置管理工具,puppet 是一个 C / S 结构, 当然, 这里的 C 可以有很多, 因此, 也可以说是一个星型结构. 所有的 puppet 客户端同一个服务器端的 puppet 通讯. 每个 puppet 客户端每半小时 (可以设置) 连接一次服务器端, 下载最新的配置文件, 并且严格按照配置文件来配置服务器. 配置完成以后,puppet 客户端可以反馈给服务器端一个消息. 如果出错, 也会给服务器端反馈一个消息。

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 配置小结

图 1 Puppet 工作流程

 

1. 客户端 Puppetd 向 Master 发起认证请求,或使用带签名的证书。

2. Master 告诉 Client 你是合法的。

3. 客户端 Puppetd 调用 Facter,Facter 探测出主机的一些变量,例如主机名、内存大小、IP 地址等。Puppetd 将这些信息通过 SSL 连接发送到服务器端。

4. 服务器端的 Puppet Master 检测客户端的主机名,然后找到 manifest 对应的 node 配置,并对该部分内容进行解析。Facter 送过来的信息可以作为变量处 理,node 牵涉到的代码才解析,其他没牵涉的代码不解析。解析分为几个阶段,首先是语法检查,如果语法错误就报错;如果语法没错,就继续解析,解析的结 果生成一个中间的“伪代码”(catelog),然后把伪代码发给客户端。

5. 客户端接收到“伪代码”,并且执行。

6. 客户端在执行时判断有没有 File 文件,如果有,则向 fileserver 发起请求。

7. 客户端判断有没有配置 Report,如果已配置,则把执行结果发送给服务器。

8. 服务器端把客户端的执行结果写入日志,并发送给报告系统。

 

部署规划

服务器 192.168.137.10 Hehe

客户端 192.168.137.101 localhost.localdomain

安装

因为是基于 ruby 的,所以需要安装 ruby need 的环境(客户端 / 服务器端均需要安装)

libselinux-utils

ruby-libs

ruby

libselinux-ruby

augeas-libs

ruby-shadow

ruby-augeas

yum install dmidecode// 注释:centOS6 需要装

yum install pciutils// 注释:centOS6 需要装

facter,用来采集本机数据的

上述软件直接采用 yum 安装就好

安装完必备环境后,就可以安装 puppet 了。

可以源码安装,也可以 rpm 安装,客户端只需安装 puppet,服务器端还需要安装 Puppet-server。

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-06/103129p2.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计5706字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7979339
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地

把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地

把小米云笔记搬回家:飞牛 NAS 一键部署,小米云笔记自动同步到本地 大家好,我是星哥,今天教大家在飞牛 NA...
零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face 免费服务器 +Docker 快速部署 HertzBeat 监控平台 ...
升级自动部署更新SSL证书系统、申请godaddy的APIKEY

升级自动部署更新SSL证书系统、申请godaddy的APIKEY

升级自动部署更新 SSL 证书系统、申请 godaddy 的 APIKEY 公司之前花钱购买的 ssl 证书快...
星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

星哥带你玩飞牛NAS-16:不再错过公众号更新,飞牛NAS搭建RSS

  星哥带你玩飞牛 NAS-16:不再错过公众号更新,飞牛 NAS 搭建 RSS 对于经常关注多个微...
你的云服务器到底有多强?宝塔跑分告诉你

你的云服务器到底有多强?宝塔跑分告诉你

你的云服务器到底有多强?宝塔跑分告诉你 为什么要用宝塔跑分? 宝塔跑分其实就是对 CPU、内存、磁盘、IO 做...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站 - 手机博物馆 -CHAZ 3D Experience 一句话介绍:一个用 3D 方式重温...
颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

  颠覆 AI 开发效率!开源工具一站式管控 30+ 大模型 ApiKey,秘钥付费 + 负载均衡全...
仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

还在忍受动辄数百兆的“全家桶”监控软件?后台偷占资源、界面杂乱冗余,想查个 CPU 温度都要层层点选? 今天给...
手把手教你,购买云服务器并且安装宝塔面板

手把手教你,购买云服务器并且安装宝塔面板

手把手教你,购买云服务器并且安装宝塔面板 前言 大家好,我是星哥。星哥发现很多新手刚接触服务器时,都会被“选购...
300元就能买到的”小钢炮”?惠普7L四盘位小主机解析

300元就能买到的”小钢炮”?惠普7L四盘位小主机解析

  300 元就能买到的 ” 小钢炮 ”?惠普 7L 四盘位小主机解析 最近...