网站首页  软件下载  游戏下载  翻译软件  电子书下载  电影下载  电视剧下载  教程攻略

请输入您要查询的图书:

 

书名 云原生服务网格Istio
分类 教育考试-考试-计算机类
作者 张超盟等编
出版社 电子工业出版社
下载
简介
作者简介
"张超盟
华为云应用服务网格首席架构师,拥有10年以上软件研发经验,先后负责华为云PaaS容器应用运维、微服务平台、云服务目录、服务网格等产品架构设计与开发工作,在容器服务、微服务架构、大数据、应用性能管理、数据库中间件及DevOps工具等多个领域有深入的研究与实践。开源爱好者,Istio社区成员。曾就职于Trend Micro和中铁一局。
章鑫
华为云应用服务网格首席系统工程师, 拥有10年以上IT从业经验,先后参与华为云PaaS运维平台、容器自动化运维工 具、服务网格等产品设计与开发,了多个服务网格项目的落地与实施工作。Istio社区成员,对于Pilot、Mixer等多个组 件 的 调 优 有 丰 富 的 经 验。曾 在VIA-Telecom和Nokia担任研发专家。
徐中虎
华为云原生开源团队核心成员,Istio社区Approver,Kubernetes项目核心贡献者,现 聚 焦 于Cloud Native、Docker、Kubernetes、Service Mesh等领域,对分布式系统性能优化、高可靠、可扩展等有深入的研究。曾就职于网易、Nokia。
徐飞
华为云原生开源团队核心成员,Istio社区Approver,Kubernetes、Federation、Kubeflow、Virtual-Kubelet社区项目成员及核心贡献者,浙江大学硕士。从2015年开始参与容器平台的设计与开发,并参与上游社区的贡献。
华为云原生团队
与云原生这一技术领域的团队之一。作为CNCF(云原生计算基金会)的初创成员和白金会员,华为在容器、服务网格、微服务等云原生技术领域都有着深厚的造诣,拥有10多名CNCF开源项目维护者,在Kubernetes、Istio等核心开源项目上的贡献位居优选前列。华为云也提供了基于CNCF开源项目所打造的商业化云原生系列产品,包括云容器引擎、云容器实例、应用服务网格、容器交付流水线等。
华为云原生团队致力于云原生技术在靠前的普及与推广,通过“容器魔方”官方微信公众号,以及与CNCF联合打造的Cloud Native Days China(CNDC)Meetup、Cloud Native Lives云原生技术在线直播、线下CKA培训等活动,推动了靠前云原生技术的学习与交流热潮。此次打造的华为云原生技术丛书,内容涵盖以CNCF项目为主的多个云原生技术热点,可为广大云原生技术爱好者提供详尽、专业、及时的原理讲解与技术剖析。
"
目录
原 理 篇
章 你好,Istio\t2
1.1 Istio是什么\t2
1.2 通过示例看看Istio能做什么\t4
1.3 Istio与服务治理\t6
1.3.1 关于微服务\t6
1.3.2 服务治理的三种形态\t8
1.3.3 Istio不只解决了微服务问题\t10
1.4 Istio与服务网格\t11
1.4.1 时代选择服务网格\t11
1.4.2 服务网格选择Istio\t14
1.5 Istio与Kubernetes\t15
1.5.1 Istio,Kubernetes的好帮手\t16
1.5.2 Kubernetes,Istio的好基座\t18
1.6 本章总结\t20
第2章 Istio架构概述\t21
2.1 Istio的工作机制\t21
2.2 Istio的服务模型\t23
2.2.1 Istio的服务\t24
2.2.2 Istio的服务版本\t26
2.2.3 Istio的服务实例\t28
2.3 Istio的主要组件\t30
2.3.1 istio-pilot\t30
2.3.2 istio-telemetry\t32
2.3.3 istio-policy\t33
2.3.4 istio-citadel\t34
2.3.5 istio-galley\t34
2.3.6 istio-sidecar-injector\t35
2.3.7 istio-proxy\t35
2.3.8 istio-ingressgateway\t36
2.3.9 其他组件\t37
2.4 本章总结\t37
第3章 非侵入的流量治理\t38
3.1 Istio流量治理的原理\t38
3.1.1 负载均衡\t39
3.1.2 服务熔断\t41
3.1.3 故障注入\t48
3.1.4 灰度发布\t49
3.1.5 服务访问入口\t54
3.1.6 外部接入服务治理\t56
3.2 Istio路由规则配置:VirtualService\t59
3.2.1 路由规则配置示例\t59
3.2.2 路由规则定义\t60
3.2.3 HTTP路由(HTTPRoute)\t63
3.2.4 TLS路由(TLSRoute)\t78
3.2.5 TCP路由(TCPRoute)\t81
3.2.6 三种协议路由规则的对比\t83
3.2.7 VirtualService的典型应用\t84
3.3 Istio目标规则配置:DestinationRule\t89
3.3.1 DestinationRule配置示例\t90
3.3.2 DestinationRule规则定义\t90
3.3.3 DestinationRule的典型应用\t103
3.4 Istio服务网关配置:Gateway\t107
3.4.1 Gateway配置示例\t108
3.4.2 Gateway规则定义\t109
3.4.3 Gateway的典型应用\t112
3.5 Istio外部服务配置:ServiceEntry\t120
3.5.1 ServiceEntry配置示例\t120
3.5.2 ServiceEntry规则的定义和用法\t121
3.5.3 ServiceEntry的典型应用\t123
3.6 Istio代理规则配置:Sidecar\t126
3.6.1 Sidecar配置示例\t126
3.6.2 Sidecar规则定义\t126
3.7 本章总结\t129
第4章 可扩展的策略和遥测\t131
4.1 Istio策略和遥测的原理\t131
4.1.1 应用场景\t131
4.1.2 工作原理\t136
4.1.3 属性\t137
4.1.4 Mixer的配置模型\t140
4.2 Istio遥测适配器配置\t147
4.2.1 Prometheus适配器\t148
4.2.2 Fluentd适配器\t155
4.2.3 StatsD适配器\t159
4.2.4 Stdio适配器\t161
4.2.5 Zipkin适配器\t163
4.2.6 厂商适配器\t168
4.3 Istio策略适配器配置\t169
4.3.1 List适配器\t169
4.3.2 Denier适配器\t171
4.3.3 Memory Quota适配器\t172
4.3.4 Redis Quota适配器\t175
4.4 Kubernetes Env适配器配置\t178
4.5 本章总结\t181
第5章 可插拔的服务安全\t182
5.1 Istio服务安全的原理\t182
5.1.1 认证\t185
5.1.2 授权\t189
5.1.3 密钥证书管理\t192
5.2 Istio服务认证配置\t193
5.2.1 认证策略配置示例\t193
5.2.2 认证策略的定义\t194
5.2.3 TLS访问配置\t196
5.2.4 认证策略的典型应用\t200
5.3 Istio服务授权配置\t202
5.3.1 授权启用配置\t202
5.3.2 授权策略配置\t203
5.3.3 授权策略的典型应用\t207
5.4 本章总结\t210
第6章 透明的Sidecar机制\t211
6.1 Sidecar注入\t211
6.1.1 Sidecar Injector自动注入的原理\t214
6.1.2 Sidecar注入的实现\t216
6.2 Sidecar流量拦截\t219
6.2.1 iptables的基本原理\t220
6.2.2 iptables的规则设置\t223
6.2.3 流量拦截原理\t224
6.3 本章总结\t228
第7章 多集群服务治理\t230
7.1 Istio多集群服务治理\t230
7.1.1 Istio多集群的相关概念\t230
7.1.2 Istio多集群服务治理现状\t231
7.2 多集群模式1:多控制面\t232
7.2.1 服务DNS解析的原理\t233
7.2.2 Gateway连接的原理\t237
7.3 多集群模式2:VPN直连单控制面\t238
7.4 多集群模式3:集群感知服务路由单控制面\t240
7.5 本章总结\t246
实 践 篇
第8章 环境准备\t248
8.1 在本地搭建Istio环境\t248
8.1.1 安装Kubernetes集群\t248
8.1.2 安装Helm\t249
8.1.3 安装Istio\t250
8.2 在公有云上使用Istio\t253
8.3 尝鲜Istio命令行\t255
8.4 应用示例\t257
8.4.1 Weather Forecast简介\t257
8.4.2 Weather Forecast部署\t258
8.5 本章总结\t259
第9章 流量监控\t260
9.1 预先准备:安装插件\t260
9.2 调用链跟踪\t261
9.3 指标监控\t265
9.3.1 Prometheus\t265
9.3.2 Grafana\t268
9.4 服务网格监控\t273
9.5 本章总结\t277
0章 灰度发布\t278
10.1 预先准备:将所有流量都路由到各个服务的v1版本\t278
10.2 基于流量比例的路由\t279
10.3 基于请求内容的路由\t283
10.4 组合条件路由\t284
10.5 多服务灰度发布\t286
10.6 TCP服务灰度发布\t288
10.7 自动化灰度发布\t290
10.7.1 正常发布\t291
10.7.2 异常发布\t294
1章 流量治理\t296
11.1 流量负载均衡\t296
11.1.1 ROUND_ROBIN模式\t296
11.1.2 RANDOM模式\t298
11.2 会话保持\t299
11.2.1 实战目标\t300
11.2.2 实战演练\t300
11.3 故障注入\t301
11.3.1 延迟注入\t301
11.3.2 中断注入\t303
11.4 超时\t304
11.5 重试\t306
11.6 HTTP重定向\t308
11.7 HTTP重写\t309
11.8 熔断\t310
11.9 限流\t313
11.9.1 普通方式\t314
11.9.2 条件方式\t315
11.10 服务隔离\t317
11.10.1 实战目标\t317
11.10.2 实战演练\t317
11.11 影子测试\t319
11.12 本章总结\t322
2章 服务保护\t323
12.1 网关加密\t323
12.1.1 单向TLS网关\t323
12.1.2 双向TLS网关\t326
12.1.3 用SDS加密网关\t328
12.2 访问控制\t331
12.2.1 黑名单\t331
12.2.2 白名单\t332
12.3 认证\t334
12.3.1 实战目标\t334
12.3.2 实战演练\t334
12.4 授权\t336
12.4.1 命名空间级别的访问控制\t336
12.4.2 服务级别的访问控制\t339
12.5 本章总结\t341
3章 多集群管理\t342
13.1 实战目标\t342
13.2 实战演练\t342
13.3 本章总结\t350
架 构 篇
4章 司令官Pilot\t352
14.1 Pilot的架构\t352
14.1.1 Istio的服务模型\t354
14.1.2 xDS协议\t356
14.2 Pilot的工作流程\t360
14.2.1 Pilot的启动与初始化\t361
14.2.2 服务发现\t363
14.2.3 配置规则发现\t368
14.2.4 Envoy的配置分发\t376
14.3 Pilot的插件\t383
14.3.1 安全插件\t385
14.3.2 健康检查插件\t390
14.3.3 Mixer插件\t391
14.4 Pilot的设计亮点\t392
14.4.1 三级缓存优化\t392
14.4.2 去抖动分发\t393
14.4.3 增量EDS\t394
14.4.4 资源隔离\t395
14.5 本章总结\t396
5章 守护神Mixer\t397
15.1 Mixer的整体架构\t397
15.2 Mixer的服务模型\t398
15.2.1 Template\t399
15.2.2 Adapter\t401
15.3 Mixer的工作流程\t403
15.3.1 启动初始化\t403
15.3.2 用户配置信息规则处理\t409
15.3.3 访问策略的执行\t416
15.3.4 无侵入遥测\t421
15.4 Mixer的设计亮点\t423
15.5 如何开发Mixer Adapter\t424
15.5.1 Adapter实现概述\t424
15.5.2 内置式Adapter的开发步骤\t425
15.5.3 独立进程式Adapter的开发步骤\t430
15.5.4 独立仓库式Adapter的开发步骤\t437
15.6 本章总结\t438
6章 安全碉堡Citadel\t439
16.1 Citadel的架构\t439
16.2 Citadel的工作流程\t441
16.2.1 启动初始化\t441
16.2.2 证书控制器\t442
16.2.3 gRPC服务器\t444
16.2.4 证书轮换器\t445
16.2.5 SDS服务器\t446
16.3 本章总结\t449
7章 高性能代理Envoy\t450
17.1 Envoy的架构\t450
17.2 Envoy的特性\t451
17.3 Envoy的模块结构\t452
17.4 Envoy的线程模型\t453
17.5 Envoy的内存管理\t455
17.5.1 变量管理\t455
17.5.2 Buffer管理\t456
17.6 Envoy的流量控制\t456
17.7 Envoy与Istio的配合\t457
17.7.1 部署与交互\t457
17.7.2 Envoy API\t458
17.3 本章总结\t459
8章 代理守护进程Pilot-agent\t460
18.1 为什么需要Pilot-agent\t461
18.2 Pilot-agent的工作流程\t461
18.2.1 Envoy的启动\t462
18.2.2 Envoy的热重启\t465
18.2.3 守护Envoy\t466
18.2.4 优雅退出\t467
18.3 本章总结\t468
9章 配置中心Galley\t469
19.1 Galley的架构\t469
19.1.1 MCP\t470
19.1.2 MCP API\t470
19.2 Galley的工作流程\t471
19.2.1 启动初始化\t471
19.2.2 配置校验\t476
19.2.3 配置聚合与分发\t479
19.3 本章总结\t482
源 码 篇
第20章 Pilot源码解析\t484
20.1 进程启动流程\t484
20.2 关键代码分析\t486
20.2.1 ConfigController\t486
20.2.2 ServiceController\t490
20.2.3 xDS异步分发\t495
20.2.4 配置更新预处理\t503
20.2.5 xDS配置的生成及分发\t509
20.3 本章总结\t514
第21章 Mixer源码解析\t515
21.1 进程启动流程\t515
21.1.1 runServer通过newServer新建Server对象\t517
21.1.2 启动Mixer gRPC Server\t520
21.2 关键代码分析\t520
21.2.1 监听用户的配置\t520
21.2.2 构建数据模型\t524
21.2.3 Check接口\t533
21.2.4 Report接口\t536
21.2.5 请求分发\t539
21.2.6 协程池\t541
21.3 本章总结\t543
第22章 Citadel源码解析\t544
22.1 进程启动流程\t544
22.2 关键代码分析\t548
22.2.1 证书签发实体IstioCA\t548
22.2.2 SecretController的创建和核心原理\t551
22.2.3 CA Server的创建和核心原理\t556
22.3 本章总结\t558
第23章 Envoy源码解析\t559
23.1 Envoy的初始化\t559
23.1.1 启动参数bootstrap的初始化\t559
23.1.2 Admin API的初始化\t560
23.1.3 Worker的初始化\t562
23.1.4 CDS的初始化\t562
23.1.5 LDS的初始化\t563
23.1.6 GuardDog的初始化\t564
23.2 Envoy的运行和建立新连接\t564
23.2.1 启动worker\t565
23.2.2 Listener的加载\t565
23.2.3 接收连接\t566
23.3 Envoy对数据的读取、接收及处理\t567
23.3.1 读取数据\t568
23.3.2 接收数据\t568
23.3.3 处理数据\t569
23.4 Envoy发送数据到服务端\t570
23.4.1 匹配路由\t571
23.4.2 获取连接池\t572
23.4.3 选择上游主机\t572
23.5 本章总结\t573
第24章 Galley源码解析\t574
24.1 进程启动流程\t574
24.1.1 RunServer的启动流程\t577
24.1.2 RunValidation Server的启动流程\t578
24.2 关键代码分析\t580
24.2.1 配置校验\t580
24.2.2 配置监听\t584
24.2.3 配置分发\t585
24.3 本章总结\t589
结语\t590
附录A 源码仓库介绍\t592
附录B 实践经验和总结\t598
内容推荐
本书分为原理篇、实践篇、架构篇和源码篇,由浅入深地将Istio项目庖丁解牛并呈现给读者。原理篇介绍了服务网格技术与Istio项目的技术背景、设计理念与功能原理,能够帮助读者了解服务网格这一云原生领域的标志性技术,掌握Istio流量治理、策略与遥测和安全功能的使用方法。
随便看

 

霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。

 

Copyright © 2002-2024 101bt.net All Rights Reserved
更新时间:2025/4/4 16:58:23