正版二手书,欢迎选购
¥ 14.86 2.2折 ¥ 69 九品
库存4件
作者[美]小特雷弗A.罗伯茨
出版社机械工业出版社
ISBN9787111524786
出版时间2016-01
装帧平装
开本16开
定价69元
货号972072953523585031
上书时间2024-12-03
什么是DevOps?是可以从供应商那里买到,解决所有IT问题的产品吗?是分析师用来引起CIO注意的行业流行词吗?虽然IT社区对DevOps的介绍接近于大肆追捧,但那更多的是因为DevOps确实能够带来好处,而不仅仅只是行业的广告宣传。
DevOps这一术语指的是一组帮助各种规模的组织更快地从IT投资中获得价值的方法、理念和工具。这个词的确切含义是什么?想象一下,在你的组织中为了将软件项目从概念阶段、软件开发一直推进到生产部署,需要多少时间和过程?这个过程越长,IT组织向整个公司展示价值所需的时间就越长。由于技术无处不在,客户期待IT服务的交付像移动应用商店那么容易。他们不愿意为了一项功能的实现而等待数年,对客户的要求反应迟钝的公司难以获得长期的成功。
DevOps如何解决客户交付速度问题?例如,配置管理技术可以避免服务器配置漂移,加速在线购买新服务器处理客户请求快速增长的过程。持续集成可以确保自动化测试在开发者提交源代码时进行。这只是本书所讨论技术的两个例子。
网络规模IT组织(如Etsy、Netflix和Amazon Web Services)被视为DevOps的典范。但是,Gene Kim的DevOps企业峰会参与者的数量证明DevOps也能给传统IT组织带来价值。
所以,做好思想准备,DevOps正在来临。好消息是,你可以为所在IT组织DevOps行动的成功做出贡献。本书的目标不仅是介绍DevOps的概要思路,还将提供DevOps工具和技术的实例。
关于本书在我们的经验中,DevOps的概念和工具可以显著地改进IT运营。虽然Amazon和Rackspace等大型IT组织已经在它们的环境中实施DevOps并取得成效,但是许多企业级IT组织对DevOps实践仍处于熟悉阶段。
本书的目标是为读者提供上述IT组织获得成功所借助的DevOps工具的实操示例。
本书的读者本书是为具备VMware vSphere虚拟化管理程序(hypervisor)和Linux操作系统使用经验的系统管理员所写。我们将循序渐进地介绍DevOps从业者所使用软件解决方案的使用方法,每章都提供后续研究所需的额外资源。
本书内容本书介绍的主题从虚拟化专业人士如何获得DevOps实践知识的概述开始,然后讨论DevOps从业人员使用的各种工具。
第1章讨论DevOps的概念,包括这一术语的定义以及DevOps相关实践有助于IT组织成功的原因。
第2章介绍DevOps从业人员使用的一些流行工具。第3章准备建立测试环境,以使用本书中的示例代码。
第4~6章介绍Puppet配置管理解决方案,包括简介、多层次应用部署,以及Puppet与VMware vSphere服务器和虚拟机管理集成的介绍。
第7~9章介绍Chef配置管理解决方案,包括简介、常见系统管理任务,以及Chef和VMware vSphere环境管理集成的介绍。
第10章和第11章介绍Ansible配置管理和编排解决方案,包括这种技术和各种应用程序部署的基本知识。
第12章介绍PowerShell 预期状态配置(PowerShell Desired State Configuration,DSC)的基础知识,包括Microsoft Windows PowerShell这一新功能的架构和主要用例。为了阐述DSC的基本功能、解释组成该功能的不同组件,提供了样板代码。
第13章探索VMware管理员在其环境中实施PowerShell DSC的方法。本章包括专门针对VMware管理员(可能不是Windows系统管理员)使用DSC提供额外价值及能力的用例。本章讨论了不同的方法,相应地强调和讨论了每种方法的建议和局限。
第14章讨论对企业IT组织来说相对新颖的一种应用程序部署范型:Linux容器的使用。本章用实操示例讨论Docker容器管理系统的基础知识。
第15章进一步讨论Linux容器,介绍Google Kubernetes,这是一种在数据中心大规模管理容器的开源工具。
第16章描述如何安装、配置和使用Razor——一种全生命期自动配给工具,组合了安装、服务器管理和配置工具。
第16章详细介绍Razor的所有关键概念和组件,首先描述Razor的工作原理和入门使用方法。一旦了解了Razor的概念和结合DevOps工具用于自动化配给的方法,你就能够发现Razor的不同功能组件。最后,本章介绍了Razor的最优安装和配置方法。
第17章介绍Elasticsearch、Logstash和Kibana(ELK)栈。这些工具都可以单独使用,但是结合使用可以成为日志管理的完美组合。本章单独介绍每一种工具,以及如何组合它们、最大限度地利用它们的能力提升日志管理的效率。
第18章介绍用于持续集成的Jenkins,讨论如何在代码提交到源代码库之后自动交付。
第19章讨论VMware自身的DevOps倡议,包括VMware vRealize Automation与DevOps工具的集成,以及新的VMware vRealize Code Stream解决方案。
致 谢?Acknowledgements许多人对本书给予了帮助,我要感谢他们在任务完成中对我们的直接和间接影响:
感谢Gene Kim在忙于自己的著作(《The DevOps Handbook》)和DevOps企业峰会规划工作时抽出时间,指导本书的内容和写作过程的多个方面。
感谢Nick Weaver通过Razor方面的作品向VMware社区介绍Puppet,开启了我的DevOps之旅。
感谢VMware出版社的Joan Murray,他的有力支持推动了本书的写作。
感谢Kelsey Hightower在Linux容器及其大规模协调方面提供的专业知识。
感谢Aaron Sweemer提供了VMware内部的联络人,和本书的读者分享公司的DevOps愿景。
感谢我的合著者,感谢他们对我所领导的这一书籍项目的耐心和持续支持。
感谢Scott Lowe、Nick Silkey和Matt Oswalt为本书内容提供的宝贵反馈。
——Trevor Roberts,Jr.我要感谢在写作我自己的那部分内容时给我提供帮助的几个人。感谢Don Jones、Steven Murawski和Alan Renouf在我寻求VMware管理员可能从PowerShell DSC得到的益处时提供的重要指导。没有他们的深刻见解和观点,我可能仍然在实验室中苦苦思索。还要感谢Trevor Roberts,Jr.邀请我参加这个项目。最后,我要感谢VMware社区的大力支持和对本书的兴趣。希望你们和我一样喜欢这本书。
——Josh Atwell感谢开源社区,没有你们,我就不能拥有这么出色和令人惊异的工具。
——Egle Sigler首先,我要感谢Trevor Roberts,Jr.给我参与本书创作的机会。感谢《Promise Theory: Principles and Applications》的合著者Mark Burgess,Mark在书中介绍了当今配置管理背后的科学知识,其中许多都是我们日常使用的。最后,我对Chef的每个人都心存感激,在Chef社区中,我才能迸发出许多灵感。
——Yvo van Doorn
Trevor Roberts,Jr.,是VMware公司的高级技术市场经理。Trevor拥有CCIE数据中心认证,是VMware数据中心设计和管理集中化认证高级专家。业余时间,Trevor在http://www.VMTrooper.com通过vBrownBag Professional OpenStack和Professional VMware播客以及Twitter(@VMTrooper)分享对数据中心技术的认识。他对IT社区的贡献得到公认,被授予VMware vExpert、Cisco Data Center Champion和EMC Elect的称号。
Josh Atwell,是SolidFire的云架构师,专注于VMware和自动化解决方案。10年多的努力使他可以用少量代码通过各种自动化工具来完成自己的工作。Josh已经有了两个儿子,2015年年初,他和妻子Stephanie又生了一个女儿。他住在北卡罗来纳州的罗利,享受着和家人在一起的时间,他还喜欢高尔夫、有声读物和新的波本威士忌。Josh是虚拟化社区的活跃分子,是CIPTUG、VMUG和UCS等技术用户组的领导人,而且还和其他人一起合作,准备通过vBrownBag播客和虚拟设计大师竞赛追求专业上的发展。Josh还经常发表公开演讲,是Mastering vSphrer系列丛书的作者。他从不吝啬发表意见,在vtesseract.com上撰写博客,在Twitter(@Josh_Atwell)上也是三句话不离本行。
Egle Sigler(@eglute, anystacker.com),现为Rackspace的首席架构师。她在职业生涯初期是一位软件开发人员,至今仍有着所有编写、测试和部署代码的人所具有的弱点,因为她有机会从事所有这类工作。Egle的梦想是有朝一日,编写、测试和部署代码将成为无缝、轻松的过程,完全没有缺陷和挫折。Egle坚信,知识应该共享,并通过撰写本书、发表讲话和会议上的探讨以及博客努力实践。
Yvo van Doorn,有10多年的系统管理经验。在职业生涯初期,他人工构建和配置“裸”服务器。在同辈人中,Yvo成为配置管理和虚拟化的冠军。加入Chef之前,他在将西雅图一家小型技术公司的整个生产系统迁移到虚拟化平台时亲身见证了VMware产品的威力。他坚信DevOps所带来的文化变迁。在不忙于传播Chef的福音时,他可能会享受醉人的IPA啤酒,探索好的户外运动或者继承自己的荷兰传统,一边吃着高达干酪,一边观看橙衣军团丢掉世界杯。Yvo和妻子及黑色的赖伯犬一起住在华盛顿州西雅图市。
??????
译者序
前言
致谢
关于作者
关于评审人员
关于贡献者
第一部分 DevOps概述
第1章 DevOps简介 2
1.1 DevOps原则概述 2
1.2 采用系统思维 3
1.2.1 改变团队的互动方式 4
1.2.2 改变基础设施部署方法 5
1.2.3 改变软件开发和部署方法 6
1.2.4 经常收集和响应有用的系统反馈并相应调整 6
1.3 增进DevOps知识和技能 6
1.4 小结 7
参考文献 7
第2章 DevOps工具 8
2.1 为成功而组织:看板 8
2.2 服务器部署 11
2.3 配置管理 11
2.4 持续集成 12
2.5 日志分析 12
2.6 小结 12
参考文献 12
第3章 建立DevOps配置管理测试环境 13
3.1 用AutoLab进行环境配给 13
3.2 用Vagrant进行环境配给 14
3.3 用Packer创建映像 18
3.4 管理源代码 18
3.5 小结 24
参考文献 24
第二部分 Puppet
第4章 Puppet简介 26
4.1 Puppet架构 26
4.1.1 独立部署 27
4.1.2 主机-代理部署 27
4.2 准备Puppet测试实验室 28
4.3 Puppet资源 29
4.4 Puppet清单 30
4.5 Puppet模块 35
4.5.1 Puppet Forge 37
4.5.2 创建第一个Puppet模块 37
4.5.3 Puppet模块初始化清单(init.pp) 38
4.5.4 模板 39
4.5.5 使用Puppet模块 42
4.5.6 最后一步:版本控制提交 42
4.6 小结 42
参考文献 42
第5章 Puppet系统管理任务 43
5.1 用数据分离优化Web层 43
5.1.1 参数类(params.pp) 45
5.1.2 Hiera 48
5.1.3 节点分类 51
5.2 应用层 51
5.3 数据库层 53
5.4 实施生产建议措施 53
5.5 部署应用程序环境 54
5.6 小结 54
参考文献 54
第6章 用Puppet进行VMware vSphere管理 55
6.1 Puppet的VMware vSphere云配给器 55
6.1.1 准备VM模板 55
6.1.2 准备Puppet主服务器 56
6.2 VMware的管理模块 58
6.3 小结 63
参考文献 63
第三部分 Chef
第7章 Chef简介 66
7.1 什么是Chef 66
7.2 Chef的核心思想 67
7.2.1 食谱的顺序 67
7.2.2 幂等性 67
7.2.3 基于API的服务器 67
7.2.4 客户端进行所有搜集工作 68
7.2.5 测试驱动基础设施 68
7.3 Chef术语 68
7.3.1 食谱 68
7.3.2 烹调书 68
7.3.3 属性 68
7.3.4 角色 68
7.3.5 运行列表 69
7.3.6 资源 69
7.3.7 环境 69
7.4 托管Chef和Chef Server之间的差别 69
7.4.1 托管Chef 69
7.4.2 Chef Server 69
7.5 ChefDK简介 70
7.5.1 ChefDK是什么 70
7.5.2 安装ChefDK 70
7.6 使用Knife 72
7.7 创建第一个“你好,世界”的Chef食谱 73
7.8 小结 76
第8章 使用Chef完成系统管理任务 77
8.1 注册托管Chef 78
8.2 社区烹调书 81
8.3 设置系统管理 81
8.3.1 准备/设置系统管理任务1:管理时间 82
8.3.2 准备/设置系统管理任务2:管理根密码 83
8.4 配置虚拟客户机 84
8.5 系统管理任务 86
8.6 管理根密码 89
8.6.1 创建两个环境文件 89
8.6.2 将环境文件上传到托管Chef组织 90
8.6.3 为每个服务器分配一个环境 91
8.6.4 修改每个服务器的运行列表,以运行Managedroot烹调书 91
8.6.5 对节点应用更改 92
8.6.6 校验实施的策略 93
8.7 小结 94
参考文献 94
第9章 用Chef管理VMware vSphere 95
9.1 Knife插件 96
9.1.1 knife-vsphere入门 97
9.1.2 配置knife.rb文件 97
9.1.3 校验配置 99
9.1.4 组合 99
9.2 Chef配给 101
9.2.1 Chef配给架构 102
9.2.2 Chef配给入门 102
9.2.3 启动某些节点 103
9.3 小结 105
第四部分 Ansible
第10章 Ansible简介 108
10.1 Ansible架构 108
10.2 准备Ansible测试实验室 109
10.3 Ansible组 110
10.4 Ansible临时命令执行 110
10.4.1 Ping模块 111
10.4.2 Command模块 111
10.4.3 User模块 111
10.4.4 Setup模块 112
10.5 Ansible剧本 112
10.6 Ansible角色 117
10.7 Ansible Galaxy 121
10.8 小结 121
参考文献 121
第11章 Ansible系统管理任务 122
11.1 Web服务器部署 122
11.2 应用层 123
11.3 数据库层 124
11.4 角色结构优化 126
11.5 VMware资源管理 128
11.6 小结 132
参考文献 132
第五部分 PowerShell
第12章 PowerShell预期状态配置简介 134
12.1 什么是PowerShell DSC 134
12.2 PowerShell DSC需求 135
12.3 PowerShell DSC组件 136
12.3.1 原生命令集 136
12.3.2 托管对象格式文件 136
12.3.3 本地配置管理器 137
12.4 PowerShell DSC配置 138
12.5 PowerShell DSC模式 140
12.5.1 本地推送模式 140
12.5.2 远程推送模式 140
12.5.3 拉取模式 141
12.6 PowerShell DSC资源 142
12.7 小结 144
参考文献 144
第13章 PowerShell DSC实施策略 145
13.1 PowerShell DSC在VMware环境中的用例 145
13.2 用PowerCLI进行脚本化VM部署 146
13.3 在VM模板中加入PowerShell DSC 148
13.4 对新VM实施PowerShell DSC配置所面临的挑战 148
13.4.1 PowerCLI Invoke-VMscript 149
13.4.2 PowerCLI Copy-VMGuestFile 150
13.5 经验教训总结 151
13.6 未来PowerShell DSC在VMware环境中的用例 151
13.7 小结 152
参考文献 152
第六部分 利用容器进行应用程序部署
第14章 Docker应用容器简介 154
14.1 什么是应用程序 154
14.1.1 隐藏的复杂性 154
14.1.2 依赖性和配置冲突 155
14.2 Linux容器 155
14.2.1 控制组 155
14.2.2 命名空间 156
14.2.3 容器管理 157
14.3 使用Docker 157
14.3.1 安装Docker 157
14.3.2 Docker守护进程 158
14.3.3 Docker客户端 158
14.3.4 Docker索引 158
14.3.5 运行Docker容器 158
14.3.6 列出运行的容器 159
14.3.7 连接到运行的容器 159
14.3.8 构建和分发Docker容器 161
14.3.9 Dockerfile 161
14.3.10 Docker Hub 162
14.3.11 Docker与虚拟机的对比 163
14.3.12 Docker与配置管理的对比 163
14.4 小结 163
参考文献 163
第15章 大规模运行Docker容器 164
15.1 容器编排 164
15.2 Kubernetes 165
15.3 Kubernetes部署 166
15.3.1 CoreOS和Kubernetes群集管理工具 166
15.3.2 CoreOS群集部署 167
15.3.3 etcd服务器配置 171
15.3.4 Flannel网络覆盖 172
15.3.5 Kubernetes群集节点 172
15.3.6 Kubernetes服务部署 174
15.3.7 Kubernetes工作负载部署 175
15.4 用Docker实现平台即服务 178
15.5 小结 179
参考文献 179
第七部分 DevOps工具链
第16章 使用Razor配给服务器 182
16.1 Razor的工作原理 182
16.2 使用Razor 184
16.2.1 Razor集合和操作 186
16.2.2 构建Razor集合 192
16.3 使用Razor API 201
16.4 Razor组件 203
16.4.1 Razor服务器 203
16.4.2 Razor微内核 203
16.4.3 Razor客户端 203
16.5 安装Razor 203
16.5.1 PE Razor 204
16.5.2 Puppet安装 204
16.5.3 从来源安装 204
16.5.4 人工安装发行版本 204
16.5.5 其他服务 204
16.6 小结 206
参考文献 206
第17章 ELK——Elasticsearch、Logstash和Kibana简介 207
17.1 Elasticsearch概述 207
17.1.1 入门 208
17.1.2 理解索引 208
17.1.3 使用数据 209
17.1.4 安装插件 212
17.1.5 使用客户端 214
17.2 Logstash概述 215
17.2.1 入门 216
17.2.2 配置Logstash输入 216
17.2.3 应用过滤器 218
17.2.4 理解输出 219
— 没有更多了 —
以下为对购买帮助不大的评价