《2018年基于Istio+on+Kubernetes云原生应用的最佳实践.pdf》由会员分享,可在线阅读,更多相关《2018年基于Istio+on+Kubernetes云原生应用的最佳实践.pdf(29页珍藏版)》请在三个皮匠报告上搜索。
1、基于Istio on Kubernetes云原生应用的最佳实践微服务架构-Service Mesh 与 Istio阿里云容器服务在 Istio 上的实践、优化整合及最新进展基于K8S+Istio的云原生应用负载的实践分享4东西向与南北向流量管理5公共网络私有网络公共IngressGateway私有IngressGatewayMeshGateway(sidecar)MeshGateway(sidecar)Service AService BEgressGateway外部服务服务网格边界工作负载A工作负载B通过Egress Gateway将 Istio功能(例如监控和路由规则)应用于 Egress
2、流量。直接通过sidecar访问外部服务从单体应用过渡到微服务架构q带来的挑战:服务发现、负载均衡、故障容忍、端到端监测、动态路由等q通过Client Library方式构建在应用程序中q不同编程语言的解决方案差异大、缺少共性6Sidecar71.Service Discovery2.Observability(metrics)3.Rate Limiting4.Circuit Breaking5.Traffic Shifting6.Load Balancing7.Authentication and Authorization8.Distributed TracingService Mesh与
3、 IstioService Mesh服务网格提供了一种透明且语言无关的方式,用于连接、保护、控制和观测服务。Istio 是一个开放的、与平台无关的服务网格实现,它提供了:Pilot 流量管理Citadel安全保护Mixer Policy策略执行Mixer Telemetry遥测采集8From https:/www.shantala.io/service-mesh-for-microservices/Istio的工作原理(1)ServiceConsumerServiceProvider01ServiceConsumerServiceProviderEnvoy ProxyEnvoy Proxyca
4、llSidecar部署callPODPOD9PODPODIstio的工作原理(2)2ServiceConsumerServiceProviderEnvoy ProxyEnvoy ProxycallIstioPilotEnvoy Proxy配置管理&服务查询10Istio的工作原理(3)3ServiceConsumerServiceProviderEnvoy ProxyEnvoy ProxycallMixerPolicyEnvoy ProxyMixerTelemetryEnvoy Proxy策略执行遥测数据收集11Istio的工作原理(4)4ServiceConsumerServiceProvi
5、derEnvoy ProxyEnvoy Proxycall密钥和证书管理IstioCitadelEnvoy Proxy12Istio下服务间调用过程ServiceConsumerServiceProviderEnvoy ProxyEnvoy ProxyIstioPilotEnvoy ProxyIstioMixerEnvoy ProxyIstioCitadelEnvoy Proxy1235413Service Mesh&Istioq 以Sidecar方式解耦Proxy和应用进程q 应用中服务调用无感知q 兼容通用Proxy,由Pilot管控规则q Telemetry数据统一上报Mixerq 支持
6、多种Service Registry14Istio社区官方支持一键部署、开箱即用15Istio社区官方支持阿里云监控Adapter16阿里云容器服务与Istio 服务网格17分布式跟踪 Jaeger(基于阿里云日志服务)18成本更低廉功能更强大可视化Kiali:服务间的调用与版本切换19基于K8S+Istio的云原生应用负载20Istio+Kubeflow:实现Serving路由管理21部署新版本模型服务,并基于Istio进行流量分发#arena serve tensorflow-enableIstio-servingName=mymnist-servi