服务网格:Istio和AWS App Mesh

本周在AWS re:Invent上的重大公告之一是AWS App Mesh 。

在谈论它之前,让我们先看一下网格到底是什么……

什么是服务网格?

服务网格是微服务体系结构的基础结构层。 它处理服务之间的通信问题,使该通信更加可见(或“可观察”)且易于管理。 更具体地说,它可以处理诸如服务发现,路由和负载平衡,安全性(例如,加密,TLS,身份验证,授权)之类的事情,并提供错误处理(例如重试和断路)。

控制计划与数据平面

上面提到的功能(服务发现,路由,加密,身份验证/身份验证等)是将数据(网络数据包)执行进出微服务的操作。 结果,它们有时被称为“数据平面”。

我们如何控制对数据的操作称为“控制平面”。 控制平面是用于控制流量的策略和配置。

数据平面通常实现为与每个微服务一起运行的“边车”代理。 最受欢迎的是Envoy Proxy (由Lyft的人们创建),而这确实是AWS App Mesh所使用的。 过去,主要的控制平面是Istio ,但现在AWS App Mesh也已移入该空间。

数据平面和控制平面一起称为服务网格。

(我想您可能会争论AWS App Mesh是将Envoy用作其数据平面的控制平面,还是App Mesh只是具有相应数据和控制计划的Service Mesh。后者–认为App Mesh仅仅是一个Service Mesh –对我来说似乎更有意义)。

为什么我们需要服务网格?

尽管该术语是新术语,但数据平面的概念却并非如此。 路由,加密等是分布式计算必不可少的。 但是,控制平面的概念新概念,或者至少该概念以前从未真正被形式化或命名过。 马特·克莱因(Matt Klein)(Envoy的架构师) 认为 ,通常使用即席配置和脚本工​​具手动完成此操作。 但是,确实存在需求。 严重缺乏更容易控制和观察流量的功能。 我当然已经看到微服务的间歇性问题,您很难解释,开发人员耸了耸肩,问“网络问题?”。

使用边车在服务网格中处理这些类型的问题的好处是,它使应用程序(和相关的开发团队)从不必在每个应用程序中处理这些问题中解脱出来。 过去,通常会在每个应用程序中使用通用代码(例如库)来解决此类问题,但缺点是需要特定于语言以及必须与应用程序发行版捆绑在一起。

AWS App网格

新的AWS App网格(当前可作为公共预览使用)旨在使其“易于监视和控制在AWS上运行的微服务”。 App Mesh可以与在EC2上运行的ECS , EKS和Kubernetes一起使用,并且可以与现有的AWS服务(例如CloudWatch和X-Ray)结合使用 。

除了提供流量可观察性外,App Mesh还旨在帮助进行部署,允许您通过使用虚拟路由器来配置流量路由,并允许使用蓝色/绿色金丝雀部署来推出新的服务版本。

App Mesh没有额外的定价,仅针对您与ECS / EKS / EC2等一起使用的计算资源。

那Istio呢?

一段时间以来,Istio一直是主导的服务网格选项,并且在AWS App Mesh和Istio之间肯定有很多相似之处。 两者都是服务网格。 两者都包装Envoy作为数据平面。 两者的目的都是为了解决相似的需求,以允许您监视和控制微服务之间的流量。

但是,Istio是开源的,与供应商无关,并且已经存在了很长时间,因此更加成熟。 例如,Istio 安全功能包括通过支持mTLS进行传输(服务到服务)身份验证以及通过JWT并与Auth0 , Firebase Auth和Google Auth集成的原始(最终用户)身份验证 。 它还不仅支持使用AWS IAM的服务身份,还支持Kubernetes和GKE / GCE / GCP的服务身份。

AWS App Mesh确实提供了与IAM策略,角色和权限的集成,但是我无法在文档中找到有关身份验证支持的其他信息。 也许我只是想念它。 请注意,Istio通过Envoy提供了Mutual TLS身份验证,因此大概(?)App Mesh将能够执行此操作。

因此,App Mesh似乎缺少Istio的某些功能。 但是,考虑到AWS是房间中的800磅大猩猩,不仅拥有大量的工程资源,而且在工程界也得到了广泛的普及,因此它很有可能会成为主导工具。 它会取代Istio吗? 观看会很有趣……

参考资料和进一步阅读

  • re:Invent 2018中的“ AWS App Mesh简介”会话视频
  • 服务网格数据平面与控制平面 (Matt Klein)
  • AWS App Mesh (AWS)
  • 引入AWS App Mesh –适用于AWS (AWS) 上微服务的服务网格
  • AWS App Mesh (AWS) 入门
  • 特使代理
  • 伊斯蒂奥

翻译自: https://www.javacodegeeks.com/2018/12/service-mesh-istio-aws-app-mesh.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/344509.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【渝粤教育】电大中专消费者心理学_1作业 题库

1.在西方,早期思想家也有论及消费时令和消费季节的朴素思想。该说法() A.错误 B.正确 正确 正确答案:左边查询 学生答案:A 2.体系凝构阶段大致自20世纪70年代延至20世纪末或21世纪初。该说法() …

java按键发出声音代码_怎么在java中给按钮添加声音?

可以加入GTM时间,代码如下:public class ShowCurrentTime {public static void main(String args[]){//Obtain the total milliseconds since midnight,Jan 1,1970long totalMillisecondsSystem.currentTimeMillis();//Obtain the total seconds since i…

Spring字段依赖注入示例

学习如何编写Spring Field Injection示例 。 字段注入是Spring框架 依赖注入的一种 。 在本教程中,我们将编写几个类,并看一看现场注入工程。 有关Spring依赖注入的更多信息: Spring Setter依赖注入示例 Spring构造函数依赖注入示例 Spri…

java8 新特性之流式数据处理_Java8新特性 - 集合流式编程 - 最终操作

2、数据源的获取2.1、数据源的简介数据源,顾名思义,既是流中的数据的来源。是集合的流式编程的第一步,将数据源中的数据读取到流中,进行处理。注意:将数据读取到流中进行处理的时候,与数据源中的数据没有关…

【渝粤教育】电大中专电大中专职业健康与安全考试考核试题作业 题库

试卷答案 1根据系统安全工程的观点,危险是指系统中存在导致发生不期望后果的可能性超过了( ) A极限 B人们的承受程度 C危险度 D安全系数 错误 正确答案:左边查询 学生答案:A 2对职工来说,安全是&#xff0…

java jdt_在JDT中使用Java 8 Lambda

java jdt旧 Curmudgeon 认识Smalltalk的Dude 在修改Eclipse Java开发工具 (JDT)项目正在开发的Java 8支持时,我一直在使用这种语言。 我承认我对Java 8中的lambda有点不满意。 当然,这来自于知道Smalltalk (和LISP…

java 1.8签名apk_给Android的APK程序签名和重新签名的方法

签名工具的使用Android源码编译出来的signapk.jar既可给apk签名,也可给rom签名的。使用格式:java –jar signapk.jar [-w] publickey.x509[.pem] privatekey.pk8 input.jar output.jar-w 是指对ROM签名时需使用的参数publickey.x509[.pem] 是公钥文件pri…

【渝粤教育】电大中专职业生涯规划 (3)作业 题库

1职业价值观具有明确的目的性、( )和坚定性的职业选择的态度和行为。 A自由性 B动机性 C自觉性 D制约性 错误 正确答案:左边查询 学生答案:A 2不属于探索价值观方法的是( )。 A澄清反应法 B意见表决法 C间接…

使用Oracle验证外部数据

我经常在Corda Slack频道中闲逛,并尽可能回答问题。 我尝试回答的合理数量的问题与Oracle有关。 更具体地说,何时使用一个。 我觉得我可以回答,“当您需要验证可能经常更改的外部数据时使用Oracle”。 我可能在某个时候写了一个类似的答案。 …

【渝粤教育】电大中专药理学基础 (2)_1作业 题库

1.关于苯二氮卓类镇静催眠药的叙述,不正确的是()。 A.长期应用不会产生依赖性和成瘾性 B.是目前最常用的镇静催眠药 C.可用于治疗小儿高热惊厥 D.临床上用于治疗焦虑症 E.可用于心脏电复律前给药 错误 正确答案:左边查询 学生答案…

【渝粤教育】电大中专计算机职业素养 (11)作业 题库

1.用冰山模型说明职业素养构成时,我们把浮在水面上面的知识、技能等部分称为( )的职业素养。 A.获得 B.显性 C.专业 D.隐性 错误 正确答案:左边查询 学生答案:A 2.职业素养的基本内容包括:职业道德、职业意…

java 2d 教程_Java 2D开发技巧之“灯光与阴影”

Java 2D开发技巧之“灯光与阴影”(2016-12-14 02:12:25)标签:杂谈一、 引言在本文中,我们将向你展示如何为扁平形状添加一种灯光效果以实现一种类3D外观。也许你比较满意于自己的文字表达能力,但一幅图片往往能够产生更好的效果。对于图形处理…

【渝粤教育】电大中专跨境电子商务理论与实务 (17)作业 题库

1.在按照交易主体类型中,( )面对的最终客户为企业或集团客户,提供企业、产品、服务等相关信息。 A.C2C跨境电商或平台 B.B2C跨境电商或平台 C.O2O跨境电商或平台 D.B2B跨境电商或平台 错误 正确答案:左边查询 学生答案…

jooq代码生成_将jOOQ与Spring结合使用:代码生成

jooq代码生成我们可能在本教程的第一部分中还记得jOOQ指出 jOOQ从您的数据库生成Java代码,并允许您通过其流畅的API构建类型安全SQL查询。 本教程的第一部分描述了如何配置使用jOOQ的Spring驱动的应用程序的应用程序上下文,但没有描述如何使用jOOQ创建类…

【渝粤题库】陕西师范大学151109财务报告分析 作业(高起专)

《财务分析》作业 一、单选题 1.以下哪个不属于杜邦分析法的优点( )。 2.以下哪个不是比率的具体表现形式( )。 3.根据财务报表的审计结果,具有较大可信度的审计意见类型是( )。 4.关于杠杆的…

【渝粤题库】陕西师范大学200131中国古代文论 作业(专升本)

《中国古代文论》作业 一、注明下列文献的作者及年代: 1、《典论论文》 2、《文选序》 3、《戏为六绝句》 5、《与元九书》 6、《送孟东野序》 7、《六一诗话》 8、《雪涛阁集序》 9、《文赋》 10、《诗品》 11、《诗品序》 12、《文心雕龙》 13、《沧浪诗话》 14、…

java连接到mysql_[操作系统]Java如何连接到MySQL数据库的

[操作系统]Java如何连接到MySQL数据库的0 2016-05-01 15:00:15下载:mysql-connector-java-5.1.38.tar.gzhttp://dev.mysql.com/downloads/connector/j/tar zxvfmysql-connector-java-5.1.38.tar.gz解压后zhouspubuntu:~/Downloads$cd ./mysql-connector-java-5.1.38…

Spark Run本地设计模式

现在,许多Spark应用程序已成为遗留应用程序,很难在本地进行增强,测试和运行。 Spark具有很好的测试支持,但仍有许多Spark应用程序不可测试。 当您尝试运行一些旧的Spark应用程序时,我将分享一个常见错误。 Exceptio…

【渝粤题库】陕西师范大学201771 中国古代文学(一) 作业

《中国古代文学(一)》作业 一、单选题(共30小题,每题2分,共60分) 1、先秦以“笔法”、“微言大义”著称于世的史书是( ) A《尚书》 B《国语》 C《春秋》 D《战国策》 2、汉代“四家诗…

mave本地导入mysql的jar包_将本地的jar包引入到maven项目中

首先进入到maven的目录下,并且将要引入的jar包也放在这个目录下然后执行命令mvn install:install-file -DfilecheckDataAdapter-api.jar -DgroupIdorg.cegn.des -DartifactIdcheckDataAdapter-api -Dversion2.0 -Dpackagingjar等到success成功后,在maven…