容器编排无法解决微服务的所有问题,你还需要服务网格

栏目: 后端 · 发布时间: 5年前

内容简介:最近的几次关于容器使用情况的调研都得到了相似的结果,开发团队不仅采用而且开始拥抱容器技术。大多数人并没有像超大型组织那样大规模的使用容器。在一项思科赞助的调研中发现有超过8000家企业在生产环境中使用容器。这听起来令人印象深刻,但他们使用容器的规模有限。在[戴尔EMC,英特尔和红帽委托的Forrester报告]()中,63%使用容器的企业运行的实例超过100个,82%预计到2019年会达到这一规模。这与超大型技术公司使用的数十万的规模相距甚远。虽然采用率很高,这并不是说组织使用容器的道路就是一帆风顺的。采

最近的几次关于容器使用情况的调研都得到了相似的结果,开发团队不仅采用而且开始拥抱容器技术。大多数人并没有像超大型组织那样大规模的使用容器。在一项思科赞助的调研中发现有超过8000家企业在生产环境中使用容器。这听起来令人印象深刻,但他们使用容器的规模有限。在[戴尔EMC,英特尔和红帽委托的Forrester报告]()中,63%使用容器的企业运行的实例超过100个,82%预计到2019年会达到这一规模。这与超大型技术公司使用的数十万的规模相距甚远。

虽然采用率很高,这并不是说组织使用容器的道路就是一帆风顺的。采纳任何一样新技术都是存在挑战的。人们使用容器时最关心的是:网络和管理。其次才去关注安全性和不一致性。

容器编排无法解决微服务的所有问题,你还需要服务网格

网络挑战是由于Kubernetes等流行的容器编排软件所带来的。Kubernetes构建的就是要支持微服务架构。这允许开发和运维人员将功能抽象成一组pod,并将其作为“service”暴露出来,并通过定义好的API进行访问。Kubernetes支持DNS和基于TCP的L4负载均衡。

基于TCP L4负载均衡的问题是它无法与L7(应用程序和API层)交互。对于任何L4负载均衡都是如此;它不是容器和Kubernetes独有的东西。L4负载均衡提供了对连接级别(TCP)协议和指标的可见性,但仅此而已。这使得很难(真的不可能)解决高阶问题,例如每秒请求数或事务等L7指标以及基于路径分割流量(路由请求)。这也意味着您无法在API层进行速率限制或支持重试和断路等关键功能。

因为缺乏这些功能,开发人员就不得不将它们编码到每个微服务中。这导致运维代码包含在业务逻辑中。这明显不太合适,因为它显然违反了微服务设计的原则。因为它为微服务增加了构建和技术债。

虽然Kubernetes特别擅长处理容器化应用程序的构建和部署,但是它缺乏在运行时监控基于微服务的应用程序所需的关键功能。Kubernetes只能提供基本的健康检查存活探针和就绪探针,不能为开发和运维人员提供在执行期间快速有效地诊断问题所需的度量和追溯微服务的调用。让开发人员使用微服务来生成一致的指标可能是一项重大挑战,尤其是当他们要在限定时间内完成客户所需功能时,这会给他们带来很大的压力。

而Service Mesh是解决kubernetes在网络和管理方面问题的完美解决方案。

Service Mesh如何应对挑战

Service Mesh通过在Kubernetes的一些列pod中注入sidecar代理能够很好的解决这些问题。通过直接注入到容器环境,sidecar代理能够透明化网络和一致度量指标。由于所有流量都通过sidecar代理进行有效路由,因此它可以自动生成并将所需的指标提供给网格的其它部分。对于在容器环境中部署传统应用程序的组织而言,这非常有价值。传统应用程序不太可能适用于现代环境。使用Service Mesh及其sidecar代理基本使这些应用程序能够产生正确的指标,而无需或很少需要添加/修改代码。

这也意味着您不必花时间协调由各种运行时代理生成的不同指标。您可以依靠服务网格在所有应用程序和微服务中生成一致的度量标准集合。

这些指标包含提供给网格的更高阶数据点,并启用更高级的网络以确保对请求的最快可用响应。在Service Mesh中重试和断路器由sidecar代理处理,这减轻了开发人员将运维代码引入其微服务的负担。由于sidecar代理不受限于L4负载均衡(TCP),所以靠L7负载均衡(应用程序和API层)它支持更高级别的消息路由技术。

容器编排无法解决微服务的所有问题,你还需要服务网格

容器编排是一个很好的基础设施,但企业组织需要的不仅仅是一个良好的基础设施。他们需要能够与堆栈上层的服务进行交互的能力,这需要使用指标和现代架构去实现。

服务网格可以很好的提供这两种服务。当您需要超越容器编排时,请使用服务网格。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

领域特定语言

领域特定语言

Martin Fowler / ThoughtWorks中国 / 机械工业出版社华章公司 / 2013-3 / 89.00元

本书是DSL领域的丰碑之作,由世界级软件开发大师和软件开发“教父”Martin Fowler历时多年写作而成,ThoughtWorks中国翻译。全面详尽地讲解了各种DSL及其构造方式,揭示了与编程语言无关的通用原则和模式,阐释了如何通过DSL有效提高开发人员的生产力以及增进与领域专家的有效沟通,能为开发人员选择和使用DSL提供有效的决策依据和指导方法。 全书共57章,分为六个部分:第一部分介......一起来看看 《领域特定语言》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具