内容简介
Puppet领域的经典之作,运维专家多年一线经验结晶,51CTO技术社区强烈,新浪研发中心平台架构部总监童剑、运维专家田逸、中国开源社区ChinaUnix创始人之一南非蜘蛛、OpenStack基金会董事程辉等业界专家联袂。本书详细讲解了Puppet的功能和使用方法,深入剖析了Puppet的工作原理,系统总结了Puppet的使用技巧,包含大量来自一线的实战案例和实践。
全书一共20章,共分为四部分:准备篇(第1~4章)介绍了Puppet用途、组织结构、工作原理、核心配置文件、各种平台下的安装与配置,以及它的运行环境,是使用Puppet前必须做好的准备工作;基础篇(第5~10章)详细讲解了Puppet的理论知识和功能使用,Puppet的语法与命令、资源、模块、类、模板、节点管理,以及Facter、数组、函数、变量和标签;实战篇(第11~13章)通过几个经典案例,包括大规模Nginx集群的部署方案、分布式监控系统部署方案、OpenStack快速部署方案等,使读者能快速将Puppet运用到实践中;进阶篇(第14~20章)综合讲解了Puppet的扩展模式、版本控制、报告系统、控制台、扩展工具及MCollective,让读者了解一个完整的Puppet生产流程。
目录
前 言
第一部分 准备篇
第1章 认识Puppet
1.1 Puppet的起源与发展现状
1.1.1 什么是Puppet
1.1.2 Puppet起源与发展
1.1.3 版本语言特征
1.1.4 命令差异
1.1.5 Puppet 3.0新特性
1.2 为什么要使用Puppet
1.2.1 都有谁在使用Puppet
1.2.2 常见集中化管理工具对比
1.2.3 Puppet的理由
1.3 Puppet的作用和
1.3.1 为什么要有自己的语言
1.3.2 为什么是Ruby
1.3.3 管理任何机器
1.4 Puppet组织结构
1.5 Puppet工作原理
1.5.1 Puppet基本结构
1.5.2 Puppet是如何工作的
1.5.3 Puppet数据流
1.5.4 文件结合
1.5.5 详细交互过程
1.5.6 安全与认证
1.6 Puppet核心配置文件详解
1.6.1 主配置文件puppet.conf
1.6.2 主机配置文件site.pp
1.6.3 认证与安全配置文件
1.6.4 客户端自动认证配置
1.6.5 报告系统配置
1.6.6 文件系统配置文件
1.7 本章小结
第2章 Puppet安装与配置
2.1 Puppet对各系统平台的支持
2.2 Puppet对Ruby的支持
2.3 Puppet的安装步骤
2.4 在Linux下安装
2.4.1 包管理器方式安装
2.4.2 从源代码进行安装
2.4.3 从Git版本库进行安装
2.4.4 通过Gems进行安装
2.5 在Mac OS X下安装
2.5.1 通过二进制发布包进行安装
2.5.2 从Git版本库进行安装
2.5.3 从Ports仓库进行安装
2.6 配置Puppet
2.7 在Windows下安装与使用
2.7.1 包管理器方式安装
2.7.2 在Windows下使用Puppet
2.7.3 Puppet在Windows下的功能
2.8 如何升级
2.9 本章小结
第3章 创建你的第一个Puppet配置
3.1 配置一个测试节点
3.2 检测你的配置文件
3.3 客户端运行配置
3.4 查看运行结果
3.5 增加httpd模块
3.6 本章小结
第4章 Puppet运行环境
4.1 服务器端配置
4.2 客户端配置
4.3 如何运用环境配置
4.4 本章小结
第二部分 基础篇
第5章 Puppet语法与命令详解
5.1 Puppet的命名规范
5.1.1 资源
5.1.2 属性
5.1.3 类
5.1.4 模块
5.1.5 节点
5.2 主机、模块和类的命名
5.2.1 主机的命名
5.2.2 模块的命名
5.2.3 类的命名
5.3 资源、变量、参数和标签的命名
5.3.1 资源的命名
5.3.2 变量的命名
5.3.3 参数的命名
5.3.4 标签的命名
5.4 Puppet语法风格
5.4.1 间距、缩进和空白字符
5.4.2 注释
5.4.3 变量的引用
5.4.4 资源
5.4.5 条件语句
5.4.6 类
5.5 检查命令的用法
5.5.1 语法检查
5.5.2 代码调试
5.6 Puppet命令详解
5.6.1 Puppet常用命令
5.6.2 帮助命令详解
5.6.3 模块和不常用命令
5.7 本章小结
第6章 Puppet资源详解
6.1 什么是资源
6.1.1 图解核
摘要与插图
第一部分准 备 篇
Puppet可谓是配置管理工具中的旗舰产品,有别于chef等其他配置管理工具,它可以使系统管理员的工作变得更轻松,从而提升工作效率,并且只需要维护简单的关系就能掌握一切。使用Puppet,我们可以从系统安装、配置管理、系统监控来实现运维体系的一体化、流水线化、产品化。通过简单的后台系统我们就可以完成所有的动作,并且能查看机器的进度与当前状态。是不是觉得这项工作让人振奋呢?那就让我们一起探究Puppet的奥秘吧!
本篇主要是为了更好地学习和使用Puppet而做的准备。我们通过第1章来了解Puppet,看看它的发展历程,重点掌握它的工作原理;通过第2章对安装、配置Puppet的讲解进一步加深对Puppet工作原理的理解;通过第3章的实例,创建一个属于自己的配置,进而掌握基本的配置方法;通过第4章学习Puppet的几种工作环境,我们以后能够更好地利用Puppet实现不同环境的配置管理。
第1章
认识Puppet
本章先介绍什么是Puppet,为什么它具有这么的特征,以及它的发展历程。随后将Puppet和当前主流开源配置管理工具进行对比,阐述为什么要使用Puppet。了解Puppet的组织结构并掌握Puppet的工作原理,这是本章的重点,希望读者多次阅读这部分内容,以便理解。Puppet版本为3.0(截至2013年9月),不同版本之间新的特性及是否可以混合使用,以及配置文件的相关知识,这些都是本章将要介绍的内容。
……