《Puppet实战手册》——1.5 创建去中心化Puppet架构

1.5 创建去中心化Puppet架构

有些系统分散管理时会工作得更好。

使用Puppet最常见的方法就是运行一台Puppet Master服务器,Puppet客户端连接到Puppet Master并接收各自的配置清单。然而,Puppet Master并不是必需的,可以直接在配置清单文件上运行puppet apply命令来应用变更。

ubuntu@cookbook:~/puppet$ puppet apply manifests/site.pp
Notice: Finished catalog run in 0.08 seconds

换句话说,如果能安排适当的清单文件分发至客户端上,就可以使用Puppet直接执行而不需要通过Puppet Master来控制。这将消除由于仅有一台主服务器导致的性能瓶颈,也消除了单点故障。同时,这也避免了添加新的客户端时颁发SSL签名证书的问题。

有很多方法可以将清单文件分发至客户端,但是Git(或其他版本控制系统)为此做了大量工作。用户可以在本地副本中编辑清单,然后提交至Git,并推送至中心仓库。在那里,它们会自动分发至客户端。

准备工作
如果Puppet配置清单没有存放在Git中,参考上面步骤将清单加入Git中管理。

此时,需要第二台机器来检出Puppet仓库的副本。如果使用EC2实例,则创建另一个实例,并给它取个主机名,如cookbook2。

操作步骤
具体步骤如下。

1. 在新机器上检出GitHub仓库。

ubuntu@cookbook2:~$ git clone
  git@github.com:bitfield/cookbook.git puppet
Cloning into 'puppet'...
remote: Counting objects: 8, done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 8 (delta 0), reused 5 (delta 0)
Receiving objects: 100% (8/8), done.

2. 参照下面的内容,修改manifests/nodes.pp文件:

node 'cookbook', 'cookbook2' {
 file { '/tmp/hello':
  content => "Hello, world\n",
 }
}

3. 运行以下命令:

ubuntu@cookbook2:~/puppet$ sudo puppet apply manifests/site.pp
Notice: /Stage[main]//Node[cookbook2]/File[/tmp/hello]/ensure:
defined content as '{md5}a7966bf58e23583c9a5a4059383ff850'
Notice: Finished catalog run in 0.05 seconds

工作原理
新机器上已经创建了一个Puppet仓库的副本。

ubuntu@cookbook2:~$ git clone git@github.com:bitfield/cookbook.git puppet

在运行Puppet前,必须首先在配置清单中针对cookboo2创建节点声明。

node 'cookbook', 'cookbook2' {
 ...
}

现在应用这些配置清单,让它们生效。

ubuntu@cookbook2:~/puppet$ sudo puppet apply manifests/site.pp
Puppet找到cookbook2的节点声明,并应用与之前用于cookbook相同的配置清单:

Notice: /Stage[main]//Node[cookbook2]/File[/tmp/hello]/ensure:
 defined content as '{md5}a7966bf58e23583c9a5a4059383ff850'

更多参考
此处已经将Puppet基础设施从一台机器扩展到了另外一台,现在可以将其扩展到任意多台。只需要检出Git仓库,并执行puppet apply命令。

这是一个非常好的方法,不需要复杂的配置,也不用多余的机器作为Puppet Master,就可以将现在的机器交由Puppet管理。笔者的很多客户都已经使用了这种基于Git的基础设施,它简单、易于扩展和维护。

需要考虑的一个改进就是要让每台机器自动从GitHub拉取修改并使用Puppet应用这些修改。然后要做的就只是推送变更至GitHub,变更的内容就会在某一个时间部署至所有Puppet管理的机器。接下来,读者将在下一节看到如何做到这一点。

时间: 2024-12-11 04:07:50

《Puppet实战手册》——1.5 创建去中心化Puppet架构的相关文章

《Puppet实战手册》——导读

** 前言 **IT运维领域正在进行一场革命.新一代的配置管理工具可以在几秒内完成大量服务器的构建(配置)和整个网络自动化.为了充分利用云计算的强大功能,并且建立可靠.可扩展.安全.高性能的系统,拥有Puppet这样的工具是必不可少的.本书不仅讲解了Puppet的基础知识,而且深入探讨了Puppet的所有强大功能,详细展示了如何解决现实中的各种问题和应用场景.每一步操作都完整地展示了需要录入的命令,并且每一个技巧都有完整的代码示例. 本书带领读者从Puppet的基本知识开始,完整.专业地讲解Pu

《Puppet实战手册》——第1章 Puppet基础设施 1.1 简介

第1章 Puppet基础设施 未来计算机可能只有1000个真空管,而且只有1.5吨重. --<大众机械>(Popular Mechanics),1949 本章内容包括: 安装Puppet创建一个配置清单利用Git管理配置清单创建去中心化Puppet架构编写papply脚本使用cron运行Puppet利用Rake部署变更利用Rake引导Puppet运行利用Git钩子自动进行语法检查 1.1 简介 本书包含一些代表着Puppet社区认同的最佳实践的实例,一些可以帮助读者在工作中更容易使用Puppe

基于Ethereum &amp; IPFS的去中心化Ebay区块链项目开发实战

孔壹学院:国内区块链职业教育引领品牌,专注于区块链产品底层研发和职业教育培训,孔壹学院是一家集产品研发.外包服务.脱产班.周末班.企业内训.区块链人才服务提供商为一体的综合性区块链商学院. 官方网站:http://www.kongyixueyuan.com 黎跃春(微信:liyc1215):孔壹学院 . BloggerChain创始人,资深讲师,区块链.高可用架构师. 联系我们:微信:ershiyidianjian 参加Ebay项目线下周末班请点击周末班详情 目录 1. 介绍 1.1 eBay简

“去中心化”的破产 自媒体:狂欢的由来与变现

摘要: 在传统媒体推波助澜的注目礼下,自媒体这个概念终于火到不能再火,有人煞有介事的继续为其添砖加瓦,画了一张新浪潮模样的年表:2011微博年,2012微信年,2013自媒体年,言下之意 在传统媒体推波助澜的注目礼下,"自媒体"这个概念终于火到不能再火,有人煞有介事的继续为其添砖加瓦,画了一张新浪潮模样的年表:"2011微博年,2012微信年,2013自媒体年",言下之意是,有了微博和微信作为社交平台的数年蕴育,依附在上面的生产者终于迎来瓜熟蒂落的收割季了. 其实,

深度 | 区块链对人工智能的变革:去中心化将带来数据新范式

近年,从围棋到人类水平的语音识别,人工智能(AI)研究者终于在他们几十年一直努力探索的领域取得了突破.取得突破进展的关键一点是研究者们可以收集巨量的数据并「学习」这些数据,从而将错误率降低到可接受范围以内. 简而言之,大数据大为改观了人工智能的发展,将其推到一个几乎难以置信的高度. 区块链技术同样能够变革人工智能--当然以它自己的特定方式进行.部分将区块链用于人工智能方式目前还很单一,比如在人工智能模型上进行审计跟踪(audit trail).有些应用几乎是难以置信的,比如拥有自己的人工智能--

区块链创业者谈行业应用:“去中心化还早”

在日前于深圳举办的"中国区块链产业投资高端论坛"中,来自全国各地参加区块链创业项目路演的团队多达20家,而对于这个仍处于发展初期阶段的技术来说,到目前为止从来没有出现过一个大面积商用的应用,谈商业应用时还有很多问题,关于该技术的应用落地.它所谓的那些美好的特性能否顺利实现.如何实现等等--都还有待探索. 目前在金融业等实现了区块链商用的国内创业公司布比在与雷锋网(公众号:雷锋网)的分享中,对该技术应用的进展与局限进行了分析.布比以技术服务提供商的方式来帮助企业客户搭建私有链或联盟链,在

用区块链实现物联网网络的去中心化

试想当洗涤剂快用完时,洗衣机可以自动向京东下订单;联网的汽车,可以自动停靠到最近的停车位;生产机器的制造商知道您的机器何时需要订购零部件,而不用人为干涉. 所有这些情景--甚至更多--将由物联网实现.现在许多行业已经被大量联网设备颠覆了,越来越多的行业也会加入这场变革中. 物联网与其他技术(如机器学习)相结合时会有更多令人兴奋的应用.但是当前遇到的主要障碍是设备与设备之间以及设备与设备所有者之间的互动.目前物联网通信的模式无法解决这些挑战时,技术公司和研究者希望通过区块链技术解决这些问题,区块链

区块链对人工智能的变革:去中心化将带来数据新范式

近年,从围棋到人类水平的语音识别,人工智能(AI)研究者终于在他们几十年一直努力探索的领域取得了突破.取得突破进展的关键一点是研究者们可以收集巨量的数据并「学习」这些数据,从而将错误率降低到可接受范围以内. 简而言之,大数据大为改观了人工智能的发展,将其推到一个几乎难以置信的高度. 区块链技术同样能够变革人工智能--当然以它自己的特定方式进行.部分将区块链用于人工智能方式目前还很单一,比如在人工智能模型上进行审计跟踪(audit trail).有些应用几乎是难以置信的,比如拥有自己的人工智能--

漫游开放平台上线一周年 去中心化服务渐入佳景

中介交易 SEO诊断 淘宝客 云主机 技术大厅 最新消息,2009年7月7日,康盛创想(Comsenz)旗下的漫游(Manyou)开放平台上线一周年.在过去的一年中,漫游平台作为连接站长.开发者.网民的桥梁,打通了各方的需求,并且创新性的推出了漫游币在线支付业务,为网民提供了方便.快捷.安全的在线支付系统,同时也为站长和开发者提供了增加收入的机会.经过一年的积累,漫游平台上现在已经有超过13万个网站.数百个特色应用.以及数百个开发者或开发团队. 漫游(Manyou)开放平台上线一周年 2008年