精通Kubernetes
全新正版 极速发货
¥
54.28
6.1折
¥
89
全新
仅1件
作者(美)吉吉·塞凡
出版社人民邮电出版社
ISBN9787115536112
出版时间2020-07
装帧平装
开本16开
定价89元
货号1202081068
上书时间2024-07-12
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
吉吉·塞凡(Gigi Sayfan)是Helix的软件架构师,Helix是一家生物信息学和基因组学的创业公司。他已有20多年的软件开发经验,涉及即时通信、变形、芯片制造过程控制、游戏控制台嵌入式多媒体应用、脑启发机器学习、定制浏览器开发、3D分布式游戏平台的Web服务以及物联网传感器和虚拟现实等多个领域。
他使用多种编程语言在多种操作系统中编写代码,编程语言诸如Go、Python、C、C++、C#、Java、Delphi、JavaScript,甚至Cobol和PowerBuilder;操作系统包括Windows (3.11~7)、Linux、macOS、嵌入式Lynx;另外,还有Sony PlayStation游戏机等。他的技术专长包括数据库、底层网络、分布式系统、非正统的用户界面和一般软件开发生命周期。
目录
章理解Kubernetes架构1
1.1理解容器编排1
1.1.1物理机、虚拟机和容器1
1.1.2云端容器2
1.1.3服务器运行模式2
1.2Kubernetes的相关概念3
1.2.1集群4
1.2.2节点4
1.2.3主节点4
1.2.4Pod4
1.2.5标签5
1.2.6注解5
1.2.7标签选择器5
1.2.8副本控制器和副本集6
1.2.9服务6
1.2.10存储卷6
1.2.11有状态服务集7
1.2.12密钥对象7
1.2.13名称7
1.2.14命名空间8
1.3深入了解Kubernetes架构8
1.4KubernetesAPI10
1.4.1KubernetesAPI10
1.4.2自动伸缩API10
1.5Kubernetes组件11
1.5.1主组件11
1.5.2节点组件12
1.6Kubernetes运行时13
1.6.1运行时接口13
1.6.2Docker14
1.6.3Rkt15
1.6.4HyperContainer16
1.7持续集成与部署17
1.7.1CI/CD流水线17
1.7.2为Kubernetes设计CI/CD流水线18
1.8总结19
第2章创建Kubernetes集群20
2.1用Minikube快速创建单节点集群20
2.1.1准备工作20
2.1.2创建集群22
2.1.3故障排除23
2.1.4检查集群24
2.1.5部署服务25
2.1.6用仪表板检查集群26
2.2用Kubeadm创建多节点集群26
2.2.1准备工作26
2.2.2组建Vagrant虚拟机集群26
2.2.3安装所需软件27
2.2.4创建集群29
2.2.5建立Pod网络30
2.2.6添加工作节点31
2.3在GCP、AWS和Azure云端创建集群32
2.3.1云提供商接口32
2.3.2GCP33
2.3.3AWS33
2.3.4Azure34
2.4从头开始创建裸金属集群34
2.4.1裸金属用例34
2.4.2什么时候应该考虑创建裸金属集群35
2.5进程35
2.6使用虚拟私有云基础设施35
2.7总结36
第3章监控、日志记录和故障排除37
3.1用Heapster监控Kubernetes37
3.2InfluxDB后端39
3.2.1存储模式40
3.2.2Grafana可视化42
3.3仪表板的性能分析43
3.3.1顶视图44
3.3.2添加中央日志49
3.4检测节点问题51
3.4.1节点问题检测器52
3.4.2DaemonSet52
3.4.3节点问题检测DaemonSet52
3.5故障排除方案53
3.6设计健壮的系统53
3.6.1硬件故障54
3.6.2配额、份额和限制54
3.6.3BadConfiguration55
3.6.4成本和性能56
3.7总结57
第4章高可用性和可靠性58
4.1高可用性概念58
4.1.1冗余58
4.1.2热交换59
4.1.3领导选举59
4.1.4智能负载均衡59
4.1.5幂等59
4.1.6自愈60
4.2高可用性最佳实践60
4.2.1创建高可用性集群60
4.2.2确保节点可靠61
4.2.3保护集群状态62
4.2.4保护数据66
4.2.5运行冗余API服务器67
4.2.6用Kubernetes运行领导选举67
4.2.7使预演环境高度可用69
4.2.8测试高可用性70
4.3集群在线升级71
4.3.1滚动升级71
4.3.2蓝绿升级73
4.3.3管理数据契约变更73
4.3.4数据迁移74
4.3.5检测过期API74
4.4大型集群的性能、成本和设计权衡75
4.4.1可用性要求75
4.4.2尽力而为75
4.4.3维护窗口76
4.4.4快速恢复76
4.4.5零停机时间77
4.4.6性能和数据的一致性78
4.5总结78
第5章配置Kubernetes安全、限制和账户80
5.1理解Kubernetes安全挑战80
5.1.1节点挑战81
5.1.2网络挑战81
5.1.3镜像挑战82
5.1.4配置和部署挑战83
5.1.5Pod和容器挑战84
5.1.6组织、文化和过程挑战84
5.2加固Kubernetes85
5.2.1理解Kubernetes的服务账户85
5.2.2访问API服务器87
5.2.3保护Pod90
5.2.4管理网络策略95
5.2.5使用密钥对象97
5.3运行多用户集群100
5.3.1多用户集群的案例100
5.3.2安全多租户使用命名空间101
5.3.3避免命名空间陷阱102
5.4总结102
第6章使用关键Kubernetes资源103
6.1设计Hue平台103
6.1.1定义Hue的范围103
6.1.2规划工作流107
6.2利用Kubernetes构建Hue平台107
6.2.1有效使用kubectl107
6.2.2理解kubectl资源配置文件108
6.2.3在Pod中部署长时间运行的微服务110
6.3内外部服务分离114
6.3.1部署内部服务114
6.3.2创建Hue-reminders服务115
6.3.3从外部公开服务116
6.4使用命名空间限制访问118
6.5启动Job120
6.5.1并行运行作业121
6.5.2清理已完成的作业122
6.5.3调度计划作业122
6.6kubectl获得Pod123
6.7混合非集群组件124
6.7.1集群网络外部组件124
6.7.2集群网络内部组件125
6.7.3用Kubernetes管理Hue平台125
6.7.4使用就绪探针管理依赖126
6.8为有序启动Pod采用初始容器127
6.9用Kubernetes进化Hue平台129
6.9.1Hue在企业中的运用129
6.9.2用Hue推进科学129
6.9.3用Hue实施教育129
6.10总结129
第7章管理Kubernetes存储131
7.1持久存储卷指导131
7.1.1存储卷131
7.1.2创建持久存储卷135
7.1.3持续存储卷声明137
7.1.4按使用存储卷挂载声明138
7.1.5存储类139
7.1.6从端到端演示持久存储卷140
7.2公共存储卷类型——GCE、AWS和Azure144
7.2.1AWS弹性块存储(EBS)144
7.2.2AWS弹性文件系统(EFS)145
7.2.3GCE持久化磁盘145
7.2.4Azure数据盘146
7.2.5Azure文件存储147
7.3Kubernetes中的GlusterFS和Ceph存储卷148
7.3.1使用GlusterFS148
7.3.2使用Ceph151
7.4Flocker作为集群容器数据存储卷管理器153
7.5将企业存储集成到Kubernetes155
7.6总结156
第8章使用Kubernetes运行有状态的应用程序157
8.1Kubernetes中的有状态与无状态应用157
8.1.1理解分布式数据密集型应用的本质157
8.1.2为什么在Kubernetes中管理状态158
8.1.3为什么在Kubernetes以外管理状态158
8.2共享环境变量与DNS记录158
8.2.1通过DNS访问外部数据存储159
8.2.2通过环境变量访问外部数据存储159
8.2.3使用冗余内存状态161
8.2.4使用DaemonSet进行冗余持久存储161
8.2.5应用持久存储卷声明161
8.2.6利用有状态服务集162
8.3在Kubernetes运行Cassandra集群163
8.3.1Cassandra快速入门164
8.3.2CassandraDocker镜像164
8.3.3连接Kubernetes和Cassandra169
8.3.4创建Cassandra无源服务172
8.3.5使用有状态服务集创建Cassandra集群172
8.3.6使用副本控制器分布Cassandra176
8.3.7利用DaemonSet分布Cassandra179
8.4总结180
第9章滚动更新、可伸缩性和配额181
9.1水平Pod自动伸缩181
9.1.1声明水平Pod自动伸缩器182
9.1.2自定义度量183
9.1.3使用Kubectl自动伸缩185
9.2用自动伸缩进行滚动更新187
9.3用限制和配额处理稀缺资源188
9.3.1启用资源配额189
9.3.2资源配额类型189
9.3.3配额范围191
9.3.4请求与限制192
9.3.5使用配额192
9.4选择与管理集群性能197
9.4.1选择节点类型197
9.4.2选择存储解决方案197
9.4.3交易成本与响应时间198
9.4.4有效使用多节点配置198
9.4.5利用弹性云资源198
9.4.6考虑Hyper.sh200
9.5挑战Kubernetes性能极限200
9.5.1提高Kubernetes的性能和可扩展性201
9.5.2测量Kubernetes的性能和可伸缩性202
9.5.3按规模测试Kubernetes205
9.6总结206
0章不错Kubernetes网络207
10.1理解Kubernetes网络模型207
10.1.1容器内通信(容器-容器)207
10.1.2Pod间通信(Pod-Pod)208
10.1.3Pod-服务通信208
10.1.4外部访问208
10.1.5Kubernetes网络与Docker网络209
10.1.6查找与发现210
10.1.7Kubernetes网络插件212
10.2Kubernetes网络解决方案217
10.2.1裸金属集群桥接217
10.2.2Contiv218
10.2.3OpenvSwitch218
10.2.4Nuage网络VCS219
10.2.5Canal219
10.2.6Flannel220
10.2.7Calico工程221
10.2.8Romana222
10.2.9WeaveNet222
10.3有效使用网络策略223
10.4负载均衡选项224
10.4.1外部负载均衡器225
10.4.2服务负载均衡器228
10.4.3入口228
10.5编写自己的CNI插件231
10.6总结236
1章在云平台和集群联邦中运行Kubernetes237
11.1理解集群联邦237
11.1.1集群联邦的重要用例238
11.1.2联邦控制平面240
11.1.3联邦资源241
11.1.4高难度部分245
11.2管理Kubernetes集群联邦248
11.3从底层建立集群联邦248
11.3.1初始设置249
11.3.2使用官方hyperkube镜像249
11.3.3运行联邦控制平面249
11.3.4用联邦注册Kubernetes集群250
11.3.5更新KubeDNS251
11.3.6关闭联邦251
11.3.7用Kubefed建立集群联邦251
11.4运行联邦工作负载257
11.4.1创建联邦服务257
11.4.2添加后端Pod258
11.4.3验证公共DNS记录258
11.4.4发现联邦服务259
11.4.5后端Pod和整个集群的故障处理261
11.4.6故障排除261
11.5总结262
2章自定义KubernetesAPI和插件264
12.1使用KubernetesAPI264
12.1.1理解OpenAPI264
12.1.2设置代理265
12.1.3直接探索KubernetesAPI265
12.1.4通过KubernetesAPI创建Pod268
12.1.5通过Python客户端访问KubernetesAPI269
12.2扩展KubernetesAPI275
12.2.1理解第三方资源的结构276
12.2.2开发第三方资源276
12.2.3整合第三方资源277
12.3编写Kubernetes插件278
12.4编写授权插件284
12.4.1编写准入控制接口284
12.4.2编写自定义度量插件287
12.4.3编写卷插件288
12.5总结291
3章操作Kubernetes软件包管理器292
13.1理解Helm292
13.1.1Helm的动机292
13.1.2Helm架构293
13.1.3Helm组件293
13.1.4Helm与Helm-Classic294
13.2使用Helm294
13.2.1安装Helm294
13.2.2寻找图表295
13.2.3安装包297
13.2.4使用安装包库302
13.2.5使用Helm管理图表303
13.3创建自己的图表304
13.3.1Chart.yaml文件304
13.3.2图表元数据文件306
13.3.3管理图表依赖306
13.3.4使用模板和值309
13.4总结312
4章Kubernetes的未来313
14.1未来发展道路313
14.1.1Kubernetes的发行版和里程碑313
14.1.2Kubernetes的特别兴趣小组和工作组314
14.2面临的挑战314
14.2.1捆绑价值314
14.2.2DockerSwarm315
14.2.3Mesos/Mesosphere315
14.2.4云平台315
14.2.5AWS315
14.2.6Azure316
14.2.7阿里云316
14.3Kubernetes势头316
14.3.1社区316
14.3.2GitHub316
14.3.3会议316
14.3.4思维共享317
14.3.5生态系统317
14.3.6公有云提供商317
14.4教育和培训318
14.5动态插件318
14.6总结319
内容摘要
本书通过理论与实践相结合,多方面地介绍Kubernetes这一容器编排的理想工具。本书共14章,涉及的主题包括理解Kubernetes架构,创建Kubernetes集群,监控、日志记录和故障排除,高可用性和可靠性,配置Kubernetes安全、和账户,使用关键Kubernetes资源,管理Kubernetes存储,使用Kubernetes运行有状态应用程序,滚动更新、可伸缩性和配额,不错Kubernetes网络,在云平台和集群联邦中运行Kubernetes,自定义Kubernetes API和插件,操作Kubernetes软件包管理器以及Kubernetes的未来。本书综合考虑不同环境和用例,使读者了解如何创建大型系统并将其部署在Kubernetes上。在各章节主题中,读者提供了丰富的实践案例分析,娓娓道来,引人入胜。本书可以作为Kubernetes的实践参考手册,聚焦于设计和管理Kubernetes集群,为开发人员、运维工程师详细介绍了Kubernetes所提供的功能和服务。
— 没有更多了 —
以下为对购买帮助不大的评价