编辑推荐
媒体评论
目录
第1章 服务网格的历史t1
1.1 Spring Cloudt3
1.2 Linkerdt4
1.3 Istiot6
1.4 国内服务网格的兴起t6
第2章 服务网格的基本特性t8
2.1 连接t9
2.2 安全t12
2.3 策略t13
2.4 观察t13
第3章 Istio基本介绍t15
3.1 Istio的核心组件及其功能t16
3.1.1 Pilott16
3.1.2 Mixert18
3.1.3 Citadelt20
3.1.4 Sidecar(Envoy)t20
3.2 核心配置对象t21
3.2.1 networking.istio.iot22
3.2.2 config.istio.iot24
3.2.3 authentication.istio.iot27
3.2.4 rbac.istio.iot28
3.3 小结t28
第4章 Istio快速入门t29
4.1 环境介绍t30
4.2 快速部署Istiot31
4.3 部署两个版本的服务t33
4.4 部署客户端服务t37
4.5 验证服务t39
4.6 创建目标规则和默认路由t39
4.7 小结t42
第5章 用Helm部署Istiot43
5.1 Istio Chart概述t44
5.1.1 Chart.yamlt44
5.1.2 values-*.yamlt45
5.1.3 requirements.yamlt46
5.1.4 templates/_affinity.tplt47
5.1.5 templates/sidecar-injector-configmap.yamlt47
5.1.6 templates/configmap.yamlt48
5.1.7 templates/crds.yamlt48
5.1.8 chartst48
5.2 全局变量介绍t49
5.2.1 hub和tagt49
5.2.2 ingress.enabledt50
5.2.3 Proxy相关的参数t51
5.2.4 proxy_init.imaget53
5.2.5 imagePullPolicyt53
5.2.6 controlPlaneSecurityEnabledt53
5.2.7 disablePolicyCheckst53
5.2.8 enableTracingt53
5.2.9 mtls.enabledt53
5.2.10 imagePullSecretst54
5.2.11 archt54
5.2.12 oneNamespacet54
5.2.13 configValidationt54
5.2.14 meshExpansiont55
5.2.15 meshExpansionILBt55
5.2.16 defaultResourcest55
5.2.17 hyperkubet55
5.2.18 priorityClassNamet55
5.2.19 crdst56
5.2.20 小结t56
5.3 Istio安装清单的生成和部署t56
5.3.1 编辑values.yamlt56
5.3.2 生成部署清单t58
5.3.3 部署Istiot58
5.4 小结t59
第6章 Istio的常用功能t60
6.1 在网格中部署应用t61
6.1.1 对工作负载的要求t63
6.1.2 使用自动注入t64
6.1.3 准备测试应用t69
6.2 修改Istio配置t69
6.3 使用Istio Dashboardt70
6.3.1 启用Grafanat70
6.3.2 访问Grafanat71
6.3.3 开放Grafana服务t73
6.3.4 学习和定制t74
6.4 使用Prometheust76
6.4.1 访问Prometheust76
6.4.2 开放Prometheus服务t77
6.4.3 学习和定制t77
6.5 使用Jaegert77
6.5.1 启用Jaegert78
6.5.2 访问Jaegert78
6.5.3 跟踪参数的传递t81
6.5.4 开放Jaeger服务t86
6.6 使用Kialit87
6.6.1 启用Kialit87
6.6.2 访问Kialit88
6.6.3 开放Kiali服务t92
6.7 小结t92
第7章 HTTP流量管理t93
7.1 定义目标规则t94
7.2 定义默认路由t98
7.3 流量的拆分和迁移t101
7.4 金丝雀部署t105
7.5 根据来源服务进行路由t108
7.6 对URI进行重定向t110
7.7 通信超时控制t115
7.8 故障重试控制t116
7.9 入口流量管理t120
7.9.1 使用Gateway开放服务t121
7.9.2 为Gateway添加证书支持t123
7.9.3 为Gateway添加多个证书支持t124
7.9.4 配置入口流量的路由t126
7.10 出口流量管理t127
7.10.1 设置Sidecar的流量劫持范围t128
7.10.2 设置ServiceEntryt129
7.11 新建Gateway控制器t131
7.12 设置服务熔断t134
7.13 故障注入测试t136
7.13.1 注入延迟t137
7.13.2 注入中断t138
7.14 流量复制t139
第8章 Mixer适配器的应用t142
8.1 Mixer适配器简介t143
8.2 基于Denier适配器的访问控制t144
8.3 基于Listchecker适配器的访问控制t146
8.4 使用MemQuota适配器进行服务限流t150
8.4.1 Mixer对象的定义t150
8.4.2 客户端对象定义t152
8.4.3 测试限流功能t153
8.4.4 注意事项t154
8.5 使用RedisQuota适配器进行服务限流t155
8.5.1 启动Redis服务t155
8.5.2 定义限流相关对象t156
8.5.3 测试限流功能t158
8.6 为Prometheus定义监控指标t158
8.6.1 默认监控指标t159
8.6.2 自定义监控指标t162
8.7 使用stdio输出自定义日志t165
8.7.1 默认的访问日志t167
8.7.2 定义日志对象t169
8.7.3 测试输出t170
8.8 使用Fluentd输出日志t171
8.8.1 部署Fluentdt171
8.8.2 定义日志对象t173
8.8.3 测试输出t174
8.9 小结t175
第9章 Istio的安全加固t176
9.1 Istio安全加固概述t177
9.2 启用mTLSt179
9.3 设置RBACt183
9.4 RBAC的除错过程t189
第10章 Istio的试用建议t192
10.1 Istio自身的突出问题t193
10.2 确定功能范围t194
10.3 选择试用业务t196
10.4 试用过程t197
10.4.1 制定目标t197
10.4.2 方案部署t198
10.4.3 测试验证t200
10.4.4 切换演练t201
10.4.5 试点上线t201
在线试读
内容介绍
在微服务浪潮的推动之下,微服务的治理成为了新的技术热点,从Linkerd提出Service Mesh(服务网格)概念开始,这一理念的几个相关产品经过一番短暂较量,Google/IBM/Lyft合作推出的 Istio 系统成为了目前服务网格技术的事实标准。本书试图从基本概念开始,结合实际工作场景和企业试点采纳步骤,来对这一新生系统做一个相对完整的应用指南。
细节图
作者介绍
崔秀龙HPE软件分析师;Istio、Kubernetes项目成员;Istio.io主要贡献者之一;《Kubernetes权威指南:从Docker到Kubernetes实践全接触》作者;《Kubernetes权威指南:企业级容器云实战》作者;自动化、马拉松爱好者。
评论晒单