登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 運費計算  | 聯絡我們  | 幫助中心 |  加入書簽
會員登入 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類瀏覽雜誌 臺灣用戶
品種:超過100萬種各類書籍/音像和精品,正品正價,放心網購,悭钱省心 服務:香港台灣澳門海外 送貨:速遞郵局服務站

新書上架簡體書 繁體書
暢銷書架簡體書 繁體書
好書推介簡體書 繁體書

三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書
12月出版:大陸書 台灣書
11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書
五月出版:大陸書 台灣書
四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書

『簡體書』Kubernetes即学即用(第二版)

書城自編碼: 3646139
分類:簡體書→大陸圖書→計算機/網絡程序設計
作者: 布兰登·柏恩思,乔·贝达,凯尔西·海托华,马晶慧
國際書號(ISBN): 9787519856762
出版社: 中国电力出版社
出版日期: 2021-07-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:HK$ 97.5

我要買

 

** 我創建的書架 **
未登入.


新書推薦:
郭建龙亚洲三部曲:印度、穿越蒙古国、三千佛塔
《 郭建龙亚洲三部曲:印度、穿越蒙古国、三千佛塔 》

售價:HK$ 279.6
工作:从平凡到非凡(原书第5版)  [英]理查德·泰普勒 陶尚芸 译
《 工作:从平凡到非凡(原书第5版) [英]理查德·泰普勒 陶尚芸 译 》

售價:HK$ 70.8
带献帝去旅行--历史书写的中古风景(论衡系列)
《 带献帝去旅行--历史书写的中古风景(论衡系列) 》

售價:HK$ 69.6
爱的能力:为什么我们既渴望爱,又害怕走进爱(第13版)
《 爱的能力:为什么我们既渴望爱,又害怕走进爱(第13版) 》

售價:HK$ 83.8
环艺设计手绘 景观 室内马克笔手绘效果图技法精解
《 环艺设计手绘 景观 室内马克笔手绘效果图技法精解 》

售價:HK$ 95.8
明清与李朝时代
《 明清与李朝时代 》

售價:HK$ 81.6
商业人像摄影
《 商业人像摄影 》

售價:HK$ 95.8
抗争表演
《 抗争表演 》

售價:HK$ 74.4

 

建議一齊購買:

+

HK$ 98.8
《 Go 语言从基础到中台微服务实战开发 》
+

HK$ 104.3
《 Python Web自动化测试入门与实战 》
+

HK$ 196.4
《 Flask Web开发入门、进阶与实战 》
+

HK$ 163.4
《 PHP 编程从入门到实践 》
+

HK$ 120.7
《 PHP 从入门到精通 》
+

HK$ 111.3
《 GO语言区块链应用开发从入门到精通 》
編輯推薦:
Kubernetes的时代已然到来。在短短几年内,这款容器编排器从根本上改变了开发人员和运维人员在云中构建、部署,以及维护应用程序的方式。无论你是分布式系统的新手,还是多年来一直在部署云原生应用程序的老手,Kubernetes都可以帮助你在速度、敏捷性、可靠性,以及效率等方面更上一层楼。
本书作者长期致力于Kubernetes的概念抽象以及构建实践,他们将通过本书向你展示怎样将Kubernetes完美地融入分布式应用程序的生命周期。你将学习如何使用各种工具以及API来实现可扩展分布式系统的自动化,无论你的系统是在线服务、机器学习应用程序,还是树莓派计算机集群。
內容簡介:
创建和运行一个简单的集群,了解Kubernetes的基本工作原理。深入了解使用Kubernetes、Pod、服务、Ingress,以及副本集部署应用程序的细节。将存储集成到Kubernetes的容器化微服务中。学习Kubernetes中的专用对象,例如守护进程集、作业、ConfigMap,以及Secret等。掌握在Kubernetes中开发和部署应用程序的实战经验。
關於作者:
Brendan Burns是Kubernetes的合伙创始人,微软Azure的杰出工程师,负责领导开发运维、开源,以及微服务等团队。
Joe Beda是Kubernetes的合伙创始人,VMware的首席工程师。他曾是Heptio的合伙创始人,直到该公司被VMware收购前一直担任CTO之职。他在VMware公司范围内推动了Kubernetes战略的实施。
Kelsey Hightower是Google云平台的首席开发,他曾在科技职业生涯中出任多个职位,主要领导软件的发行工作
目錄
目录
前言 .1
第1 章 概述 .9
1.1 速度 10
1.1.1 不可变性的价值 . 11
1.1.2 声明式配置 13
1.1.3 自我修复系统 13
1.2 扩展服务和团队 14
1.2.1 解耦 15
1.2.2 轻松扩展应用程序和集群 . 15
1.2.3 通过微服务扩展开发团队 . 16
1.2.4 一致性与扩展性的关注点分离 17
1.3 抽象基础设施 19
1.4 效率 20
1.5 小结 21
第2 章 创建和运行容器 22
2.1 容器镜像 24
2.2 使用Docker 构建应用程序镜像 26
2.2.1 Dockerfiles 26
2.2.2 优化镜像的大小 . 28
2.2.3 镜像安全. 30
2.3 多阶段镜像构建 30
2.4 将镜像存储到远程仓库 32
2.5 Docker 容器运行时 . 34
2.5.1 通过Docker 运行容器 . 34
2.5.2 探索kuard 应用程序. 34
2.5.3 限制资源使用 35
2.6 清理 36
2.7 小结 37
第3 章 部署Kubernetes 集群 38
3.1 在公共云上安装Kubernetes 39
3.1.1 Google Kubernetes Engine . 39
3.1.2 使用Azure Kubernetes 服务安装Kubernetes 40
3.1.3 在Amazon Web Services 上安装Kubernetes 41
3.2 使用minikube 在本地安装Kubernetes . 41
3.3 在Docker 中运行Kubernetes 42
3.4 在树莓派上运行Kubernetes 43
3.5 Kubernetes 客户端 43
3.5.1 检查集群状态 43
3.5.2 列出Kubernetes 的工作节点 44
3.6 集群组件 47
3.6.1 Kubernetes 代理 47
3.6.2 Kubernetes DNS . 48
3.6.3 Kubernetes 用户界面 48
3.7 小结 49
第4 章 常用的kubectl 命令 .50
4.1 命名空间 50
4.2 上下文 50
4.3 查看Kubernetes API 对象 51
4.4 创建、更新和销毁Kubernetes 对象 52
4.5 给对象添加标签和注释 54
4.6 调试命令 54
4.7 自动补齐命令 56
4.8 查看集群的其他方法 . 57
4.9 小结 57
第5 章 Pod 58
5.1 Kubernetes 中的Pod 59
5.2 Pod 的应用思路 60
5.3 Pod 清单 61
5.3.1 创建Pod . 62
5.3.2 创建Pod 清单 62
5.4 运行Pod 63
5.4.1 查询Pod 列表 63
5.4.2 Pod 的详细信息 64
5.4.3 删除Pod . 66
5.5 访问Pod 66
5.5.1 使用端口转发 66
5.5.2 通过日志获取更多信息 67
5.5.3 使用exec 在容器中运行命令 68
5.5.4 在容器之间复制文件 68
5.6 健康检查 69
5.6.1 存活探针. 69
5.6.2 就绪探针. 71
5.6.3 健康检查的类型 . 71
5.7 资源管理 71
5.7.1 资源请求:所需的少资源量 72
5.7.2 通过约束限制资源使用量 . 74
5.8 利用卷持久保存数据 . 75
5.8.1 在Pod 中使用卷 . 75
5.8.2 Pod 中卷的不同使用方式 76
5.8.3 使用远程磁盘持久保存数据 . 77
5.9 综合讨论 78
5.10 小结 . 79
第6 章 标签与注释 .80
6.1 标签 80
6.1.1 应用标签. 82
6.1.2 修改标签. 83
6.1.3 标签选择器 84
6.1.4 API 对象中的标签选择器 86
6.1.5 Kubernetes 架构中的标签 87
6.2 注释 88
6.3 清理 89
6.4 小结 90
第7 章 服务发现 91
7.1 什么是服务发现? 91
7.2 服务对象 92
7.2.1 DNS 服务 93
7.2.2 就绪检查. 95
7.3 向外公开集群服务 97
7.4 云集成 98
7.5 高级集成 99
7.5.1 端点 99
7.5.2 手动发现服务 101
7.5.3 kube-proxy 与集群IP 102
7.5.4 集群IP 环境变量 . 103
7.6 连接到其他环境 104
7.7 清理 . 104
7.8 小结 . 105
第8 章 Ingress 的HTTP 负载均衡 106
8.1 Ingress 的规范与Ingress 控制器 107
8.2 安装Contour 108
8.2.1 配置DNS. 109
8.2.2 配置本地的hosts 文件 109
8.3 使用Ingress . 110
8.3.1 简单的用法 111
8.3.2 使用主机名 . 112
8.3.3 使用路径 114
8.3.4 清理 115
8.4 Ingress 的高级话题和技巧 115
8.4.1 运行多个Ingress 控制器 . 115
8.4.2 多个Ingress 对象 . 116
8.4.3 Ingress 与命名空间 . 116
8.4.4 改写路径 117
8.4.5 提供TLS . 117
8.5 Ingress 的其他实现 119
8.6 Ingress 的未来 119
8.7 小结 . 120
第9 章 副本集 121
9.1 协调循环 122
9.2 Pod 与副本集的关联 123
9.2.1 采用现有的容器 123
9.2.2 隔离容器 124
9.3 副本集的设计思想 124
9.4 副本集的规范 . 124
9.4.1 Pod 模板 125
9.4.2 标签 125
9.5 创建副本集 126
9.6 检查副本集 126
9.6.1 根据Pod 查找副本集 . 127
9.6.2 查找副本集管理的Pod 集合 . 127
9.7 副本集的伸缩 . 128
9.7.1 副本集的命令式伸缩:kubectl scale . 128
9.7.2 副本集的声明式伸缩:kubectl apply 129
9.7.3 自动伸缩副本集 130
9.8 删除副本集 131
9.9 小结 . 132
第10 章 部署 . 133
10.1 个部署 134
10.2 创建部署 . 136
10.3 管理部署 . 138
10.4 更新部署 . 139
10.4.1 扩展部署 139
10.4.2 更新容器镜像 . 140
10.4.3 推出的历史记录 142
10.5 部署策略 . 145
10.5.1 重建策略 145
10.5.2 滚动更新策略 . 145
10.5.3 放慢部署速度以确保服务健康 149
10.6 删除部署 . 151
10.7 监控部署 . 151
10.8 小结 152
第11 章 守护进程集 . 153
11.1 守护进程集调度器 . 154
11.2 创建守护进程集 155
11.3 将守护进程集限制到特定节点 157
11.3.1 向节点添加标签 . 157
11.3.2 节点选择器 158
11.4 更新守护进程集 159
11.5 删除守护进程集 161
11.6 小结 161
第12 章 作业 . 162
12.1 作业对象 . 162
12.2 作业模式 . 163
12.2.1 一次性作业 163
12.2.2 并行性 168
12.2.3 工作队列 170
12.3 定时作业 . 175
12.4 小结 176
第13 章 ConfigMap 与Secret 177
13.1 ConfigMap . 177
13.1.1 创建ConfigMap . 178
13.1.2 使用ConfigMap . 179
13.2 Secret 182
13.2.1 创建Secret 183
13.2.2 消费Secret 184
13.2.3 私有Docker 仓库 186
13.3 命名约束 . 187
13.4 管理ConfigMap 和Secret 188
13.4.1 显示列表 188
13.4.2 创建 . 189
13.4.3 更新 . 190
13.5 小结 192
第14 章 基于角色的访问控制 193
14.1 基于角色的访问控制 194
14.1.1 Kubernetes 中的身份 194
14.1.2 角色和角色绑定 195
14.1.3 Kubernetes 中的角色和角色绑定 196
14.2 RBAC 的管理技巧 . 199
14.2.1 使用can-i 测试授权 . 199
14.2.2 通过源代码控制管理RBAC 199
14.3 高级主题 . 200
14.3.1 聚合ClusterRoles . 200
14.3.2 使用组进行绑定 201
14.4 小结 203
第15 章 存储解决方案与Kubernetes 的集成 204
15.1 导入外部服务 205
15.1.1 没有选择器的服务 207
15.1.2 外部服务的局限性:健康检查 209
15.2 运行可靠的单例 209
15.2.1 运行MySQL 单例服务 209
15.2.2 动态卷供应 214
15.3 利用状态集实现Kubernetes 原生存储 215
15.3.1 状态集的属性 . 215
15.3.2 利用状态集手动复制MongoDB 216
15.3.3 自动化MongoDB 集群的创建 219
15.3.4 持久卷与状态集 222
15.3.5 后一步:存活探针 223
15.4 小结 224
第16 章 扩展Kubernetes . 225
16.1 扩展Kubernetes 意味着什么 226
16.2 可扩展点 . 226
16.3 定制资源的模式 236
16.3.1 仅有数据 236
16.3.2 编译器 237
16.3.3 操作器 237
16.3.4 如何入门 238
16.4 小结 238
第17 章 部署实际应用程序 239
17.1 Jupyter . 239
17.2 Parse . 241
17.2.1 前提条件 242
17.2.2 构建Parse 服务器 . 242
17.2.3 部署parse-server 242
17.2.4 测试Parse . 244
17.3 Ghost. 244
17.4 Redis . 248
17.4.1 配置Redis 249
17.4.2 创建Redis 服务 . 251
17.4.3 部署Redis 251
17.4.4 使用Redis 集群 . 253
17.5 小结 254
第18 章 组织应用程序 256
18.1 我们的指导原则 256
18.1.1 以文件为准 257
18.1.2 代码审查的作用 257
18.1.3 特性门控 258
18.2 在源代码管理中管理应用程序 259
18.2.1 文件系统的布局 259
18.2.2 管理周期性的版本 260
18.3 为开发、测试与部署组织应用程序的结构 262
18.3.1 目标 . 262
18.3.2 发布的进展 263
18.4 使用模板为应用程序添加参数 264
18.4.1 使用Helm 和模板实现参数化 265
18.4.2 在文件系统布局中使用参数 266
18.5 部署全球性的应用程序 266
18.5.1 全球部署架构 . 267
18.5.2 实现全球部署 . 268
18.5.3 面向全球部署的仪表板和监视 270
18.6 小结 270
附录 利用树莓派搭建Kubernetes 集群 271
作者介绍 281
封面介绍 281
內容試閱
前言
Kubernetes:献辞
Kubernetes 要感谢所有在凌晨三点醒来重启进程的系统管理员。感谢所有将代码推送到生产环境,却发现代码没有像在笔记本电脑上那样运行的开发人员。感谢所有由于未能更新主机名而错误地将负载测试指向生产服务的系统架构师。当然,这些经历非常痛苦、让人摸不着头脑,但正是受到了这些奇怪的错误的启发,Kubernetes 才得以发展。用一句话来总结就是:Kubernetes的目的是从根本上简化构建、部署和维护分布式系统的任务。它的灵感来自几十年来人们为构建可靠的系统而积累的经验。Kubernetes 的设计目标就是让那些痛苦的经历变成愉悦(甚至欣喜)。希望你喜欢这本书!
本书面向的读者对象
无论你是分布式系统的新手,还是多年来一直在部署云原生应用程序的老手,Kubernetes 都可以帮助你在速度、敏捷性、可靠性以及效率等方面更上一层楼。本书介绍了Kubernetes 集群编排器,以及如何利用其工具和API 来改善分布式应用程序的开发、交付和维护。尽管本书不要求读者有Kubernetes 方面的经验,但为了充分理解本书,希望读者熟悉基于服务器的应用程序的构建和部署。好能够熟悉负载均衡以及网络存储等知识,但不是必需的。同样,拥有Linux、Linux 容器以及Docker 方面的经验能够帮助你充分理解本书。
本书的创作原因
从Kubernetes 问世到现在,我们一直在跟它打交道。我们见证了它从好奇心驱使下的实验,逐步蜕变成关键性的生产级基础设施,为从机器学习到在线服务等各个领域的大规模生产应用程序提供动力。随着这种转变的发生,我们越来越明显地感觉到,如果能够编写一本书涵盖Kubernetes 核心概念的使用方法,同时又能介绍这些概念开发背后的动机,那么就是对云原生应用程序开发做出的重大贡献。我们希望,通过阅读本书,你不仅可以学习如何在Kubernetes 之上构建可靠、可扩展的应用程序,而且还可以洞悉分布式系统所面临的核心挑战,因为正是这些挑战促进了分布式系统的发展。
本书更新至第二版的原因
自从本书版发行以来,在过去的几年里,Kubernetes 生态系统蓬勃发展。Kubernetes 本身已经发布了许多版本,而且许多使用Kubernetes 的工具和模式也成为事实上的标准。在更新本书时,我们添加了有关HTTP 负载均衡、基于角色的访问控制(RBAC)、扩展Kubernetes API,以及如何在源代码管理中组织应用程序等内容。此外,我们还更新了所有现有章节,以反映自版以来Kubernetes 的发展与演变。随着Kubernetes 的不断发展,我们希望几年后再次修订本书。
当前云原生应用程序简介
从门编程语言问世到面向对象编程,再到虚拟化和云基础设施的发展,计算机科学的历史就是一部抽象发展史,抽象不仅可以隐藏复杂性,还可以赋予你构建更复杂的应用程序的能力。尽管如此,可靠的、可扩展的应用程序的开发仍然面临着许多重大挑战。近年来,事实证明,像Kubernetes 这样的容器以及容器编排API 已成为一个重要的抽象,它能从根本上简化可靠的、可扩展的分布式系统的开发。尽管容器和编排器尚未完全成为主流,但它们已经能够让开发人员以快速、灵活和可靠的方式构建和部署应用程序,这放在几年前简直就是科幻小说。
本书的主要内容
本书的组织结构如下。第1 章概述了Kubernetes 的各种优点,但我们不会深入细节。如果你是Kubernetes 新手,好从这一章开始阅读,从而了解本书后续章节的大致内容。
第2 章详细介绍了容器以及容器化应用程序开发。如果你以前从未真正接触过Docker,那么本章将是一个不错的入门。如果你已是Docker 专家,那么也可以温习一下大部分内容。
第3 章介绍了如何部署Kubernetes。虽然本书的大部分内容都侧重于Kubernetes 的使用方式,但在开始使用之前,你首先需要建立并运行一个集群。尽管运行生产集群的知识不在本书的讨论范围内,但本章介绍了几种简单的创建集群的方法,为的是方便你了解如何使用Kubernetes。第4 章涵盖了与Kubernetes 集群交互时常用的一系列命令。
从第5 章开始,我们将深入探讨使用Kubernetes 部署应用程序的细节。我们介绍了Pod(第5 章)、标签和注释(第6 章)、服务(第7 章)、Ingress(第8 章)和副本集(第9 章)。这些构成了在Kubernetes 中部署服务所需的核心基础。接下来,我们还介绍了部署(第10 章),它将整个应用程序的生命周期联系在一起。
在这些章节之后,我们将介绍Kubernetes 中的一些更专业的对象:守护进程集(第11 章)、作业(第12 章)、ConfigMap 与Secret(第13 章)。虽然这些章节对于许多生产应用程序来说必不可少,但如果只是为了学习Kubernetes,那么可以暂时跳过,等到以后积累到更多经验和专业知识之后,再回过头来阅读。
接下来,我们介绍将存储集成到Kubernetes(第15 章)。我们还将在第16章中讨论扩展Kubernetes。后,我们还会通过一些例子来说明如何利用Kubernetes 来开发和部署实际应用程序(第17 章),并讨论如何在源代码控制中组织应用程序(第18 章)。
在线资源
你需要安装Docker,可能还需要熟悉一下相关的Docker 文档。
同样,你还需要安装kubectl 命令行工具。你也可以加入Kubernetes Slack 频道(地址:http://slack.kubernetes.io/),这是一个庞大的用户社区,每天都有很多人在其中探讨和回答问题。
后,随着你获得的相关技术知识不断增多,将来可能还想涉足GitHub 上的开源Kubernetes 代码库(地址:https://github.com/kubernetes/kubernetes)。
排版约定
本书使用了下述排版约定。
斜体(Italic)
表示新术语、URL、示例电子邮件地址、文件名和扩展名。
等宽字体(Constant Width)
表示程序片段,以及正文中出现的变量、函数名、数据库、数据类型、环境变量、语句和关键字等。
加粗等宽字体(constant width bold)
表示应该由用户输入的命令或其他文本。
等宽斜体(constant width italic)
表示应该由用户输入的值或根据上下文确定的值替换的文本。
使用代码示例
你可以通过如下链接下载本书的补充材料(代码示例,练习等):https://github.com/kubernetes-up-and-running/examples.
本书的目的是帮助你完成工作。一般来说,你可以在自己的程序或者文档中使用本书附带的示例代码。你无需联系我们获得使用许可,除非你要复制大量的代码。例如,使用本书中的多个代码片段编写程序就无需获得许可。但以CD-ROM 的形式销售或者分发O’Reilly 书中的示例代码则需要获得许可。回答问题时援引本书内容以及书中示例代码,无需获得许可。在你自己的项目文档中使用本书大量的示例代码时,则需要获得许可。
我们不强制要求署名,但如果你这么做,我们深表感激。署名一般包括书名、作者、出版社和国际标准图书编号。例如:“Kubernetes: Up and Running,2nd edition, by Brendan Burns, Joe Beda, and Kelsey Hightower (O’Reilly).Copyright 2019 Brendan Burns, Joe Beda, and Kelsey Hightower, 978-1-492-04653-0”。
如果你觉得自身情况不在合理使用或上述允许的范围内,请通过邮件和我们联系,地址是:permissions@oreilly.com。
O’Reilly 在线学习平台(O’Reilly Online Learning)
近40 年来,O’Reilly Media 致力于提供技术和商业培训、知识和卓越见解,来帮助众多公司取得成功。
我们拥有独一无二的专家和革新者组成的庞大网络,他们通过图书、文章、会议和我们的在线学习平台分享他们的知识和经验。O’Reilly 的在线学习平台允许你按需访问现场培训课程、深入的学习路径、交互式编程环境,以及O’Reilly 和200 多家其他出版商提供的大量文本和视频资源。有关的更多信息,请访问http://oreilly.com。
意见和疑问
请把你对本书的意见和疑问发给出版社:
美国:
O’Reilly Media, Inc.
1005 Gravenstein Highway North
Sebastopol, CA 95472
中国:
北京市西城区西直门南大街2号成铭大厦C座807室(100035)
奥莱利技术咨询(北京)有限公司
这本书有专属网页,你可以在那里找到本书的勘误、示例和其他信息。地址是:https://www.oreilly.com/library/view/kubernetes-up-and/9781492046523/。
如果你对本书有一些评论或技术上的建议, 请发送电子邮件到:bookquestions@oreilly.com。
要了解O’Reilly 图书、培训课程、会议和新闻的更多信息,请访问我们的网站,地址是:http://www.oreilly.com
我们的Facebook:http://facebook.com/oreilly。
我们的Twitter:http://twitter.com/oreillymedia。
我们的Youtube:http://www.youtube.com/oreillymedia。
致谢
本书得以付梓,我们要感谢所有帮助我们编写本书的人。其中包括我们的编辑Virginia Wilson 和O’Reilly 全体工作人员,以及技术评审员,他们提供了大量的反馈意见,对我们更好地完成本书的创作给予了极大的帮助。后,我们要感谢所有版的读者,你们报告的勘误已在第二版中得到了修正。
谢谢你们!我们非常感谢。

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 大陸用户 | 海外用户
megBook.com.hk
Copyright © 2013 - 2024 (香港)大書城有限公司  All Rights Reserved.