![]()
内容推荐 Knative是由谷歌发起的,它的目标是基于Kubernetes为整个开发生命周期提供帮助。 本书介绍了如何在实际的企业应用程序开发过程中使用Knative。本书首先介绍了如何有效地构建、部署和管理现代Serverless工作负载;然后讲解了在实际的企业场景中应用Knative(包括高级事件)的方法;接着介绍了如何有效监控Knative Serverless应用程序;之后介绍了将Knative与CI CD原则集成的方法,例如使用channel(管道)进行更快、更成功的生产部署。本书共有7章,从多个方面介绍了Knative在Kubernetes中的应用。 本书适合对Kubernetes核心概念有深入了解并希望通过Knative构建实际应用程序的架构师和开发人员阅读。 作者简介 伯尔·萨特(Burr Sutter),是Red Hat 的技术总监、终生开发的倡导者、社区组织者、布道师,他还在多项全球技术活动中担任特邀发言人。他创立的DevNexus会议已成为美国第二大Java 技术交流活动。 目录 前言 第1章 Knative入门 1.1 安装相关工具 1.1.1 问题 1.1.2 解决方案 1.1.3 讨论 1.2 搭建Kubernetes集群 1.2.1 问题 1.2.2 解决方案 1.2.3 讨论 1.3 安装私有Kubernetes镜像仓库 1.3.1 问题 1.3.2 解决方案 1.3.3 讨论 1.4 配置私有镜像仓库别名 1.4.1 问题 1.4.2 解决方案 1.4.3 讨论 1.5 安装Istio 1.5.1 问题 1.5.2 解决方案 1.5.3 讨论 1.6 安装Knative 1.6.1 问题 1.6.2 解决方案 1.6.3 讨论 1.7 验证容器环境 1.7.1 问题 1.7.2 解决方案 1.7.3 讨论 1.8 为本书中的示例创建Kubernetes命名空间 1.9 查询Kubernetes资源 第2章 理解Knative服务模块 2.1 Knative Service部署模型 2.2 部署Knative Service 2.2.1 问题 2.2.2 解决方案 2.2.3 讨论 2.3 更新Knative配置 2.3.1 问题 2.3.2 解决方案 2.3.3 讨论 2.4 设置Knative Service版本间分流 2.4.1 问题 2.4.2 解决方案 2.4.3 讨论 2.5 蓝绿发布 2.5.1 问题 2.5.2 解决方案 2.5.3 讨论 2.6 金丝雀发布 2.6.1 问题 2.6.2 解决方案 2.6.3 讨论 第3章 Knative自动扩缩容 3.1 配置Knative Service自动扩缩容 3.1.1 问题 3.1.2 解决方案 3.1.3 讨论 3.2 观察缩容到零功能 3.2.1 问题 3.2.2 解决办法 3.2.3 讨论 3.3 配置Knative Service以处理突发请求 3.3.1 问题 3.3.2 解决方案 3.3.3 讨论 3.4 冷启动延时 3.4.1 问题 3.4.2 解决方案 3.4.3 讨论 第4章 Knative事件模块 4.1 使用方法 4.2 使用事件源产生事件 4.2.1 问题 4.2.2 解决方案 4.2.3 讨论 4.3 使用Knative事件接收器接收事件 4.3.1 问题 4.3.2 解决方案 4.3.3 讨论 4.4 部署Knative事件服务 4.4.1 问题 4.4.2 解决方案 4.4.3 讨论 4.5 连接事件源和服务 4.5.1 问题 4.5.2 解决方案 4.5.3 讨论 4.6 部署Apache Kafka集群 4.6.1 问题 4.6.2 解决方案 4.6.3 讨论 4.7 使用Knative事件模块处理Apache Kafka事件 4.7.1 问题 4.7.2 解决方案 4.7.3 讨论 4.8 使用Knative事件模块处理Apache Kafka消息的自动扩容 4.8.1 问题 4.8.2 解决方案 4.8.3 讨论 4.9 使用Kafka管道作为默认的Knative管道的后端 4.9.1 问题 4.9.2 解决方案 4.9.3 讨论 4.10 使用Knative的管道和订阅 4.10.1 问题 4.10.2 解决方案 4.10.3 讨论 4.11 使用Knative事件模块的代理和触发器 4.11.1 问题 4.11.2 解决方案 4.11.3 讨论 第5章 可观测性 5.1 部署Prometheus和Grafana 5.1.1 问题 5.1.2 解决方案 5.1.3 讨论 5.2 使用Prometheus收集指标 5.2.1 问题 5.2.2 解决方案 5.2.3 讨论 5.3 安装Jaeger 5.3.1 问题 5.3.2 解决方案 5.3.3 讨论 5.4 部署可观测的测试服务 5.4.1 问题 5.4.2 解决方案 5.4.3 讨论 5.5 自定义kubectl输出列 5.5.1 问题 5.5.2 解决方案 5.5.3 讨论 5.6 限制Knative Service的可见性 5.6.1 问题 5.6.2 解决方案 5.6.3 讨论 5.7 Grafana界面 5.8 监控Knative Service的自动扩缩容指标 5.8.1 问题 5.8.2 解决方案 5.8.3 讨论 5.9 监控Knative Service的HTTP性能 5.9.1 问题 5.9.2 解决方案 5.9.3 讨论 5.10 使用Jaeger追踪Knative Service 5.10.1 问题 5.10.2 解决方案 5.10.3 讨论 第6章 使用Apache Camel-K集成Serverless模式 6.1 使用Camel-K集成Serverless模式 6.1.1 问题 6.1.2 解决方案 6.1.3 讨论 6.2 配置Camel-K使服务构建更快 6.2.1 问题 6.2.2 解决方案 6.2.3 讨论 6.3 构建Camel-K集成 6.3.1 问题 6.3.2 解决方案 6.3.3 讨论 6.4 运行Camel-K集成作为Knative Serverless 6.4.1 问题 6.4.2 解决方案 6.4.3 讨论 6.5 在Knative事件模块中使用Camel 6.5.1 问题 6.5.2 解决方案 6.5.3 讨论 6.6 记录并展示CloudEvents消息 6.6.1 问题 6.6.2 解决方案 6.6.3 讨论 6.7 配置CamelSource到Knative事件模块接收器 6.7.1 问题 6.7.2 解决方案 6.7.3 讨论 6.8 使用Camel-K |