猜你喜欢
Kubernetes云原生数据管理

Kubernetes云原生数据管理

书籍作者:Jeff ISBN:9787121470059
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:2506
创建日期:2024-05-11 发布日期:2024-05-11
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介
本书围绕 Kubernetes 云原生数据基础设施,介绍了如何通过 Kubernetes 管理数据存储,如何通过 Helm 和 Operator 在 Kubernetes 上自动部署和管理数据库,阐述了数据流式传输和数据分析的过程,探讨了在机器学习及其他新兴用例中如何使用 Kubernetes 云原生数据等。本书不仅深入阐述了云原生基础设施的发展历程和处理方式,而且分门别类地为每个场景提供了可以直接运行的示例代码,以便读者学习和练习。本书结构与英文原版保持一致,是 DaoCloud 云原生数据存储专家经反复校对后提供的译本。本书适合从事云端设计、构建和运行应用的开发人员,以及架构师和云原生工程师。无论你是Kubernetes 数据存储方面的“新手”还是有经验的“老兵”,相信本书都能让你有所受益。
作者简介
Jeff Carpenter 是一位软件工程师和架构师,在多个行业拥有丰富的从业经历。作为一名开发人员倡导者,他致力于帮助其他工程师使用 Cassandra。除此之外,Jeff Carpenter还积极参与 Cassandra 和 Kubernetes 生态系统中多个开源项目的开发,其中包括 Stargate和 K8ssandra。同时,他还与他人合著了《Cassandra :权威指南》一书。Patrick McFadin 是一位分布式系统黑客,自从他将调制解调器插入 Atari 计算机以来就致力于该领域。为追求冒险,他加入了美国海军,并参与了海军战术数据系统(NTDS)的开发,这进一步激发了他对分布式系统的热情。在 20 世纪 90 年代,互联网快速崛起时,他开始从事基础设施工作,后来差点因为互联网泡沫危机而失去生计来源。其间,Patrick 获得了加州州立理工大学圣路易斯奥比斯波分校的计算机工程学位,并专注于高规模互联网基础设施的研究。目前,他热衷于分布式数据系统的研究,并且自 2011 年以来始终是 Cassandra 项目的稳定贡献者。
「DaoCloud 道客」成立于 2014 年底,公司拥有自主知识产权的核心技术,致力于打造开放的云操作系统为实体经济赋能,推动传统企业完成数字化转型。成立迄今,公司已在金融科技、先进制造、智能汽车、零售网点、城市大脑等多个领域深耕,标杆客户包括交通银行、浦发银行、上汽集团、格力集团、京东方、屈臣氏集团等。是国家级专精特新“小巨人”企业、被誉为科技领域准独角兽企业。
目录
序....................................................................................xv
前言................................................................................xix
第 1 章 云原生数据基础设施 :持久化、流式传输与批量分析.............. 1
基础设施类型 ................................................................................................................2
云原生数据是什么 .........................................................................................................3
数据基础设施越多,问题越多 ......................................................................................5
Kubernetes 引领潮流......................................................................................................6
Kubernetes 计算管理 ..............................................................................................7
Kubernetes 网络管理 ..............................................................................................8
Kubernetes 存储管理 ..............................................................................................8
云原生数据组件 .............................................................................................................9
迎接变革 ...................................................................................................................... 11
采用 SRE 思维方式 .............................................................................................. 11
遵循云原生数据基础设施准则 ............................................................................. 13
小结 ............................................................................................................................. 15
第 2 章 通过 Kubernetes 管理数据存储................................... 16
Docker,容器和状态 ................................................................................................... 16
在 Docker 中管理状态 .......................................................................................... 17
ix
绑定挂载 .............................................................................................................. 18
卷 ......................................................................................................................... 19
Tmpfs 挂载 ........................................................................................................... 20
卷驱动程序........................................................................................................... 20
Kubernetes 数据存储资源 ............................................................................................ 22
Pod 和卷 ............................................................................................................... 22
PV ........................................................................................................................ 28
PVC ...................................................................................................................... 32
StorageClass ......................................................................................................... 35
Kubernetes 存储架构.................................................................................................... 37
Flexvolume ........................................................................................................... 37
CSI ....................................................................................................................... 38
CAS ...................................................................................................................... 40
COSI .................................................................................................................... 42
小结 ............................................................................................................................. 44
第 3 章 打造 Kubernetes 数据库........................................... 45
困难模式 ...................................................................................................................... 45
在 Kubernetes 上运行数据基础设施的前提 ................................................................. 46
在 Kubernetes 上运行 MySQL ..................................................................................... 47
ReplicaSet .................................................................................................................... 48
Deployment .......................................................................................................... 49
Service .................................................................................................................. 53
访问 MySQL......................................................................................................... 56
在 Kubernetes 上运行 Apache Cassandra ..................................................................... 58
StatefulSet ............................................................................................................ 60
访问 Cassandra ..................................................................................................... 70
小结 ............................................................................................................................. 72
第 4 章 通过 Helm 在 Kubernetes 上自动部署数据库.................. 73
通过 Helm Chart 部署应用 ........................................................................................... 74
通过 Helm 部署 MySQL .............................................................................................. 75
Helm 的工作方式 ................................................................................................. 78
Label .................................................................................................................... 80
ServiceAccount ..................................................................................................... 81
Secret.................................................................................................................... 81
ConfigMap ............................................................................................................ 82
更新 Helm Chart ................................................................................................... 84
卸载 Helm Chart ................................................................................................... 85
使用 Helm 部署 Apache Cassandra .............................................................................. 85
亲和性与反亲和性 ............................................................................................... 87
Helm、CI/CD 及 Operator .................................................................................... 90
小结 ............................................................................................................................. 92
第 5 章 通过 Operator 自动管理 Kubernetes 数据库...................93
扩展 Kubernetes 控制平面 ........................................................................................... 94
扩展 Kubernetes 客户端 ....................................................................................... 94
扩展 Kubernetes 主节点组件 ................................................................................ 95
扩展 Kubernetes 工作节点组件 ............................................................................ 96
Operator 模式 ............................................................................................................... 97
控制器 .................................................................................................................. 97
自定义资源........................................................................................................... 99
Operator ............................................................................................................. 101
使用 Vitess Operator 管理 Kubernetes MySQL .......................................................... 103
Vitess 概述 ......................................................................................................... 103
PlanetScale Vitess Operator ................................................................................ 106
不断发展的 Operator 生态体系 .................................................................................. 116
选择 Operator ..................................................................................................... 116
构建 Operator ..................................................................................................... 119
小结 ........................................................................................................................... 121
第 6 章 在 Kubernetes 上集成数据基础设施............................ 123
K8ssandra:生产就绪的 Kubernetes 上的 Cassandra ................................................. 123
K8ssandra 架构 ................................................................................................... 124
安装 K8ssandra Operator .................................................................................... 125
创建 K8ssandraCluster ....................................................................................... 128
使用 Cass Operator 在 Kubernetes 上管理 Cassandra ................................................. 130
使用 Stargate API 提高开发人员的工作效率 ............................................................. 134
基于 Prometheus 和 Grafana 的统一监控基础设施 .................................................... 136
使用 Cassandra Reaper 进行修复 ............................................................................... 140
使用 Cassandra Medusa 进行数据备份与恢复 ........................................................... 142
创建备份 ............................................................................................................ 143
备份恢复 ............................................................................................................ 144
在 Kubernetes 上部署多集群应用 .............................................................................. 145
小结 ........................................................................................................................... 151
第 7 章 Kubernetes 原生数据库.......................................... 152
为什么需要 Kubernetes 原生方式 .............................................................................. 152
使用 TiDB 进行大规模混合数据访问 ........................................................................ 154
TiDB 架构 .......................................................................................................... 155
在 Kubernetes 上部署 TiDB................................................................................ 157
配置 DataStax Astra DB 的无服务器 Cassandra ......................................................... 165
在 Kubernetes 原生数据库中寻找什么....................................................................... 172
基本要求 ............................................................................................................ 172
Kubernetes 原生技术的未来 ............................................................................... 174
小结 ........................................................................................................................... 176
第 8 章 Kubernetes 数据流式传输........................................ 177
流式传输简介 ............................................................................................................ 177
传输类型 ............................................................................................................ 178
传输保证 ............................................................................................................ 179
功能范围 ............................................................................................................ 180
流式传输在 Kubernetes 上的作用 .............................................................................. 181
通过 Apache Pulsar 在 Kubernetes 上实现流式传输 .................................................. 183
准备环境 ............................................................................................................ 186
使用 cert-manager 配置默认的安全通信 .................................................................... 188
通过 Helm 部署 Apache Pulsar ........................................................................... 192
通过 Apache Flink 进行流分析 .................................................................................. 192
在 Kubernetes 上部署 Apache Flink ................................................................... 195
小结 ........................................................................................................................... 197
第 9 章 Kubernetes 数据分析.............................................198
数据分析简介 ............................................................................................................ 199
在 Kubernetes 上部署分析工作负载 .......................................................................... 200
Apache Spark 简介 ..................................................................................................... 203
在 Kubernetes 上部署 Apache Spark .......................................................................... 204
构建自定义容器 ................................................................................................. 206
提交并运行应用 ................................................................................................. 206
Apache Spark 专用的 Kubernetes Operator ................................................................ 207
Kubernetes 调度器替代品 .......................................................................................... 210
Apache YuniKorn ................................................................................................ 212
Volcano ............................................................................................................... 214
Kubernetes 专用分析引擎 .......................................................................................... 217
Dask ................................................................................................................... 219
Ray ..................................................................................................................... 221
小结 ........................................................................................................................... 223
第 10 章 机器学习及其他新兴用例..........................................224
云原生 AI/ML 技术栈 ................................................................................................ 224
AI/ML 定义 ........................................................................................................ 225
定义 AI/ML 技术栈 ............................................................................................ 227
使用 KServe 进行实时模型服务 ......................................................................... 228
使用 Feast 进行特征的全生命周期管理 ............................................................. 231
使用 Milvus 进行向量相似度搜索 ..................................................................... 234
使用 Apache Arrow 实现高效的数据移动 .................................................................. 236
使用 lakeFS 管理对象存储的版本 ............................................................................. 239
小结 ........................................................................................................................... 242
第 11 章 将数据工作负载迁移到 Kubernetes 上........................244
愿景:应用感知平台 ................................................................................................. 244
描绘成功的蓝图 ......................................................................................................... 246
人员 .................................................................................................................... 247
技术 .................................................................................................................... 250
流程 .................................................................................................................... 256
云原生数据的未来 ..................................................................................................... 261
小结 ........................................................................................................................... 264
关于作者..........................................................................266
关于封面..........................................................................266