基本信息
- 原书名:Pro Puppet
- 原出版社: Apress
- 作者: (澳)James Turnbull (美)Jeffrey McCune
- 译者: 高永超
- 丛书名: 图灵程序设计丛书
- 出版社:人民邮电出版社
- ISBN:9787115279514
- 上架时间:2012-5-23
- 出版日期:2012 年5月
- 开本:16开
- 页码:265
- 版次:1-1
- 所属分类:计算机 > 计算机组织与体系结构 > 服务器
编辑推荐
内容丰富精彩,结构合理,概念清晰易懂
且涵盖大量为Puppet及配置管理提供支持的工具
对于初学者或者是专业人士来说此书不仅仅是参考手册亦是一部极好的教材
内容简介
作译者
Jeffrey McCune Puppet社区成员,开源软件的支持者,经常在苹果的世界开发者大会、Macworld、Open Source Bridge、Velocity等大会上发言。现任职于Puppet Labs,致力于编写代码和帮助客户改进他们的Puppet部署。Jeff目前居住在奥勒冈州的波特兰,喜爱钻研微控制器、动画、摄影、音乐,爱好徒步旅行以及沙滩长途步行。
高永超 专职SA,喜欢钻研架构和运维相关知识,有两年Puppet使用经验,现任豆瓣运维工程师。网络ID为flex,邮箱flex@flib.me。
目录
第1章 开始使用puppet 1
1.1 什么是puppet 1
1.1.1 部署 2
1.1.2 配置语言和资源抽象层 3
1.1.3 事务层 5
1.2 选择正确的puppet版本 5
1.3 我能混用puppet的版本吗 6
1.4 安装puppet 7
1.4.1 在red hat企业版linux和fedora上面安装puppet 7
1.4.2 在debian和ubuntu上安装puppet 8
1.4.3 在opensolaris上安装puppet 9
1.4.4 从源码安装puppet 9
1.4.5 在微软windows系统上安装puppet 10
1.4.6 在其他平台上安装puppet 10
1.5 配置puppet 11
1.5.1 site.pp文件 12
1.5.2 配置防火墙 13
1.5.3 启动puppet master 13
1.6 连接第一个agent 15
前言
—— Luke Kanies,Puppet开发者
系统管理员和操作人员的生活往往都离不开解决一系列重复性任务:配置主机、创建用户以及管理应用程序、守护进程和服务。通常在一台主机的生命周期内,这些任务会被重复很多次,从搭建系统到服务器下架,以及为了修正错误或进行整理而对配置进行添加或修改。
这些重复性任务的通常解决方案是试图使用脚本和工具进行自动化操作,这就需要开发定制的脚本和程序。刚成为系统管理员时,我编写了一系列控制语言(CL)和Rexx脚本来管理和操作不同类型的基础设施。这些脚本不仅复杂而且基本没有文档,完全是根据我自己的工作环境定制的。
我的经历比较有代表性,为了让工作更轻松,以便把更多的时间放在更有趣的项目和任务上(或者能早点去酒吧),自动化处理一些无聊和手工的任务是大家常用的应对之法。
在这些专门开发的脚本中,只有很少一部分会被发布、文档化或者重用。事实上,大部分定制脚本的版权取决于操作人员或者系统管理员所在的机构,并且随着工作的进行,这些脚本通常会被丢弃。这就导致了同样的工具被一次又一次地开发。甚至即使在同一个公司,如果前任的工作不合继任者的心意(有时候是因为太晦涩难懂),也会发生同样的情形。
这些定制的脚本和程序很少为了适应大型环境而进行扩展,并且在稳定性、适应性和功能上往往都存在很多问题。在多平台的环境下,这些脚本通常只能应用在一种目标系统上。这就导致了这样的情形:当需要一个创建用户的脚本时,BSD、Linux和Solaris都各自需要维护一个版本。你不得不消耗更多的时间和精力来编写和维护这些本是用来减少管理工作的工具。
当然还有其他一些途径,比如购买HP的Opsware、BMC的CONTROL-M、IBM的Tivoli套装工具或者CA的Unicenter等操作和配置管理工具。但是商业工具通常都有两个致命的问题:价格和适用性。尤其是价格方面,管理的平台和主机越多,价格就越高。在一个大的生产环境中,这些工具的许可费用可能达到数百万美元。
适用性也是一个主要问题。商业工具通常是不开源的,并且仅能使用它们提供的特性。这就意味着,如果你想扩展它们来对你的环境做一些定制什么的,就必须向别人申请为你开发一个新的特性。这可能会产生一段等待期,并带来相应的开销。考虑到组织中现存的大量各式各样的部署机制、平台、配置和应用,要找到一个可以完全适应自己环境的商业定制工具是非常困难的。
在内部开发和商业产品之外还有另一种选择:自由开源软件(FOSS)。自由并且开源的配置管理工具能带来两大好处:
它们开放并且可扩展;
它们是免费的!
使用FOSS产品,工具的源码就在你手上,你可以通过二次开发来增强或者调整它们。不用等待厂商来实现你需要的功能,也不需要为新特性和升级付费。作为用户和开发社区的一员,你可以分享对这个工具未来的想法。你和你的组织可以进而为这个想法作出自己的贡献。总之,你可以改变自己所用工具的发展方向,使其能够更灵活地适应你所在组织的需要。
就如刚刚提到的,获取任何一个工具时,需要着重考虑价格因素。有了自由开源软件,这就不再是问题。不用付出任何费用你就能获得软件以及它的源码。
当然,天下没有免费的午餐,这其中有什么奥妙呢?原来,不像商业软件,开源软件不能提供任何有保证的支持。但这并不意味着没有可用的支持:许多开源工具都拥有庞大和活跃的社区,社区成员通过邮件列表、论坛、Wiki和IRC等形式回答问题和提供帮助。
注意 包括Puppet在内的许多开源工具,同样有提供商业版本或者支持的机构。比如,本书的作者James Turnbull和合作者Jeff McCune都在Puppet Lab工作,该组织支持着Puppet的开发工作。
Puppet(http://www.puppetlabs.com/puppet)就是为了填补系统管理员、操作人员和开发人员使用的工具的缺口而诞生的。通过对基础设施进行更简单、容易和廉价的管理,来让这些人员的工作更加轻松。这本书将在介绍开源配置管理工具Puppet的同时,帮你熟悉Puppet的安装、配置以及如何将Puppet整合进你的环境。
致谢
我们需要感谢下面这些积极投入这个项目并提供宝贵见解的人们:
Dan Bode
媒体评论
——Sean P. Hull,MySQL、 Linux、EC2领域专家
“无论对初学者还是专业人士,本书都可作为Puppet的极好教材,而不仅仅是‘参考手册’。本书结构非常合理,介绍的概念清晰易懂,在阅读过程中时有惊喜。里面完全没有机械枯燥的介绍,而是一步步引领我沉醉于内容当中,一如沉醉于Puppet 本身。”
——Itamar Hassin,软件项目经理