Kubernetes实战:构建生产级应用平台

Kubernetes实战:构建生产级应用平台

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

本书内容包含关于Kubernetes的大型知识框架,帮助你使用Kubernetes构建一个生产级的应用平台。

内容简介

本书探讨了通往Kubernetes生产环境成功道路中所涉及的多种技术、模式和抽象方面的考虑与权衡。

主要内容包括基于Kubernetes构建应用平台、部署模型、容器运行时、容器存储、Pod、服务路由、密码管理、准入控制、可观测性、身份认证、构建平台服务、多租户问题、工作负载的自动缩放、在Kubernetes上运行应用程序时应该考虑的各种注意事项、在Kubernetes上从开发人员获取代码到生产的实际过程以及平台抽象。

章节目录

版权信息

O’Reilly Media, Inc.介绍

推荐序

序言

前言

第1章 生产环境构建之路

1.1 Kubernetes的定位

1.1.1 核心组件

1.1.2 服务编排之外的扩展功能

1.1.3 Kubernetes接口

1.1.4 小结

1.2 定义应用平台

1.2.1 方法的选型

1.2.2 对需求进行取舍

1.2.3 小结

1.3 基于Kubernetes构建应用平台

1.3.1 从基础开始

1.3.2 抽象频谱

1.3.3 选择平台服务

1.3.4 构建模块

1.4 总结

第2章 部署模型

2.1 托管服务对比自建服务

2.1.1 托管服务

2.1.2 自建服务

2.1.3 做出决定

2.2 自动化

2.2.1 预制的安装程序

2.2.2 自定义自动化

2.3 架构和拓扑结构

2.3.1 etcd的部署模式

2.3.2 集群分层

2.3.3 节点池

2.3.4 集群联邦

2.4 基础设施

2.4.1 裸机与虚拟化

2.4.2 集群的大小

2.4.3 计算基础设施

2.4.4 网络基础设施

2.4.5 自动化策略

2.5 机器安装

2.5.1 配置管理工具

2.5.2 机器镜像

2.5.3 安装什么

2.6 容器化组件

2.7 附加组件

2.8 升级

2.8.1 平台的版本控制

2.8.2 失败计划

2.8.3 集成测试

2.8.4 策略

2.9 触发机制

2.10 总结

第3章 容器运行时

3.1 容器的出现

3.2 开放容器倡议

3.2.1 OCI运行时规范

3.2.2 OCI镜像规范

3.3 容器运行时接口

3.3.1 启动Pod

3.4 选择容器运行时

3.4.1 Docker

3.4.2 containerd

3.4.3 CRI-O

3.4.4 Kata Containers

3.4.5 Virtual Kubelet

3.5 总结

第4章 容器存储

4.1 存储注意事项

4.1.1 访问模式

4.1.2 卷的扩展

4.1.3 卷的配置

4.1.4 备份和恢复

4.1.5 块设备、文件存储和对象存储

4.1.6 临时数据

4.1.7 选择一个存储服务商

4.2 Kubernetes存储基元

4.2.1 持久卷和声明

4.2.2 存储类

4.3 容器存储接口

4.3.1 CSI控制器

4.3.2 CSI节点

4.4 实现存储即服务

4.4.1 安装

4.4.2 存储选项

4.4.3 消费存储

4.4.4 调整大小

4.4.5 快照

4.5 总结

第5章 Pod网络通信

5.1 网络因素

5.1.1 IP地址管理

5.1.2 路由协议

5.1.3 封装和隧道

5.1.4 工作负载可路由性

5.1.5 IPv4和IPv6

5.1.6 加密的工作负载流量

5.1.7 网络策略

5.1.8 小结

5.2 容器网络接口

5.2.1 CNI安装

5.3 CNI插件

5.3.1 Calico

5.3.2 Cilium

5.3.3 AWS VPC CNI

5.3.4 Multus

5.3.5 其他插件

5.4 总结

第6章 服务路由

6.1 Kubernetes Service

6.1.1 Service抽象

6.1.2 Endpoints

6.1.3 Service实施细节

6.1.4 服务发现

6.1.5 DNS服务性能

6.2 Ingress

6.2.1 Ingress的案例

6.2.2 Ingress API

6.2.3 Ingress控制器和它们的工作方式

6.2.4 Ingress流量模式

6.2.5 选择一个Ingress控制器

6.2.6 Ingress控制器的部署考虑因素

6.2.7 DNS及其在Ingress中的作用

6.2.8 处理TLS证书

6.3 服务网格

6.3.1 何时不使用服务网格

6.3.2 服务网格接口

6.3.3 数据平面代理

6.3.4 Kubernetes上的服务网格

6.3.5 数据平面架构

6.3.6 采用服务网格

6.4 总结

第7章 秘密管理

7.1 深度防御

7.1.1 磁盘加密

7.1.2 传输安全

7.1.3 应用加密

7.2 Kubernetes Secret API

7.2.1 秘密的消费模式

7.2.2 etcd中的秘密数据

7.2.3 静态密钥加密

7.2.4 信封加密

7.3 外部服务商

7.3.1 Vault

7.3.2 Cyberark

7.3.3 注入集成

7.3.4 CSI集成

7.4 声明式世界中的秘密

7.4.1 封存秘密

7.4.2 封闭式秘密控制器

7.4.3 密钥更新

7.4.4 多集群模型

7.5 秘密的最佳实践

7.5.1 始终审计秘密交互

7.5.2 不要泄密

7.5.3 优先选择挂载卷而不是环境变量

7.5.4 使秘密存储服务商对你的应用程序未知

7.6 总结

第8章 准入控制

8.1 Kubernetes的准入链

8.2 树内准入控制器

8.3 webhook

8.3.1 配置webhook准入控制器

8.3.2 webhook设计注意事项

8.4 如何编写变更webhook

8.4.1 纯HTTPS处理器

8.4.2 控制器运行时

8.5 集中式策略系统

8.6 总结

第9章 可观测性

9.1 日志记录机制

9.1.1 容器日志处理

9.1.2 Kubernetes审计日志

9.1.3 Kubernetes事件

9.1.4 基于日志告警

9.1.5 安全影响

9.2 指标

9.2.1 Prometheus

9.2.2 长期存储

9.2.3 指标推送

9.2.4 自定义指标

9.2.5 组织和联邦

9.2.6 告警

9.2.7 showback和chargeback

9.2.8 指标组件

9.3 分布式追踪

9.3.1 OpenTracing和OpenTelemetry

9.3.2 追踪组件

9.3.3 应用程序测量

9.3.4 服务网格

9.4 总结

第10章 身份认证

10.1 用户身份

10.1.1 身份验证方法

10.1.2 为用户提供最小权限

10.2 应用程序/工作负载的身份

10.2.1 密钥共享

10.2.2 网络身份

10.2.3 服务账户令牌

10.2.4 投射服务账户令牌

10.2.5 平台中介节点身份

10.3 总结

第11章 构建平台服务

11.1 扩展点

11.1.1 插件扩展

11.1.2 webhook扩展

11.1.3 operator扩展

11.2 operator模式

11.2.1 Kubernetes控制器

11.2.2 自定义资源

11.3 operator用例

11.3.1 平台工具

11.3.2 通用工作负载operator

11.3.3 应用定制operator

11.4 开发operator

11.4.1 operator开发工具

11.4.2 数据模型设计

11.4.3 逻辑实现

11.5 扩展调度器

11.5.1 predicate和priority

11.5.2 调度策略

11.5.3 调度配置文件

11.5.4 多个调度器

11.5.5 自定义调度器

11.6 总结

第12章 多租户

12.1 隔离的等级

12.1.1 单租户集群

12.1.2 多租户集群

12.2 命名空间边界

12.3 Kubernetes中的多租户

12.3.1 基于角色的访问控制

12.3.2 资源配额

12.3.3 准入webhook

12.3.4 资源请求和限制

12.3.5 网络策略

12.3.6 Pod安全策略

12.3.7 多租户平台服务

12.4 总结

第13章 自动缩放

13.1 缩放类型

13.2 应用程序架构

13.3 工作负载自动缩放

13.3.1 Pod水平自动缩放器

13.3.2 Pod垂直自动缩放器

13.3.3 使用自定义指标进行自动缩放

13.3.4 集群比例自动缩放器

13.3.5 自定义自动缩放

13.4 集群自动缩放

13.4.1 集群过量配置

13.5 总结

第14章 应用程序注意事项

14.1 将应用程序部署到Kubernetes

14.1.1 部署清单模板化

14.1.2 为Kubernetes应用程序打包

14.2 摄取配置和秘密

14.2.1 Kubernetes的ConfigMap和Secret

14.2.2 从外部系统获取配置

14.3 处理重新安排事件

14.3.1 预停止容器生命周期hook

14.3.2 正常关闭容器

14.3.3 满足可用性要求

14.4 状态探测器

14.4.1 存活探测器

14.4.2 就绪探测器

14.4.3 启动探测器

14.4.4 实现探测器

14.5 Pod资源请求和限制

14.5.1 资源请求

14.5.2 资源限制

14.6 应用程序日志

14.6.1 记录什么

14.6.2 非结构化日志与结构化日志

14.6.3 日志中的上下文信息

14.7 公开指标

14.7.1 适配应用程序

14.7.2 USE方法

14.7.3 RED方法

14.7.4 四个黄金信号

14.7.5 特定于应用程序的指标

14.8 为分布式追踪适配服务

14.8.1 初始化追踪器

14.8.2 创建跨度

14.8.3 传播上下文

14.9 总结

第15章 软件供应链

15.1 构建容器镜像

15.1.1 黄金基础镜像反模式

15.1.2 选择基础镜像

15.1.3 运行时用户

15.1.4 固定软件包版本

15.1.5 构建与运行时镜像

15.1.6 Cloud Native Buildpacks

15.2 镜像注册表

15.2.1 漏洞扫描

15.2.2 隔离工作流

15.2.3 镜像签名

15.3 持续交付

15.3.1 将构建集成到管道中

15.3.2 基于推送的部署

15.3.3 展开模式

15.3.4 GitOps

15.4 总结

第16章 平台抽象

16.1 平台曝光

16.2 自助式上线服务

16.3 抽象频谱

16.3.1 命令行工具

16.3.2 通过模板抽象

16.3.3 抽象Kubernetes基元

16.3.4 使Kubernetes不可见

16.4 总结

关于作者

关于封面

Kubernetes实战:构建生产级应用平台是2022年由机械工业出版社华章分社出版,作者[美] 乔希·罗索。

得书感谢您对《Kubernetes实战:构建生产级应用平台》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
OpenStack云平台部署与高可用实战 电子书
OpenStack目前获得了很多大公司的广泛支持,不仅能够搭建私有云,而且也能够搭建公有云。全书主要内容包括:OpenStsck入门体验、OpenStsck常见模块详解、OpenStsck云平台管理、搭建OpenStsck多节点的企业私有云平台等。
新媒体平台运营实战从入门到精通 电子书
本书结构清晰,内容精炼,适合从事企业营销和新媒体营销的人员使用,可作为院校市场营销类、企业管理类、商务贸易类专业的课程教材。
鸿蒙应用开发实战 电子书
本书为华为鸿蒙系统HarmonyOS开发图书,以JavaScript为开发语言,提供完整源代码。
Kubernetes从入门到实践 电子书
结合示例代码,系统讲述Kubernetes的主要功能和核心组件,有助于读者迅速提升运维技能。
OpenStack云计算基础架构平台技术与应用 电子书
本书较为全面地介绍了开源的OpenStack云计算架构及其组件,并借助开源脚本搭建形成一个完整的云平台。全书共分为认识OpenStack、环境设计和系统准备、认证服务、基础控制服务、网络服务、虚拟化服务、存储服务、控制服务和平台构建脚本解读等9个项目。本书可以作为云计算技术与应用专业、计算机网络技术专业及其他计算机相关专业的云计算课程教材,也可以作为云计算相关的培训班教材,还可供云计算相关从业人员