当前位置:首页 > 程序设计 >
《云原生服务网格Istio:原理、实践、架构与源码解析》电子书封面

云原生服务网格Istio:原理、实践、架构与源码解析

  • 发布时间:2019年10月22日 09:41:07
  • 作者:张超盟
  • 大小:182 MB
  • 类别:Istio电子书
  • 格式:PDF
  • 版本:完整版
  • 评分:9.5

    云原生服务网格Istio:原理、实践、架构与源码解析 PDF 完整版

      给大家带来的一篇关于Istio相关的电子书资源,介绍了关于Istio、原理、实践、架构、源码解析方面的内容,本书是由电子工业出版社出版,格式为PDF,资源大小182 MB,张超盟编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:9.8。

      内容介绍

      云原生服务网格Istio:原理、实践、架构与源码解析 PDF

      这书分成原理篇、实践篇、构架篇和源代码篇,循序渐进地将Istio新项目庖丁解牛并展现给用户。原理篇详细介绍了服务项目网格技术与Istio新项目的技术性背景图、设计构思与作用基本原理,可以协助用户掌握服务项目网格图这种云原生态行业的代表性技术性,把握Istio总流量整治、对策与遥测和安全性作用的使用说明。实践篇重零开始构建Istio软件环境并进行1个真正运用的开发设计、交货、发布监控器与整治的详细全过程,可以协助用户了解Istio的作用并加重对Istio的了解。构架篇分析了Istio新项目的几大关键子项目Pilot、Mixer、Citadel的详尽构架,协助用户了解Envoy、Galley、Pilot-agent等有关新项目,并发掘Istio编码身后的设计方案与保持观念。源代码篇对Istio每个新项目的编码构造、文件组织、关键步骤、关键数据结构及各关键编码片断等重要內容都开展了详解,用户只需具有必须的Go語言基本,便可迅速把握Istio各一部分的保持基本原理,并依据自身的兴趣爱好深层次掌握某一重要体制的详细保持。这书出示源码下载,参照http://github.com/cloudnativebooks/cloud-native-istio。不论是针对刚新手入门Istio的用户,還是针对早已产成品中应用Istio的用户,这书都具有实用价值。

      目录

      • 原 理 篇
      • 第1章  你好,Istio. 2
      • 1.1  Istio是什么... 2
      • 1.2  通过示例看看Istio能做什么... 4
      • 1.3  Istio与服务治理... 6
      • 1.3.1  关于微服务... 6
      • 1.3.2  服务治理的三种形态... 8
      • 1.3.3  Istio不只解决了微服务问题... 10
      • 1.4  Istio与服务网格... 11
      • 1.4.1  时代选择服务网格... 11
      • 1.4.2  服务网格选择Istio. 14
      • 1.5  Istio与Kubernetes 15
      • 1.5.1  Istio,Kubernetes的好帮手... 16
      • 1.5.2  Kubernetes,Istio的好基座... 18
      • 1.6  本章总结... 20
      • 第2章  Istio架构概述... 21
      • 2.1  Istio的工作机制... 21
      • 2.2  Istio的服务模型... 23
      • 2.2.1  Istio的服务... 24
      • 2.2.2  Istio的服务版本... 26
      • 2.2.3  Istio的服务实例... 28
      • 2.3  Istio的主要组件... 30
      • 2.3.1  istio-pilot 30
      • 2.3.2  istio-telemetry. 32
      • 2.3.3  istio-policy. 33
      • 2.3.4  istio-citadel 34
      • 2.3.5  istio-galley. 34
      • 2.3.6  istio-sidecar-injector 35
      • 2.3.7  istio-proxy. 35
      • 2.3.8  istio-ingressgateway. 36
      • 2.3.9  其他组件... 37
      • 2.4  本章总结... 37
      • 第3章  非侵入的流量治理... 38
      • 3.1  Istio流量治理的原理... 38
      • 3.1.1  负载均衡... 39
      • 3.1.2  服务熔断... 41
      • 3.1.3  故障注入... 48
      • 3.1.4  灰度发布... 49
      • 3.1.5  服务访问入口... 54
      • 3.1.6  外部接入服务治理... 56
      • 3.2  Istio路由规则配置:VirtualService. 59
      • 3.2.1  路由规则配置示例... 59
      • 3.2.2  路由规则定义... 60
      • 3.2.3  HTTP路由(HTTPRoute)... 63
      • 3.2.4  TLS路由(TLSRoute)... 78
      • 3.2.5  TCP路由(TCPRoute)... 81
      • 3.2.6  三种协议路由规则的对比... 83
      • 3.2.7  VirtualService的典型应用... 84
      • 3.3  Istio目标规则配置:DestinationRule. 89
      • 3.3.1  DestinationRule配置示例... 90
      • 3.3.2  DestinationRule规则定义... 90
      • 3.3.3  DestinationRule的典型应用.... 103
      • 3.4  Istio服务网关配置:Gateway. 107
      • 3.4.1  Gateway配置示例... 108
      • 3.4.2  Gateway规则定义... 109
      • 3.4.3  Gateway的典型应用... 112
      • 3.5  Istio外部服务配置:ServiceEntry. 120
      • 3.5.1  ServiceEntry配置示例... 120
      • 3.5.2  ServiceEntry规则的定义和用法... 121
      • 3.5.3  ServiceEntry的典型应用... 123
      • 3.6  Istio代理规则配置:Sidecar 126
      • 3.6.1  Sidecar配置示例... 126
      • 3.6.2  Sidecar规则定义... 126
      • 3.7  本章总结... 129
      • 第4章  可扩展的策略和遥测... 131
      • 4.1  Istio策略和遥测的原理... 131
      • 4.1.1  应用场景... 131
      • 4.1.2  工作原理... 136
      • 4.1.3  属性... 137
      • 4.1.4  Mixer的配置模型... 140
      • 4.2  Istio遥测适配器配置... 147
      • 4.2.1  Prometheus适配器... 148
      • 4.2.2  Fluentd适配器... 155
      • 4.2.3  StatsD适配器... 159
      • 4.2.4  Stdio适配器... 161
      • 4.2.5  Zipkin适配器... 163
      • 4.2.6  厂商适配器... 168
      • 4.3  Istio策略适配器配置... 169
      • 4.3.1  List适配器... 169
      • 4.3.2  Denier适配器... 171
      • 4.3.3  Memory Quota适配器... 172
      • 4.3.4  Redis Quota适配器.... 175
      • 4.4  Kubernetes Env适配器配置... 178
      • 4.5  本章总结... 181
      • 第5章  可插拔的服务安全... 182
      • 5.1  Istio服务安全的原理... 182
      • 5.1.1  认证... 185
      • 5.1.2  授权... 189
      • 5.1.3  密钥证书管理... 192
      • 5.2  Istio服务认证配置... 193
      • 5.2.1  认证策略配置示例... 193
      • 5.2.2  认证策略的定义... 194
      • 5.2.3  TLS访问配置... 196
      • 5.2.4  认证策略的典型应用... 200
      • 5.3  Istio服务授权配置... 202
      • 5.3.1  授权启用配置... 202
      • 5.3.2  授权策略配置... 203
      • 5.3.3  授权策略的典型应用... 207
      • 5.4  本章总结... 210
      • 第6章  透明的Sidecar机制... 211
      • 6.1  Sidecar注入... 211
      • 6.1.1  Sidecar Injector自动注入的原理... 214
      • 6.1.2  Sidecar注入的实现... 216
      • 6.2  Sidecar流量拦截... 219
      • 6.2.1  iptables的基本原理... 220
      • 6.2.2  iptables的规则设置... 223
      • 6.2.3  流量拦截原理... 224
      • 6.3  本章总结... 228
      • 第7章  多集群服务治理... 230
      • 7.1  Istio多集群服务治理... 230
      • 7.1.1  Istio多集群的相关概念... 230
      • 7.1.2  Istio多集群服务治理现状... 231
      • 7.2  多集群模式1:多控制面... 232
      • 7.2.1  服务DNS解析的原理... 233
      • 7.2.2  Gateway连接的原理... 237
      • 7.3  多集群模式2:VPN直连单控制面... 238
      • 7.4  多集群模式3:集群感知服务路由单控制面... 240
      • 7.5  本章总结... 246
      • 实 践 篇
      • 第8章  环境准备... 248
      • 8.1  在本地搭建Istio环境... 248
      • 8.1.1  安装Kubernetes集群... 248
      • 8.1.2  安装Helm.. 249
      • 8.1.3  安装Istio. 250
      • 8.2  在公有云上使用Istio. 253
      • 8.3  尝鲜Istio命令行... 255
      • 8.4  应用示例... 257
      • 8.4.1  Weather Forecast简介... 257
      • 8.4.2  Weather Forecast部署... 258
      • 8.5  本章总结... 259
      • 第9章  流量监控... 260
      • 9.1  预先准备:安装插件... 260
      • 9.2  调用链跟踪... 261
      • 9.3  指标监控... 265
      • 9.3.1  Prometheus. 265
      • 9.3.2  Grafana. 268
      • 9.4  服务网格监控... 273
      • 9.5  本章总结... 277
      • 第10章  灰度发布... 278
      • 10.1  预先准备:将所有流量都路由到各个服务的v1版本... 278
      • 10.2  基于流量比例的路由... 279
      • 10.3  基于请求内容的路由... 283
      • 10.4  组合条件路由... 284
      • 10.5  多服务灰度发布... 286
      • 10.6  TCP服务灰度发布... 288
      • 10.7  自动化灰度发布... 290
      • 10.7.1  正常发布... 291
      • 10.7.2  异常发布... 294
      • 第11章  流量治理... 296
      • 11.1  流量负载均衡... 296
      • 11.1.1  ROUND_ROBIN模式... 296
      • 11.1.2  RANDOM模式... 298
      • 11.2  会话保持... 299
      • 11.2.1  实战目标... 300
      • 11.2.2  实战演练... 300
      • 11.3  故障注入... 301
      • 11.3.1  延迟注入... 301
      • 11.3.2  中断注入... 303
      • 11.4  超时... 304
      • 11.5  重试... 306
      • 11.6  HTTP重定向... 308
      • 11.7  HTTP重写... 309
      • 11.8  熔断... 310
      • 11.9  限流... 313
      • 11.9.1  普通方式... 314
      • 11.9.2  条件方式.... 315
      • 11.10  服务隔离... 317
      • 11.10.1  实战目标... 317
      • 11.10.2  实战演练... 317
      • 11.11  影子测试... 319
      • 11.12  本章总结... 322
      • 第12章  服务保护... 323
      • 12.1  网关加密... 323
      • 12.1.1  单向TLS网关... 323
      • 12.1.2  双向TLS网关... 326
      • 12.1.3  用SDS加密网关... 328
      • 12.2  访问控制... 331
      • 12.2.1  黑名单... 331
      • 12.2.2  白名单... 332
      • 12.3  认证... 334
      • 12.3.1  实战目标... 334
      • 12.3.2  实战演练... 334
      • 12.4  授权... 336
      • 12.4.1  命名空间级别的访问控制... 336
      • 12.4.2  服务级别的访问控制... 339
      • 12.5  本章总结... 341
      • 第13章  多集群管理... 342
      • 13.1  实战目标... 342
      • 13.2  实战演练... 342
      • 13.3  本章总结... 350
      • 架 构 篇
      • 第14章  司令官Pilot 352
      • 14.1  Pilot的架构... 352
      • 14.1.1  Istio的服务模型... 354
      • 14.1.2  xDS协议... 356
      • 14.2  Pilot的工作流程... 360
      • 14.2.1  Pilot的启动与初始化... 361
      • 14.2.2  服务发现... 363
      • 14.2.3  配置规则发现... 368
      • 14.2.4  Envoy的配置分发... 376
      • 14.3  Pilot的插件... 383
      • 14.3.1  安全插件... 385
      • 14.3.2  健康检查插件... 390
      • 14.3.3  Mixer插件... 391
      • 14.4  Pilot的设计亮点... 392
      • 14.4.1  三级缓存优化... 392
      • 14.4.2  去抖动分发... 393
      • 14.4.3  增量EDS. 394
      • 14.4.4  资源隔离... 395
      • 14.5  本章总结... 396
      • 第15章  守护神Mixer 397
      • 15.1  Mixer的整体架构... 397
      • 15.2  Mixer的服务模型... 398
      • 15.2.1  Template. 399
      • 15.2.2  Adapter 401
      • 15.3  Mixer的工作流程... 403
      • 15.3.1  启动初始化... 403
      • 15.3.2  用户配置信息规则处理... 409
      • 15.3.3  访问策略的执行... 416
      • 15.3.4  无侵入遥测... 421
      • 15.4  Mixer的设计亮点... 423
      • 15.5  如何开发Mixer Adapter 424
      • 15.5.1  Adapter实现概述... 424
      • 15.5.2  内置式Adapter的开发步骤... 425
      • 15.5.3  独立进程式Adapter的开发步骤... 430
      • 15.5.4  独立仓库式Adapter的开发步骤... 437
      • 15.6  本章总结... 438
      • 第16章  安全碉堡Citadel 439
      • 16.1  Citadel的架构... 439
      • 16.2  Citadel的工作流程... 441
      • 16.2.1  启动初始化... 441
      • 16.2.2  证书控制器... 442
      • 16.2.3  gRPC服务器... 444
      • 16.2.4  证书轮换器... 445
      • 16.2.5  SDS服务器... 446
      • 16.3  本章总结... 449
      • 第17章  高性能代理Envoy. 450
      • 17.1  Envoy的架构... 450
      • 17.2  Envoy的特性... 451
      • 17.3  Envoy的模块结构... 452
      • 17.4  Envoy的线程模型... 453
      • 17.5  Envoy的内存管理... 455
      • 17.5.1  变量管理... 455
      • 17.5.2  Buffer管理... 456
      • 17.6  Envoy的流量控制... 456
      • 17.7  Envoy与Istio的配合... 457
      • 17.7.1  部署与交互... 457
      • 17.7.2  Envoy API 458
      • 17.3  本章总结... 459
      • 第18章  代理守护进程Pilot-agent 460
      • 18.1  为什么需要Pilot-agent 461
      • 18.2  Pilot-agent的工作流程... 461
      • 18.2.1  Envoy的启动... 462
      • 18.2.2  Envoy的热重启... 465
      • 18.2.3  守护Envoy. 466
      • 18.2.4  优雅退出... 467
      • 18.3  本章总结... 468
      • 第19章  配置中心Galley. 469
      • 19.1  Galley的架构... 469
      • 19.1.1  MCP. 470
      • 19.1.2  MCP API 470
      • 19.2  Galley的工作流程... 471
      • 19.2.1  启动初始化... 471
      • 19.2.2  配置校验... 476
      • 19.2.3  配置聚合与分发... 479
      • 19.3  本章总结... 482
      • 源 码 篇
      • 第20章  Pilot源码解析... 484
      • 20.1  进程启动流程... 484
      • 20.2  关键代码分析... 486
      • 20.2.1  ConfigController 486
      • 20.2.2  ServiceController 490
      • 20.2.3  xDS异步分发... 495
      • 20.2.4  配置更新预处理... 503
      • 20.2.5  xDS配置的生成及分发... 509
      • 20.3  本章总结... 514
      • 第21章  Mixer源码解析... 515
      • 21.1  进程启动流程... 515
      • 21.1.1  runServer通过newServer新建Server对象... 517
      • 21.1.2  启动Mixer gRPC Server 520
      • 21.2  关键代码分析... 520
      • 21.2.1  监听用户的配置... 520
      • 21.2.2  构建数据模型... 524
      • 21.2.3  Check接口... 533
      • 21.2.4  Report接口... 536
      • 21.2.5  请求分发... 539
      • 21.2.6  协程池... 541
      • 21.3  本章总结... 543
      • 第22章  Citadel源码解析... 544
      • 22.1  进程启动流程... 544
      • 22.2  关键代码分析... 548
      • 22.2.1  证书签发实体IstioCA.. 548
      • 22.2.2  SecretController的创建和核心原理... 551
      • 22.2.3  CA Server的创建和核心原理... 556
      • 22.3  本章总结... 558
      • 第23章  Envoy源码解析... 559
      • 23.1  Envoy的初始化... 559
      • 23.1.1  启动参数bootstrap的初始化... 559
      • 23.1.2  Admin API的初始化... 560
      • 23.1.3  Worker的初始化... 562
      • 23.1.4  CDS的初始化... 562
      • 23.1.5  LDS的初始化... 563
      • 23.1.6  GuardDog的初始化... 564
      • 23.2  Envoy的运行和建立新连接... 564
      • 23.2.1  启动worker 565
      • 23.2.2  Listener的加载... 565
      • 23.2.3  接收连接... 566
      • 23.3  Envoy对数据的读取、接收及处理... 567
      • 23.3.1  读取数据... 568
      • 23.3.2  接收数据... 568
      • 23.3.3  处理数据... 569
      • 23.4  Envoy发送数据到服务端... 570
      • 23.4.1  匹配路由... 571
      • 23.4.2  获取连接池... 572
      • 23.4.3  选择上游主机... 572
      • 23.5  本章总结... 573
      • 第24章  Galley源码解析... 574
      • 24.1  进程启动流程... 574
      • 24.1.1  RunServer的启动流程... 577
      • 24.1.2  RunValidation Server的启动流程... 578
      • 24.2  关键代码分析... 580
      • 24.2.1  配置校验... 580
      • 24.2.2  配置监听... 584
      • 24.2.3  配置分发... 585
      • 24.3  本章总结... 589
      • 结语... 590
      • 附录A  源码仓库介绍... 592
      • 附录B  实践经验和总结... 598

      学习笔记

      jQuery插件echarts去掉垂直网格线用法示例

      本文实例讲述了jQuery插件echarts去掉垂直网格线用法。分享给大家供大家参考,具体如下: 1、问题背景 设计一条统计人数的折线,其中网格线没有垂直线 2、实现源码 (1)有垂直网格线 !DOCTYPE htmlhtml head meta charset="UTF-8" titleecharts-有垂直网格线/title link rel="shortcut icon" href="../js/echarts-2.2.7/doc/asset/ico/favicon.png" rel="external nofollow" rel="external nofollow" script type="text/javascript" src="../js/echarts-2.2.7/doc/asset/js/jquery.min.js" /script script type="text/javascript" src="../js/echarts-2.2.7/doc/example/www2/js/echarts-all.js" /script style body,html{ width: 99%; height: 99%; font-family: "微软雅黑"; font-size: 12px; } #chart{ width: 100%; height: 100%; } /style script $(function(){ v……

      原生JS实现图片网格式渐显、渐隐效果

      先给出效果图: 写的小组件支持图片的渐显、渐隐,并且可以是有序、随机两种方式。 我采用的原型是属性写在构造函数内,方法写在原型对象内。方法写构造函数内有个问题,就是每次调用这个方法就相当于重新实例化一次,举个粟子: 实现网格效果的原理上是将读取图片的宽高,按照设定的参数,分成等高宽的网格(我用的span标签表示的网格),网格利用定位铺满整个图片,每个网格的背景图都是原图片,原理同sprite,利用background-position属性改变显示区域。接下来就是按照设定的顺序实现渐显或渐隐。渐显或渐隐用的是JS的animation属性和CSS3的animation属性在属性值上有所区别,这次使用也才知道……

      xmlplus组件设计系列之网格(DataGrid)(10)

      这一章我们要实现是一个网格组件,该组件除了最基本的数据展示功能外,还提供排序以及数据过滤功能。 数据源 为了测试我们即将编写好网格组件,我们采用如下格式的数据源。此数据源包含两部分的内容,分别是表头数据集和表体数据集。网格组件实例最终的列数由表头数据集的长度决定。 var data = { gridColumns: ['name', 'power'], gridData: [ { name: 'Chuck Norris', power: Infinity }, { name: 'Bruce Lee', power: 9000 }, { name: 'Jackie Chan', power: 7000 }, { name: 'Jet Li', power: 8000 } ]}; 顶层设计 从视觉上,我们很自然地把网格组件划分为表头与表体。此网格组件有三个功能,所以应该提供三个动态接口。但我们注意到排序功能是通过……

      Three.js网格对象MESH的属性用法实例

      前言 本文主要给大家介绍了关于Three.js网格对象MESH的属性与方法,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: 创建一个网格需要一个几何体,以及一个或多个材质。当网格创建好之后,我们就可以将它添加到场景中并进行渲染。网格对象提供了几个属性和方法用于改变它在场景中的位置和显示效果。 如下: 还有一个属性就是visible属性,默认为true,如果设置为false,THREE.Mesh将不渲染到场景中。 mesh对象的前三个属性position,rotation和scale有三种设置方法。 第一种,直接设置相关坐标轴 cube.position.x = 5; cube.position.y = 6; cube.position.z = 7; 第二种,一次性设置x,y和z坐标的值 cube.p……

      以上就是本次介绍的Istio电子书的全部相关内容,希望我们整理的资源能够帮助到大家,感谢大家对码农之家的支持。

      上一篇:PHP基础教程

      下一篇:R语言数据分析项目精解:理论、方法、实战

      展开 +

      收起 -

      • 《云原生服务网格Istio:原理、实践、架构与源码解析》PDF下载

      码小辫

      重要!版权问题,本电子书取消了本地下载!

      需要的朋友可以关注左边的微信号,发送 电子书名关键字 (例如:python 算法……)

      如果找不到可以联系小辫(微信:maxiaobian1024)

      Istio相关电子书
      深入浅出Istio:Service Mesh快速入门与实践
      深入浅出Istio:Service Mesh快速入门与实践 高质量影印版

      Istio开山作!Service Mesh很神秘?来!快速入门与实践!从Kubernetes(K8s)到Istio,云原生走起。

      立即下载
      程序开发原理:抽象、规格与面向对象设计
      程序开发原理:抽象、规格与面向对象设计 高清版

      程序开发原理-抽象、规格与面向对象设计 讨论了怎样构建具有高可靠性、易于维护和能得以快速修改的软件开发方法,强调了软件的模块化开发思想,用丰富的实例告诉读者怎样进行模块化,

      立即下载
      人脸识别原理与实战:以MATLAB为工具
      人脸识别原理与实战:以MATLAB为工具 影印完整版

      面部识别是当今尖端科技的协同创新技术性。《 人脸识别原理与实战:以MATLAB为工具 》做为人脸识别技术的新手入门手册,在內容上尽量包含了面部识别的每个技术性控制模块,并着眼于创作

      立即下载
      编译系统透视:图解编译原理
      编译系统透视:图解编译原理 高清版

      本书是编译原理领域的鸿篇巨著,中文版尚未出版,英文版权已经输出到美国,将在世界范围内产生重要影响。从以下多个角度讲,本书都具有重要的里程碑意义: 它让编译原理不再像是一门

      立即下载
      Mesos:大数据资源调度与大规模容器运行最佳实践
      Mesos:大数据资源调度与大规模容器运行最佳实践 高清版 立即下载
      全栈应用开发:精益实践
      全栈应用开发:精益实践 全书高清版

      本书可以为读者构建出清晰、完整的Web 开发体系,包括:前端、后台的技术选型,搭建构建系统,如何上线部署,并进行数据分析,以及如何在其中结合最好的工程实践等

      立即下载
      量化投资:数据挖掘技术与实践
      量化投资:数据挖掘技术与实践 MATLAB影印版

      全书内容分为三篇。第一篇(基础篇)主要介绍数据挖掘与量化投资的关系,以及数据挖掘的概念、实现过程、主要内容、主要工具等内容。感兴趣的可以下载学习

      立即下载
      读者留言
      码农之家

      码农之家 提供上传

      资源
      30
      粉丝
      4
      喜欢
      462
      评论
      15

      Copyright 2018-2020 xz577.com 码农之家

      本站所有电子书资源不再提供下载地址,只分享来路

      版权投诉 / 书籍推广 / 赞助:QQ:520161757