书籍详情

Knative最佳实践

Knative最佳实践

作者:[澳] Jacques Chester 著,赵吉壮,杨云锋 译

出版社:电子工业出版社

出版时间:2022-07-01

ISBN:9787121436086

定价:¥118.00

购买这本书可以去
内容简介
  Serverless是一种云原生开发模型,它使得开发人员可以专注于构建和运行应用,而无须管理服务器。Knative是继云原生之后,云时代下一个十年技术的Serverless架构,开发者应如何拥抱这一全新的技术架构?本书将给读者带来答案。 Knative是Google发起的,基于Kubernetes构建的Serverless开源项目,Google内部的 CloudRun就是基于Knative构建的Serverless平台。本书主要通过一个计数器示例在Knative中的实践展开描述,详细讲解了Knative 的服务与事件驱动,以及在企业应用中如何利用Knative实现自动扩/缩容、事件驱动、灰度发布等。本书内容翔实、讲解深入浅出、语言诙谐幽默,对于想了解、学习与研究Knative或者Serverless 的读者来说,是一本大有裨益的参考书。 本书适合的读者有云原生从业者、Serverless架构师及开发人员,以及想深入了解Serverless的互联网从业人员。
作者简介
  雅克·切斯特(Jacques Chester)是VMware公司的一名工程师,(作者之前在Pivotal公司工作,后来VMware公司收购了Pivotal公司)。自2015年以来,他一直从事研发工作,为Knative等多个项目做出了贡献。在从事研发工作之前,雅克曾在Pivotal Labs担任软件咨询工程师。
目录
第1章 介绍

1.1 Knative是什么

1.1.1 部署、升级和流量路由

1.1.2 自动扩/缩容

1.1.3 事件模块

1.2 Knative能干什么

1.3 Knative的优势

1.3.1 具有不可预测性、延迟不敏感性的工作负载

1.3.2 合并多个事件源

1.3.3 微服务拆分

1.4 计数器应用

1.5 版本变更

1.6 Knative系统组件

1.6.1 服务模块

1.6.2 事件模块

1.6.3 服务模块和事件模块

1.7 Knative控制器

1.7.1 反馈控制

1.7.2 循环嵌套

1.8 准备好开始了吗

1.9 总结

第2章 Knative服务模块

2.1 演练

2.1.1 首个部署

2.1.2 第二个部署

2.1.3 状态

2.1.4 Active表示什么

2.1.5 修改镜像

2.1.6 分流

2.2 服务模块

2.2.1 控制器和协调器

2.2.2 网络钩子

2.2.3 网络控制器

2.2.4 自动缩放器、激活器和队列代理

2.3 总结

第3章 配置和修订

3.1 记录历史发布记录并对其进行发布

3.2 部署版本的概念

3.2.1 蓝/绿部署

3.2.2 金丝雀部署

3.2.3 渐进式部署

3.2.4 回到未来

3.3 剖析配置

3.3.1 配置的状态

3.3.2 通过kubectl describe查看配置

3.4 剖析修订版本

3.4.1 修订版本的基本概念

3.4.2 容器的基本概念

3.4.3 容器镜像

3.4.4 容器启动命令

3.4.5 直接设置环境变量

3.4.6 间接设置环境变量

3.4.7 通过文件来设置配置文件

3.4.8 健康检查

3.4.9 设置资源限制

3.4.10 容器的并发

3.4.11 超时时间

3.5 总结

第4章 路由

4.1 使用kn操作路由

4.2 剖析路由

4.3 剖析流量目标

4.3.1 配置名称和版本名称

4.3.2 最新版本

4.3.3 标签

4.4 总结

第5章 自动扩/缩容

5.1 自动扩/缩容问题

5.2 零实例下的自动扩/缩容

5.3 少量实例状态下的自动扩/缩容

5.4 大量实例状态下的自动扩/缩容

5.5 自动扩/缩容理论

5.5.1 控制回路

5.5.2 队列

5.6 扩/缩容算法

5.7 配置自动扩/缩容

5.7.1 配置是如何设置的

5.7.2 设置扩/缩容限制

5.7.3 设置扩/缩容比率

5.7.4 设置目标值

5.7.5 设置决定周期

5.7.6 设置窗口大小

5.7.7 设置恐慌阈值

5.7.8 设置目标突发容量

5.7.9 其他自动缩放器

5.8 警告

5.9 总结

第6章 事件模块

6.1 CloudEvents之路

6.2 剖析CloudEvents

6.2.1 必需属性

6.2.2 可选属性

6.2.3 扩展属性

6.3 事件格式和协议绑定那些事儿

6.3.1 结构化内容模式

6.3.2 二进制内容模式

6.3.3 批处理内容模式

6.4 演练

6.5 事件模块的基础架构

6.5.1 消息传递

6.5.2 事件

6.5.3 事件源

6.5.4 事件流

6.5.5 鸭子类型

6.6 总结

第7章 事件源和接收器

7.1 事件源

7.1.1 解析事件源

7.1.2 使用kn处理事件源

7.2 接收器

7.3 SinkBinding和ContainerSource

7.4 其他事件源

7.5 总结

第8章 过滤器和事件流

8.1 代理

8.2 过滤器

8.2.1 过滤自定义属性

8.2.2 事件模块提供的好东西

8.3 顺序事件

8.4 剖析顺序事件

8.4.1 步骤

8.4.2 回复

8.4.3 通道模板和通道

8.4.4 混合顺序事件和过滤器

8.5 并行事件

8.6 处理失败

8.6.1 重试和退避

8.6.2 死信消息

8.6.3 坏消息

8.7 总结

第9章 从概念到生产

9.1 将软件变成可运行的东西

9.1.1 使用摘要

9.1.2 使用云原生构建包和pack工具

9.2 将软件带到它运行的地方

9.3 了解软件是如何运行的

9.3.1 日志

9.3.2 指标

9.3.3 追踪

9.4 总结

附录A 安装kubectl和kn

附录B 安装Knative
猜您喜欢

读书导航