描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787519823993
产品特色
编辑推荐
Kubernetes创始人推荐,Kubernetes早期的代码贡献者和先驱开发者创作,80多个技巧教你如何创建云端原生应用程序。如果你们公司正在准备采用云端原生计算机架构,那么这本书将向你介绍如何成功地使用Kubernetes,它是自动部署、扩大与缩小规模以及容器化应用程序管理方面切实的标准。本书通过80多个久经考验的技巧,快速地向开发者、系统管理员和架构师介绍Kubernetes的入门知识,并掌握它所提供的强大的API。
内容简介
在本书中,作者提供了在开发环境和产品环境中安装、使用Kubernetes以及与之交互的具体解决方案。并介绍了如何改造系统来满足具体的需求,以及熟悉Kubernetes更广泛的生态环境。每个章节介绍的技巧都以常用的“问题-解决方案-讨论”的过程来描述。·创建Kubernetes集群。·使用Kubernetes命令行界面。·管理基本的workload类型。·使用服务。·探索Kubernetes API。·管理有状态的非云端原生应用。·使用卷与配置数据。·集群级别与应用程序级别的规模伸缩。·应用程序的安全。·监视与日志。·维护与排除故障。
目 录
前 言
欢迎你阅读Kubernetes经典实例,感谢选择我们的书籍!
在本书中,我们将帮助你解决关于Kubernetes的具体问题。我们总结了80多个技巧,主题包括建立集群、通过Kubernetes API对象管理容器化workload、使用存储的基本方法、安全配置以及Kubernetes的扩展等。无论你是Kubernetes新手,还是有一定的经验,我们希望你都可以从本书中找到有用的信息,提高你的经验和对Kubernetes的应用。本书面向的读者对象无论你是云端原生开发人员,或是系统管理员,或是这种新型的开发运维人员,本书都可以帮助你成功地在Kubernetes丛林中找到出路,帮你从开发走向正式产品。
本书中的各个技巧并没有按照Kubernetes的基本概念线性展开,但是,每章包含的技巧都会运用Kubernetes的核心概念和API的基本方法。为什么编写本书我们两个人使用Kubernetes已经很多年了,并向其贡献了很多代码,我们看到了很多新手甚至是高级用户也会遇到的问题。我们想与大家分享我们积累的知识,包括在产品或在开发环境中运行Kubernetes的知识,以及开发Kubernetes的经验,例如向核心代码库或生态系统贡献代码,以及编写在Kubernetes上运行的应用程序。
本书的组织结构本书包括14章。每章都是由若干以O’Reilly标准的提问模式(问题,解决方案,讨论)编写的小节组成的。你可以从头到尾依次阅读本书,也可以跳过某些章节。每个章节都是独立的,并且在理解一些其他章节的概念的时候,我们也提供了相应的备注。有些章节会展示具体的命令。关于Kubernetes版本发行的说明写这本书的时候,Kubernetes 1.7是的稳定版本,于2017年6月末发行,也是我们在本书中使用的版本注1。然而,书中所展示的解决方案普遍适用于其他旧版本,至少到Kubernetes 1.4都没问题。如果解决方案只适用于新版本的话,我们会做明确的解释,并列出所需的版本。
2017年,Kubernetes在每个季度都会推出新的版本,例如:3月的版本1.6,6月的版本1.7,9月的版本1.8,到12月本书的英文版发布的时候,Kubernetes推出了版本1.9。Kubernetes的版本发行标准明确指出了每个功能都可以在3个小版本期间得到支持注2。这意味着版本1.7中稳定的API对象的支持会一直持续到2018年3月。然而,因为本书在大多数时候仅使用稳定的API,所以即便你使用的是更新版本的Kubernetes,各个章节中提及的解决方案也依然有效。你需要掌握的技术这是一本中级水平的书,需要读者对一些开发和系统管理的概念有基本的理解。
在阅读本书前,请先确认对以下技术有基本的理解:bash(UNIX shell)bash是默认的Linux和MacOS的UNIX shell。你需要熟悉UNIX shell的知识,例如编辑文件,设定文件许可和用户权限,在文件系统内移动文件,以及一些基本的shell编程。如果你想学习bash的基本知识,请参阅O’Reilly出版的Cameron Newham的著作《Learning the bash Shell》,或JP Vossen和Carl Albing的著作《bash Cookbook》。包管理本书中提及的工具常常具有依赖性,需要安装一些软件包。因此,你需要了解包管理系统方面的知识。包管理系统可以是Ubuntu/Debian系统中的apt,CentOS/RHEL系统中的yum,或者MacOS的port或brew命令。无论是哪一种,请确认你了解如何安装、升级或删除软件包。GitGit已成为标准的分布式版本控制工具。如果你熟悉CVS和SVN,但是还未曾用过Git,那么应该尝试一下。Jon Loeliger和Matthew McCullough合著的《Version Control with Git》(O’Reilly出版)是个好的开始。同时,GitHub网站是优秀的资源,可以用于托管个人的代码仓库。更多关于GitHub的信息,请访问http://training.github.com和相关的交互式教程(https://try.github.io/levels/1/challenges/1)。Python除了C/C 或Java之外,我们总是鼓励学生选择一种脚本语言。曾经Perl是脚本语言的主宰,不过目前Ruby和Go似乎更加流行。本书中的大多数例子使用的都是Python,但是也有几个Ruby的例子,还有一个甚至用到了Clojure。O’Reilly出版了很多关于Python的书籍,包括Lubanovic的《Introducing Python》、Mark Lutz的《Programming Python》,以及David Beazley和Brian K. Jones合著的《Python Cookbook》。GoKubernetes是用Go写的。
过去几年中,Go已经成为了许多创业公司和系统相关的开源项目的新编程语言的。这本书并没有涉及Go编程,但是演示了如何编译Go项目。所以希望你对如何建立Go工作空间有基本的理解。如果想了解更多关于Go的知识,可以参阅O’Reilly的视频培训教程“Introduction to Go Programming”。在线资源Kubernetes清单文件、代码示例和其他本书中用到的脚本都保存到了GitHub上(https://github.com/k8s-cookbook/recipes)。你可以拷贝这个代码仓库,然后阅读相应的章节,并使用这些代码:$ git clone https://github.com/k8s-cookbook/recipes这个代码仓库中的示例并不是在生产环境中使用的设置。这些示例代码只是为了运行各个章节中的示例而编写的简代码。排版约定本书使用了下述排版约定。斜体(Italic)表示新术语、URL、示例电子邮件地址、文件名和扩展名。等宽字体(Constant Width)表示代码,在段内用以表示与代码相关的元素,例如变量或函数名、数据库、数据类型、环境变量、声明和关键字。还用于命令和命令的结果输出。等宽粗体字(Constant width bold)表示命令或其他用户输入的文本。斜体等宽字体(Constant Width Italic)表示该文本应当由用户提供的值或由上下文决定的值。表示提示或建议。表示一般性说明。表示警告或提醒。使用代码示例本书的目的是帮助你完成工作。
一般来说,你可以在自己的程序或者文档中使用本书附带的示例代码。你无需联系我们获得使用许可,除非你要复制大量的代码。例如,使用本书中的多个代码片段编写程序就无需获得许可。但以CD-ROM的形式销售或者分发O’Reilly书中的示例代码则需要获得许可。回答问题时援引本书内容以及书中示例代码,无需获得许可。在你自己的项目文档中使用本书大量的示例代码时,则需要获得许可。我们不强制要求署名,但如果你这么做,我们深表感激。署名一般包括书名、作者、出版社和国际标准图书编号。例如:“Kubernetes Cookbookby Sébastien Goasguen and Michael Hausenblas (O’Reilly). Copyright 2018Sébastien Goasguen and Michael Hausenblas, 978-1-491-97968-6”。如果你觉得自身情况不在合理使用或上述允许的范围内,请通过邮件和我们联系,地址是[email protected]。O’Reilly SafariSafari(以前的Safari Books Online)是面向企业、政府、教育和个人的会员制培训与参考平台。Safari的会员可以访问成千上万的书籍、培训视频、学习路径、交互式教程和推荐的书单。这些内容由250多家出版社提供,其中包括:O’Reilly Media、Harvard Business Review、Prentice Hall Professional、Addison-WesleyProfessional、Microsoft Press、Sams、Que、Peachpit Press、Adobe、FocalPress、Cisco Press、John Wiley & Sons、Syngress、Morgan Kaufmann、IBMRedbooks、Packt、Adobe Press、FT Press、Apress、Manning、New Riders、McGraw-Hill、Jones & Bartlett和Course Technology等。更多关于Safari的信息,请访问我们的网站:http://oreilly.com/safari。
联系我们请把你对本书的意见和疑问发给出版社:美国:O’Reilly Media, Inc.1005 Gravenstein Highway NorthSebastopol, CA 95472中国:北京市西城区西直门南大街2号成铭大厦C座807室(100035)奥莱利技术咨询(北京)有限公司这本书有专属网页,你可以在那里找到本书的勘误、示例和其他信息。这个网页的地址是http://bit.ly/kubernetes-cookbook。如果你对本书有一些评论或技术上的建议,请发送电子邮件到[email protected]。要了解O’Reilly图书、培训课程、会议和新闻的更多信息,请访问我们的网站,地址是:http://www.oreilly.com。请在 Facebook 上联系我们,地址是:http://facebook.com/oreilly。请在 Twitter 上关注我们,地址是:http://twitter.com/oreillymedia。请观看我们的 Youtube视频:地址是:http://www.youtube.com/oreillymedia。
致谢感谢整个Kubernetes社区开发了如此优秀的软件,我们是一个伟大的大家族,每个人都很开放,很热心,总是乐于助人。创作这本书的过程比预想的困难,但我们还是完成了这项工作,我们对所有帮助过我们的人表示衷心的感谢。尤其要感谢Ihor Dvoretski、Liz Rice和Ben Hall的全面评论,他们帮助我们修正了很多问题,并提出了对所有读者都有帮助的更好的组织方式和章节。
评论
还没有评论。