Knative实战:基于Kubernetes的无服务器架构实践

Knative实战:基于Kubernetes的无服务器架构实践
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: ,
2021-03
版次: 1
ISBN: 9787111675587
定价: 89.00
装帧: 其他
开本: 其他
纸张: 胶版纸
字数: 162千字
5人买过
  • 本书从实战角度讲解了Knative的原理与开发。
      全书正文一共11章,共4个部分:
      一、准备篇(第1~2章)
      全面介绍了Serverless,Knative的概念、优势、架构设计、工作原理,以及开发环境的搭建。
      二、基础篇(第3~5章)
      详细讲解了Knative的三大核心组件:Serving、Eventing和Tekton pipeline。
      三、实战篇(第6~8章)
      主要介绍了Knative的云原生微服务的设计与实现、Knative的FaaS实现,以及性能优化相关的主题。
      四、扩展篇(第9~11章)
      讲解了与Knative相关的日志中心、监控报警平台和可视化工具。 作者简介

    李志伟

    当当网云原生实验室负责人,容器云领域专家。在Kubernetes、Istio、Serverless、DevOps工具等领域有深入的研究和实践。热心于云原生技术的应用与推广,曾荣获“K8sMeetup中国社区”最受欢迎讲师奖项。

    游杨

    当当网云原生实验室高级运维开发工程师。先后参与Kubernetes和Knative项目的落地与实施工作,拥有丰富的容器平台实践经验,聚焦于Kubernetes、Serverless、CI/CD技术领域。 前言

    准备篇

    第1章全面认识Knative  2

    1.1Serverless的前世今生  2

    1.1.1Serverless简介  2

    1.1.2Serverless的主要特征  3

    1.1.3Serverless的优缺点  3

    1.1.4Serverless的发展现状  4

    1.1.5Serverless的使用场景  4

    1.2什么是Knative  4

    1.2.1Knative的产生背景及发展历程  5

    1.2.2Knative的架构设计  5

    1.2.3Knative的主要受众群  6

    1.2.4Knative的商业托管服务产品  7

    1.3Knative开发运维需要具备的基础知识  7

    1.3.1容器  7

    1.3.2Kubernetes  8

    1.3.3Istio  9

    1.4本章小结  10

    第2章搭建Knative运行环境  11

    2.1在Kubernetes平台上安装Knative  11

    2.1.1Istio平台的安装  12

    2.1.2安装Knative Serving组件  13

    2.1.3安装Knative Eventing组件  14

    2.1.4安装可观察性组件  14

    2.2部署HelloWorld应用  15

    2.2.1Serving Hello World范例  15

    2.2.2Eventing Hello World范例  16

    2.3本章小结  19

    基础篇

    第3章Knative的服务管理组件Serving  22

    3.1Serving的架构设计  22

    3.2Knative相关的Kubernetes Service  23

    3.3Autoscaler的工作流程  24

    3.4Queue Proxy  25

    3.5本章小结  26

    第4章Knative的事件驱动组件Eventing  27

    4.1Eventing的架构设计  27

    4.1.1总体设计目标  28

    4.1.2Eventing的基础概念  28

    4.1.3事件传递方式  29

    4.2关于CloudEvent  30

    4.2.1CloudEvent简介  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.3Google Cloud Source  36

    4.4Broker/Trigger事件模型  36

    4.4.1工作原理  37

    4.4.2默认代理配置  37

    4.4.3Broker/Trigger模型范例  38

    4.5事件注册表  39

    4.5.1事件发现  39

    4.5.2事件订阅  40

    4.5.3填充事件注册表  42

    4.6事件流控制  43

    4.6.1Sequence  43

    4.6.2Parallel  44

    4.7事件通道  45

    4.7.1当前可用的通道  45

    4.7.2默认通道设置  45

    4.8本章小结  46

    第5章基于Tekton的CI/CD平台  47

    5.1Tekton概述  47

    5.1.1Tekton的优势  47

    5.1.2Tekton的组件构成  48

    5.1.3Tekton的资源对象  48

    5.2Tekton的概念模型  49

    5.2.1Step、Task和Pipeline  49

    5.2.2输入与输出资源  50

    5.2.3TaskRun与PipelineRun  51

    5.2.4Tekton的运作方式  51

    5.3Tekton Pipeline资源对象详解  52

    5.3.1Task  52

    5.3.2TaskRun  66

    5.3.3Pipeline  74

    5.3.4PipelineRun  97

    5.3.5条件资源  111

    5.3.6变量替换  113

    5.3.7基于Git与Docker Registry的身份验证  117

    5.3.8基于Kubectl向Kubernetes集群持续部署  124

    5.4Trigger  126

    5.4.1TriggerTemplate  126

    5.4.2TriggerBinding  128

    5.4.3EventListener  131

    5.4.4将EventListener暴露给外部  138

    5.4.5ClusterTriggerBinding  138

    5.4.6CEL表达式扩展  139

    5.5Dashborad简介  140

    5.5.1Dashboard主要支持功能  140

    5.5.2Dashboard常用功能示例  141

    5.6安装Tekton Pipeline及相关组件  143

    5.6.1Tekton Pipeline安装  143

    5.6.2Tekton Dashborad安装  145

    5.6.3Tekton Trigger安装  145

    5.7应用CI/CD配置示例  146

    5.7.1Java语言配置示例  146

    5.7.2PHP语言配置示例  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.5Knative Service的弹性伸缩配置  170

    6.3使用事件驱动组件解耦服务依赖  172

    6.3.1部署一个Knative事件驱动应用  172

    6.3.2使用通道与订阅方式传递事件  175

    6.3.3与Apache Kafka集成  177

    6.3.4ContainerSource事件源  180

    6.3.5PingSource事件源  182

    6.3.6Parallel  183

    6.3.7Sequence  187

    6.3.8SinkBinding  190

    6.3.9GitHub事件源  191

    6.4本章小结  194

    扩展篇

    第7章Serving组件的扩展配置  196

    7.1自动扩缩容的配置  196

    7.1.1全局或修订版范围设置  196

    7.1.2Class  197

    7.1.3度量指标  198

    7.1.4目标值  198

    7.1.5缩放边界  202

    7.1.6KPA特性设置  203

    7.2路由管理  208

    7.2.1定制Knative服务的主域名  208
  • 内容简介:
    本书从实战角度讲解了Knative的原理与开发。
      全书正文一共11章,共4个部分:
      一、准备篇(第1~2章)
      全面介绍了Serverless,Knative的概念、优势、架构设计、工作原理,以及开发环境的搭建。
      二、基础篇(第3~5章)
      详细讲解了Knative的三大核心组件:Serving、Eventing和Tekton pipeline。
      三、实战篇(第6~8章)
      主要介绍了Knative的云原生微服务的设计与实现、Knative的FaaS实现,以及性能优化相关的主题。
      四、扩展篇(第9~11章)
      讲解了与Knative相关的日志中心、监控报警平台和可视化工具。
  • 作者简介:
    作者简介

    李志伟

    当当网云原生实验室负责人,容器云领域专家。在Kubernetes、Istio、Serverless、DevOps工具等领域有深入的研究和实践。热心于云原生技术的应用与推广,曾荣获“K8sMeetup中国社区”最受欢迎讲师奖项。

    游杨

    当当网云原生实验室高级运维开发工程师。先后参与Kubernetes和Knative项目的落地与实施工作,拥有丰富的容器平台实践经验,聚焦于Kubernetes、Serverless、CI/CD技术领域。
  • 目录:
    前言

    准备篇

    第1章全面认识Knative  2

    1.1Serverless的前世今生  2

    1.1.1Serverless简介  2

    1.1.2Serverless的主要特征  3

    1.1.3Serverless的优缺点  3

    1.1.4Serverless的发展现状  4

    1.1.5Serverless的使用场景  4

    1.2什么是Knative  4

    1.2.1Knative的产生背景及发展历程  5

    1.2.2Knative的架构设计  5

    1.2.3Knative的主要受众群  6

    1.2.4Knative的商业托管服务产品  7

    1.3Knative开发运维需要具备的基础知识  7

    1.3.1容器  7

    1.3.2Kubernetes  8

    1.3.3Istio  9

    1.4本章小结  10

    第2章搭建Knative运行环境  11

    2.1在Kubernetes平台上安装Knative  11

    2.1.1Istio平台的安装  12

    2.1.2安装Knative Serving组件  13

    2.1.3安装Knative Eventing组件  14

    2.1.4安装可观察性组件  14

    2.2部署HelloWorld应用  15

    2.2.1Serving Hello World范例  15

    2.2.2Eventing Hello World范例  16

    2.3本章小结  19

    基础篇

    第3章Knative的服务管理组件Serving  22

    3.1Serving的架构设计  22

    3.2Knative相关的Kubernetes Service  23

    3.3Autoscaler的工作流程  24

    3.4Queue Proxy  25

    3.5本章小结  26

    第4章Knative的事件驱动组件Eventing  27

    4.1Eventing的架构设计  27

    4.1.1总体设计目标  28

    4.1.2Eventing的基础概念  28

    4.1.3事件传递方式  29

    4.2关于CloudEvent  30

    4.2.1CloudEvent简介  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.3Google Cloud Source  36

    4.4Broker/Trigger事件模型  36

    4.4.1工作原理  37

    4.4.2默认代理配置  37

    4.4.3Broker/Trigger模型范例  38

    4.5事件注册表  39

    4.5.1事件发现  39

    4.5.2事件订阅  40

    4.5.3填充事件注册表  42

    4.6事件流控制  43

    4.6.1Sequence  43

    4.6.2Parallel  44

    4.7事件通道  45

    4.7.1当前可用的通道  45

    4.7.2默认通道设置  45

    4.8本章小结  46

    第5章基于Tekton的CI/CD平台  47

    5.1Tekton概述  47

    5.1.1Tekton的优势  47

    5.1.2Tekton的组件构成  48

    5.1.3Tekton的资源对象  48

    5.2Tekton的概念模型  49

    5.2.1Step、Task和Pipeline  49

    5.2.2输入与输出资源  50

    5.2.3TaskRun与PipelineRun  51

    5.2.4Tekton的运作方式  51

    5.3Tekton Pipeline资源对象详解  52

    5.3.1Task  52

    5.3.2TaskRun  66

    5.3.3Pipeline  74

    5.3.4PipelineRun  97

    5.3.5条件资源  111

    5.3.6变量替换  113

    5.3.7基于Git与Docker Registry的身份验证  117

    5.3.8基于Kubectl向Kubernetes集群持续部署  124

    5.4Trigger  126

    5.4.1TriggerTemplate  126

    5.4.2TriggerBinding  128

    5.4.3EventListener  131

    5.4.4将EventListener暴露给外部  138

    5.4.5ClusterTriggerBinding  138

    5.4.6CEL表达式扩展  139

    5.5Dashborad简介  140

    5.5.1Dashboard主要支持功能  140

    5.5.2Dashboard常用功能示例  141

    5.6安装Tekton Pipeline及相关组件  143

    5.6.1Tekton Pipeline安装  143

    5.6.2Tekton Dashborad安装  145

    5.6.3Tekton Trigger安装  145

    5.7应用CI/CD配置示例  146

    5.7.1Java语言配置示例  146

    5.7.2PHP语言配置示例  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.5Knative Service的弹性伸缩配置  170

    6.3使用事件驱动组件解耦服务依赖  172

    6.3.1部署一个Knative事件驱动应用  172

    6.3.2使用通道与订阅方式传递事件  175

    6.3.3与Apache Kafka集成  177

    6.3.4ContainerSource事件源  180

    6.3.5PingSource事件源  182

    6.3.6Parallel  183

    6.3.7Sequence  187

    6.3.8SinkBinding  190

    6.3.9GitHub事件源  191

    6.4本章小结  194

    扩展篇

    第7章Serving组件的扩展配置  196

    7.1自动扩缩容的配置  196

    7.1.1全局或修订版范围设置  196

    7.1.2Class  197

    7.1.3度量指标  198

    7.1.4目标值  198

    7.1.5缩放边界  202

    7.1.6KPA特性设置  203

    7.2路由管理  208

    7.2.1定制Knative服务的主域名  208
查看详情
12
相关图书 / 更多
Knative实战:基于Kubernetes的无服务器架构实践
Knative最佳实践
[澳]Jacques Chester(雅克·切斯特
Knative实战:基于Kubernetes的无服务器架构实践
KnopfGuide:Rome
Knopf Guides 著
Knative实战:基于Kubernetes的无服务器架构实践
KnackBabySignLanguage:AStep-By-StepGuidetoCommunicatingwithYourLittleOne
Suzie Chafin 著
Knative实战:基于Kubernetes的无服务器架构实践
Knowledge Management in Theory and Practice
Kimiz Dalkir;Marco Beaulieu
Knative实战:基于Kubernetes的无服务器架构实践
Knack
Norm Brodsky、Bo Burlingham 著
Knative实战:基于Kubernetes的无服务器架构实践
KnowYourOnions-GraphicDesign
Drew De Soto 著
Knative实战:基于Kubernetes的无服务器架构实践
KnightQuest(TimeHunters,Book2)
Chris Blake 著
Knative实战:基于Kubernetes的无服务器架构实践
Knative快速入门与实践
[美]伯尔·萨特(Burr Sutter)(印度)卡梅什·桑帕斯(Kamesh
Knative实战:基于Kubernetes的无服务器架构实践
Knitter'sHandyBookofTop-DownSweaters:BasicDesignsinMultipleSizesandGauges
Ann Budd 著
Knative实战:基于Kubernetes的无服务器架构实践
KnitaMonsterNursery:PracticalandPlayfulKnittedBabyPatterns
Rebecca Danger 著
Knative实战:基于Kubernetes的无服务器架构实践
KnockoutCV:HowtoGetNoticed,GetInterviewed&GetHired
John Lees 著
您可能感兴趣 / 更多
Knative实战:基于Kubernetes的无服务器架构实践
物理化学考研复习指导(李志伟)(第三版)
李志伟 主编
Knative实战:基于Kubernetes的无服务器架构实践
广西正在说/美丽中国从家乡出发
李志伟 著;黄丽玲 绘
Knative实战:基于Kubernetes的无服务器架构实践
新中国成立70周年儿童文学经典作品集-五年级“狗”班
李志伟 著
Knative实战:基于Kubernetes的无服务器架构实践
假如我是国王
李志伟 著
Knative实战:基于Kubernetes的无服务器架构实践
我是我爸爸
李志伟 著
Knative实战:基于Kubernetes的无服务器架构实践
会说外语的猫
李志伟 著
Knative实战:基于Kubernetes的无服务器架构实践
课本烹调锅
李志伟 著
Knative实战:基于Kubernetes的无服务器架构实践
星际二手市场
李志伟 著
Knative实战:基于Kubernetes的无服务器架构实践
用时间付账的超市
李志伟 著
Knative实战:基于Kubernetes的无服务器架构实践
爆米花马戏团
李志伟 著
Knative实战:基于Kubernetes的无服务器架构实践
家庭作业机
李志伟 著
Knative实战:基于Kubernetes的无服务器架构实践
时光手机
李志伟 著