在RE:发明2018年,AWS宣布了AWS App Mesh.公共预览,一个服务网格,允许您轻松监视和控制跨应用程序的通信。今天,我很高兴地宣布,App Mesh通常可供客户使用。

新的建筑模式

Many customers are modernizing their existing applications to become more agile and innovate faster. Architectural patterns like microservices enable teams to independently test services and continuously deliver changes to applications. This approach optimizes team productivity by allowing development teams to experiment and iterate faster. It also allows teams to rapidly scale how they build and run their applications.

当您构建新的服务时,所有都需要一起工作作为应用程序,他们需要在整个应用程序中连接,监控,控制和调试通信的方法。此类功能的示例包括服务发现,应用程序级度量和日志,以帮助调试流量模式,流量整形以及保护服务之间的通信的能力。

您通常必须将通信管理逻辑构建到SDK中,并要求每个开发团队使用它。必威体育精装版app官网然而,由于申请增长并且随着团队的数量增加,始终如一地提供这些能力变得复杂且耗时的开销。

我们的目标是自动化和摘要为每个现代应用提供的通信基础设施,允许团队专注于建立业务逻辑和更快的创新。

重新定义网络

从历史上看,当您必须为您的应用程序设置服务时,您必须做的第一件事之一就是设置网络,虚拟私有云(VPC)。一切都在VPC的上下文中发生。我们的目标是,如果您在AWS上运行应用程序,则不必担心管理网络基础架构。它应该由我们的应用程序感知网络处理。我们的网络自动化对服务要求的输入转换为基础架构所需的配置,并管理其生命周期。App Mesh,正如今天存在的那样,这是这一旅程的第一步。

App Mesh Vision.

如果您正在运行多个服务等内容ed by different teams, each team ideally provides input only on the specific requirements of their own service. They don't have to understand the details of the infrastructure powering their service.

我说的开必威体育精装版app官网发人员不关心接线每一块应用程序。他们关心问题,如我服务可以谈论什么?我可以访问哪个AWS资源?如何处理错误和重试?如何在接受所有流量之前连接和测试我的新服务版本?我需要哪些身份和授权来启动连接或接受连接?这是应用网格尝试的内容。

App Mesh为您提供了一种简单,声明的模型服务通信方法。您可以定义服务到服务通信的规则,并自动处理其他所有内容。将其作为其应用程序中服务之间所有通信的单一控制点。

它提供一致的指标,日志和追踪,并在应用程序中提供端到端可见性,以帮助您快速识别和调试问题。App Mesh提供流量路由控件,以实现测试和部署新版本的服务。

我们对App Mesh的愿景是一个AWS-Native Service网格,与AWS原语和高级服务相同。这些包括AWS Cloud Map(如AWS Cloud Map)等高级服务,如Amazon EC2和AWS Fargate等元素,包括AWS EKE,Amazon EC和EC2上的客户管理的Kubernetes等编排工具。使用App Mesh本机集成到AWS Cloud Map,服务网格中的任何服务都会将其帐户中的其他AWS资源获取地图。

App Mesh今天如何工作?

App Mesh与您的部署的每个微服务运行并管理通信,为整个应用程序形成服务网格。App Mesh提供了一个AWS托管控制平面,您可以用于为您的服务进行建模并提供用于识别服务实例的声明性配置以及每个服务所需的策略。

App Mesh使用开源,高性能网络代理,称为Senfoy,它与您的应用程序一起运行。它被认为是在分布式应用程序中管理网络流量流动的标准。最重要的是,我们使用的是,因为我们的许多客户已经使用它,使App Mesh采用非常简单。如果您已经运行了基于特使的服务网格,则采用App Mesh只需要几个基本步骤。

要开始,请使用App Mesh Console,API或AWS SDK在服务之间配置服务网格和控制流量。接下来,您将特使添加到EC2实例,ECS或FARGATE任务或Amazon Eck或Kubernetes Pod定义中,以满足您部署的每个服务。

应用网格计算并将所需的配置分发到与每个服务一起部署的代理,基于提供程序服务的策略。App Mesh数据平面是App网格控制平面配置的一组代理,以处理服务的所有传入和传出流量。

使用App Mesh,您可以轻松地导出延迟,错误率,错误代码,服务通信痕迹和服务级日志等服务指标。这允许您向多个AWS和第三方工具发送指标,包括Amazon CloudWatch,AWS X射线,或与Envoy集成的任何第三方监视和跟踪工具。

今天,使用App Mesh,您可以以加权方式路由服务之间的流量,这使得可以轻松地安全且一致地部署服务。将来,您将能够以一致方式配置新的流量路由功能,如重试,超时,断路和服务器端速率限制。

How is App Mesh built?

App Mesh专注于提供高度可扩展和弹性的服务网格,支持任何客户工作负载,从数十到数百个不同的服务。我们构建了应用网格到与所有AWS服务的关键原则的操作可用性,可扩展性和安全性相同的高标准。

我们的目标是删除未分化的繁重提升操作复杂应用。我们提供工具,服务和可观察性,以确保您可以为您自己的架构维护高标准。

App Mesh支持在EC2上的EKS,ECS,FARGATE,EC2和Kubernetes上运行的服务。一些客户已经在AWS内的托管平台上运行了他们的应用程序。但是,我们了解,许多客户需要能够将在AWS上部署的服务连接到单个网格中。它们还可能需要灵活地运行跨越计算资源的异构集合。

App Mesh允许您在不同的计算环境上运行Mesh,其中迁移路径允许您使用计算资源,如您所符合适合。它在不同的计算环境中提供了一致的可观察性和路由控件。我们希望使其简单地使任何连接到网络数据平面的参与者。

在您的应用程序通过服务网格通信后,下一个目标是提供明确的所有权和服务资源的受控变更。App Mesh API旨在为服务提供所有权的边界,以及实现它们的网络组件。从拥有整个服务网格到大公司的小型团队,应用网格可以安全,交易更改服务网格数据平面上的组件。

例如,服务主可以定义应用程序的流量策略,App Mesh会自动将这些策略分发给适当的消费者。通过与其他AWS产品的集成,例如Amazon CloudWatch日志,Amazon CloudWatch指标和AWS X射线,我们提供了启用Mesh应用程序的安全部署和操作所需的可观察性工具。

Partners adopting App Mesh

我们的合作伙伴生态系统一直与AWS密切合作,以将产品与App Mesh集成,并帮助您提供可观察性,服务发现和安全性的工具。这些合作伙伴包括:

alcide,Aqua,Datadog,Hashicorp,Neuvector,Signalfx,Solarwinds,SpotiNst,Sysdig,Tetrate,Twistlock,VMware波前和Weaveworks

Get started with App Mesh

从今天开始,您可以使用App Mesh与ECS,EKS,Fargate和EC2上运行的AWS上的任何Kubernetes部署管理的服务网。您甚至可以使用直接在EC2上运行的应用程序使用它。

我们看到一般可用性作为起始线,而不是终点线。我们希望让您有机会与我们建立,很快我们将推出AWS App Mesh.Beta Channel。这是一个新的公共服务端点,允许您在通常提供的新服务功能上尝试并提供反馈。此新服务端点将与标准生产端点分开。它将与AWS CLI的预览版本耦合,允许您在不影响其当前生产基础架构的情况下测试新功能。

要了解更多信息,请参阅AWS App Mesh.详细信息页面。

评论