本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正
书名: | Knative实战:基于Kubernetes的无服务器架构实践|8078725 |
图书定价: | 89元 |
图书作者: | 李志伟 游杨 |
出版社: | 机械工业出版社 |
出版日期: | 2021/3/4 0:00:00 |
ISBN号: | 9787111675587 |
开本: | 16开 |
页数: | 282 |
版次: | 1-1 |
作者简介 |
李志伟 游杨 著:作者简介 李志伟 dd网云原生实验室负责人,容器云领域专家。在Kubernetes、Istio、Serverless、DevOps工具等领域有深入的研究和实践。热心于云原生技术的应用与推广,曾荣获“K8sMeetup中国社区”最受欢迎讲师奖项。 游杨 dd网云原生实验室高级运维开发工程师。先后参与Kubernetes和Knative项目的落地与实施工作,拥有丰富的容器平台实践经验,聚焦于Kubernetes、Serverless、CI/CD技术领域。 |
内容简介 |
本书从实战角度讲解了Knative的原理与开发。 全书正文一共11章,共4个部分: 一、准备篇(第1~2章) 全面介绍了Serverless,Knative的概念、优势、架构设计、工作原理,以及开发环境的搭建。 二、基础篇(第3~5章) 详细讲解了Knative的三大核心组件:Serving、Eventing和Tekton pipeline。 三、实战篇(第6~8章) 主要介绍了Knative的云原生微服务的设计与实现、Knative的FaaS实现,以及性能优化相关的主题。 四、扩展篇(第9~11章) 讲解了与Knative相关的日志中心、监控报警平台和可视化工具。 |
目录 |
前言 准备篇 第1章 全面认识Knative 2 1.1 Serverless的前世今生 2 1.1.1 Serverless简介 2 1.1.2 Serverless的主要特征 3 1.1.3 Serverless的优缺点 3 1.1.4 Serverless的发展现状 4 1.1.5 Serverless的使用场景 4 1.2 什么是Knative 4 1.2.1 Knative的产生背景及发展历程 5 1.2.2 Knative的架构设计 5 1.2.3 Knative的主要受众群 6 1.2.4 Knative的商业托管服务产品 7 1.3 Knative开发运维需要具备的基础知识 7 1.3.1 容器 7 1.3.2 Kubernetes 8 1.3.3 Istio 9 1.4 本章小结 10 第2章 搭建Knative运行环境 11 2.1 在Kubernetes平台上安装Knative 11 2.1.1 Istio平台的安装 12 2.1.2 安装Knative Serving组件 13 2.1.3 安装Knative Eventing组件 14 2.1.4 安装可观察性组件 14 2.2 部署HelloWorld应用 15 2.2.1 Serving Hello World范例 15 2.2.2 Eventing Hello World范例 16 2.3 本章小结 19 基础篇 第3章 Knative的服务管理组件Serving 22 3.1 Serving的架构设计 22 3.2 Knative相关的Kubernetes Service 23 3.3 Autoscaler的工作流程 24 3.4 Queue Proxy 25 3.5 本章小结 26 第4章 Knative的事件驱动组件Eventing 27 4.1 Eventing的架构设计 27 4.1.1 总体设计目标 28 4.1.2 Eventing的基础概念 28 4.1.3 事件传递方式 29 4.2 关于CloudEvent 30 4.2.1 CloudEvent简介 30 4.2.2 术语 30 4.2.3 上下文属性 32 4.2.4 事件数据 34 4.2.5 大小限制 34 4.2.6 隐私与安全 35 4.2.7 示例 35 4.3 事件源 35 4.3.1 核心事件源 35 4.3.2 社区贡献的事件源 36 4.3.3 Google Cloud Source 36 4.4 Broker/Trigger事件模型 36 4.4.1 工作原理 37 4.4.2 默认代理配置 37 4.4.3 Broker/Trigger模型范例 38 4.5 事件注册表 39 4.5.1 事件发现 39 4.5.2 事件订阅 40 4.5.3 填充事件注册表 42 4.6 事件流控制 43 4.6.1 Sequence 43 4.6.2 Parallel 44 4.7 事件通道 45 4.7.1 当前可用的通道 45 4.7.2 默认通道设置 45 4.8 本章小结 46 第5章 基于Tekton的CI/CD平台 47 5.1 Tekton概述 47 5.1.1 Tekton的优势 47 5.1.2 Tekton的组件构成 48 5.1.3 Tekton的资源对象 48 5.2 Tekton的概念模型 49 5.2.1 Step、Task和Pipeline 49 5.2.2 输入与输出资源 50 5.2.3 TaskRun与PipelineRun 51 5.2.4 Tekton的运作方式 51 5.3 Tekton Pipeline资源对象详解 52 5.3.1 Task 52 5.3.2 TaskRun 66 5.3.3 Pipeline 74 5.3.4 PipelineRun 97 5.3.5 条件资源 111 5.3.6 变量替换 113 5.3.7 基于Git与Docker Registry的身份验证 117 5.3.8 基于Kubectl向Kubernetes集群持续部署 124 5.4 Trigger 126 5.4.1 TriggerTemplate 126 5.4.2 TriggerBinding 128 5.4.3 EventListener 131 5.4.4 将EventListener暴露给外部 138 5.4.5 ClusterTriggerBinding 138 5.4.6 CEL表达式扩展 139 5.5 Dashborad简介 140 5.5.1 Dashboard主要支持功能 140 5.5.2 Dashboard常用功能示例 141 5.6 安装Tekton Pipeline及相关组件 143 5.6.1 Tekton Pipeline安装 143 5.6.2 Tekton Dashborad安装 145 5.6.3 Tekton Trigger安装 145 5.7 应用CI/CD配置示例 146 5.7.1 Java语言配置示例 146 5.7.2 PHP语言配置示例 151 5.8 本章小结 155 实战篇 第6章 基于Knative的云原生应用的设计实现 158 6.1 云原生应用的设计原则 158 6.2 使用Knative的服务管理组件管理应用 160 6.2.1 部署一个Knative Service 161 6.2.2 更新Knative Service Configuration 164 6.2.3 流量分发到不同版本 166 6.2.4 蓝绿部署与灰度发布 167 6.2.5 Knative Service的弹性伸缩配置 170 6.3 使用事件驱动组件解耦服务依赖 172 6.3.1 部署一个Knative事件驱动应用 172 6.3.2 使用通道与订阅方式传递事件 175 6.3.3 与Apache Kafka集成 177 6.3.4 ContainerSource事件源 180 6.3.5 PingSource事件源 182 6.3.6 Parallel 183 6.3.7 Sequence 187 6.3.8 SinkBinding 190 6.3.9 GitHub事件源 191 6.4 本章小结 194 扩展篇 第7章 Serving组件的扩展配置 196 7.1 自动扩缩容的配置 196 7.1.1 全局或修订版范围设置 196 7.1.2 Class 197 7.1.3 度量指标 198 7.1.4 目标值 198 7.1.5 缩放边界 202 7.1.6 KPA特性设置 203 7.2 路由管理 208 7.2.1 定制Knative服务的主域名 208 7.2.2 DNS泛域名解析配置 211 7.2.3 服务的可见范围控制 212 7.3 网络与安全 213 7.3.1 证书管理工具cert-manager 213 7.3.2 手动配置TLS证书 214 7.3.3 自动配置TLS证书 216 7.4 运维相关配置 220 7.4.1 从私有容器镜像仓库部署应用 220 7.4.2 组件高可用配置 221 7.5 本章小结 222 第8章 日志中心 223 8.1 基于EFK的日志中心解决方案 223 8.1.1 EFK基础功能介绍 223 8.1.2 应用日志格式说明 223 8.1.3 添加Fluentd配置 224 8.1.4 配置Kibana索引模式 225 8.1.5 数据搜索展示 225 8.1.6 创建可视化图表 225 8.1.7 创建仪表盘 227 8.2 本章小结 229 第9章 监控报警平台 230 9.1 基于Prometheus和Grafana的监控报警平台 230 9.1.1 Prometheus 230 9.1.2 Grafana 233 9.2 Knative仪表盘 233 9.3 本章小结 238 附录 239 |
编辑推荐 |
dd网云原生实验室技术团队出品 架构设计、功能、原理、开发、运维5个维度全面剖析Knative |