服务网格(Service Mesh)并不是新概念,但将其作为运行容器平台在Kubernetes之上的微服务连接来实现,则是服务网格变得更为流行的原因。如果没有服务网格,则每个微服务都需要配置接受并发送与其通信的其他微服务的连接,而服务网格完全改变了这一点。
开发者现在可以创建一个网格,使微服务能够以可靠,安全和可控的方式相互通信,而不必处理手动配置,并且不必花费大量时间和精力来维护微服务之间的连接。Kubernetes和服务网格相辅相成,因为使用服务网格可以实现更复杂的容器化架构,而不会增加额外的工作量。还有很多方法可以将服务网格建立为Kubernetes上的一层,来看看时下流行的服务网格工具。
AWS App Mesh
目前,许多Kubernetes支持的应用和微服务都在AWS的环境中运行,因此谈到服务网格很难避开AWS App Mesh不谈。AWS App Mesh是亚马逊自己的服务网格,为AWS的服务创建服务网格层。

AWS App Mesh结合了Envoy的专有技术作为其服务代理,通过创建虚拟服务在相同名称空间内的连接服务。AWS环境中的每个微服务都可以找到该虚拟服务,并将其用于将通信引导至其他微服务。
AWS App Mesh与其他AWS服务,如EKS,Fargate和EC2的无缝集成是其最强的优势之一,但是在使用AWS App Mesh方面存在一些限制,不能迁移到App Mesh外部或在多云设置中使用这项服务。
此外,App Mesh还借助CloudWatch和AWS X-Ray来管理服务网格,但这意味着你无需离开主仪表板就可完全控制服务网格层。尽管App Mesh不支持授权规则,但也支持如mTLS、高级负载均衡之类的安全功能。
Istio
Istio是Kubernetes最受欢迎的服务网格工具。最初是由为Lyft开发,之后成为了Google和IBM联合的开发项目。背靠这样的巨头,Istio在许多部署类型中得到广泛使用就不足为奇了。

与App Mesh相似,Istio也使用Envoy作为其服务代理,但并不仅限于Envoy作为唯一的入口控制器。Istio的独特之处在于它提供了巨大的灵活性,而没有通常的复杂性。实际上可以将Istio用于其他容器化平台,但是它与Kubernetes的无缝集成才是最为关键的
例如,Istio支持网格扩展和多集群网格,这两个功能都是App Mesh和许多其他服务网格工具所没有的。Istio也像执行这些任务一样处理流量访问控制和负载均衡。它甚至支持故障注入和延迟注入。
而使用Istio的唯一不足就是可能会对它提供的功能感到不知如何下手。但如果有足够的资源使用Istio处理服务网格层,则它可以利用其功能简化最复杂的微服务体系架构。
Linkerd
Linkerd也是非常流行的服务网格工具。Kubernetes社区已经很好地接受了新的系列版本,到2020年4月中旬,其稳定的2.7.1版本已经发布。它完全是作为独立的服务网格工具构建的,因此它不依赖Envoy等第三方工具进行管理。它甚至包含linkerd-proxy作为服务代理。

最近的升级,还包括仪表板改进和金丝雀部署的流量拆分功能的可视化。这使其成为实时监控和编排金丝雀和蓝/绿部署的绝佳工具。
Linkerd在保持独立性的同时,还与入口控制器保持高度兼容性。实际上,Linkerd能够与你使用的任何入口控制器一起使用,从而使其在这方面具有很好的灵活性。要使服务网格与应用程序集成在一起,只需要一个简单的连接器注入命令即可。
Linkerd2也进行了高度优化,安装仅需60秒。如果你正在寻找一个可以使表格发挥最佳性能的服务网格工具,那么可以尝试一下。Linkerd一旦部署,并不需要太多的优化。开箱即用的配置能够支持复杂的微服务阵列,并且能够防止重大攻击。Linkerd通过mTLS加密来增强应用程序安全性。
它也是专门为Kubernetes开发的工具,不支持多云和多集群网格创建,但是当用作Kubernetes实例的服务网格层时,它的功能也不会因此降低。此外,它还可以与OpenCensus配合使用,使跟踪和管理变得非常容易。
Kuma
Kuma提供了Envoy作为服务代理和对任何入口控制器支持的独特组合。它与Consul Connect非常相似,但有些新功能令人耳目一新,Kuma也是与其他工具相比,还很年轻。
Kuma不仅可以投入生产,而且还具有功能强大的服务网格功能。它支持与OpenTracing兼容的所有后端,并在需要时允许使用外部CA证书。但它还存在许多功能的不足。
目前,在Kuma中无法进行基于路径或基于标头的流量拆分,还不支持流量访问控制和指标等功能。这些功能可能会在以后的更新中引入,但是就目前而言,必须手动进行代理模板处理才能解决这些工具的不足。
尽管如此,Kuma看起来还不错。它当前为0.4.0的版本,它的开发团队正在不断听取社区用户的意见,尽快追上与其他服务网格工具的差距。
Consul Connect
HashiCorp的Consul Connect,它可以与Envoy和其他各种服务代理替代产品一起使用。它还可以与任何入口控制器一起使用,使其成为最容易集成到现有Kubernetes集群中的一种工具。
Consul Connect可在任何Consul环境中无缝运行。该服务网格工具虽然提供了许多方便的功能,但只能满足与其他HashiCorp产品一起使用。

它支持从TCP到gRPC的所有内容,也可与Kubernetes,VM和Nomads一起使用。完全支持网格扩展,因此可以拥有跨多个云服务和集群的环境,并且具有支持微服务的功能强大的服务网格层。
Consul Connect需要改进的一方面是监控。目前它可以集成其他监控工具来访问日志和按路由度量。如可以集成Prometheus和Grafana之类的工具来进行可视化数据监控。只需要从服务代理中提取数据即可,而不是直接从Consul Connect中提取数据。
Envoy Proxy
以上服务网格工具主要设计为与Envoy一起用作服务代理。与其他边缘代理工具相比,Envoy确实具有一些优势,高级负载均衡是所有这些工具中最突出的优势。

自动重试,区域本地负载均衡和请求屏蔽,使你可以配置流量负载均衡来实现最佳性能。另一方面,高可可视性使Envoy成为维护支持功能强大架构的强大网络的理想解决方案。
写在最后,这些工具的主要目标是创建一种云架构,以满足微服务以可靠,安全的方式相互通信。无论你使用以上哪种工具,都能够实现这个目标。
2023-04-21 20:38:07 admin
置顶通知!发帖请务必遵守法律法规2023-04-21 20:28:29 admin
活动发布区版规2023-04-11 19:07:00 沐浴阳光
2020年Kubernetes即...2023-04-11 18:35:03 门吉木易
云计算:为什么金融市场的未来在云...2023-04-11 16:51:21 cnleung
云计算:为什么多云应该是单云的首...2023-04-11 16:01:08 兵棕
为什么AIOps工具最终可以为云...2022-02-26 05:23:03 冷雨点枫
DNS服务器配置之添加正向查找区...2022-02-11 05:23:03 chense
Windows下Apache安装2022-07-27 18:23:02 sy_901
微软开发ARM版WindowsS...2021-08-09 01:35:43 瑟琳娜
企业网站建设根本是向客户营销运营...2021-10-26 05:30:02 jiess
跑分订单匹配互助抢单系统开发2021-08-23 05:30:03 ook
提高网站排名就要提升网站页面价值2021-08-15 05:30:02 青青子w
营销网站建设让人们了解更多信息2021-08-17 05:30:03 terryzxc001
营销网站建设,为您提供最好最优质...2021-11-15 05:30:02 gzx001
百媚优选系统模式APP开发2021-12-30 05:30:03 longmei
什么是托管服务器?2022-01-06 05:30:04 han890926
河南联通核心机房设备维保公开招标2022-01-10 05:30:04 athlon64
那些城市可以来服务器托管?2022-02-19 05:23:03 ghh
根域名服务器配置2022-07-30 20:23:02 heiren
宝德多子星服务器家族蓄势而发,打...2022-07-31 06:23:02 randywong
浪潮服务器“全面接盘”IBM中国...2022-08-11 04:46:02 pizi
浪潮多节点云服务器入选单项冠军产...2021-11-01 05:30:02 fdfjdlkfjslkj
全球看点系统APP模式开发2022-07-19 06:46:01 yuhaonan
服务器CPU市场上的“斗士”