博客
关于我
为什么服务网格、编排器决定了云原生部署的成败
阅读量:183 次
发布时间:2019-02-28

本文共 1247 字,大约阅读时间需要 4 分钟。

微服务的自包含、暂态性带来了一些大好处,但跟踪每一个微服务都是一个挑战,特别是当试图弄清楚当单个微服务发生故障时其余的如何受到影响时。最终的结果是,如果你在微服务架构中运维或开发,那么很有可能你花了不少时间去了解服务到底干了什么。

采用微服务后,大型系统中存在大量服务,问题随之而来——必须针对每个服务单独处理安全性、负载均衡、监控和速率限制等问题,而且这些问题必须针对一个单体一次性解决。

好消息是工程师无惧挑战,他们正在利用新兴的微服务工具和技术模式解决这些问题。

今天的云原生宠儿Kubernetes缓解了微服务带来的许多挑战。自动调度、水平扩展和服务发现解决了你在微服务中遇到的大多数构建和部署问题。

Kubernetes没有解决的是一些关键的容器化应用程序运行时问题。这就是服务网络发挥作用的地方。让我们看一下Kubernetes所提供的,以及Istio如何添加到Kubernetes以解决微服务运行时问题。

 

 

  •    Kubernetes解决了构建和部署挑战

容器编排工具(如Kubernetes)管理容器化应用程序带来的许多构建和部署挑战。

Kubernetes支持微服务架构,使开发人员能够抽象出一组pod的功能,并通过定义良好的API向其他开发人员公开服务。Kubernetes支持L4负载均衡,但它无法解决更高级别的问题,例如L7指标、流量分配、速率限制和电路中断。

  • 服务网格解决了运行时管理流量的挑战

服务网格有助于解决最终用户使用应用程序时出现的许多挑战。能够监控哪些服务正在相互通信(如果这些通信是安全的),并且能够控制集群中的服务到服务通信,是确保应用程序安全且灵活运行的关键。

通过在整个过程中生成统一的指标,Istio还可以在微服务架构中提供一致的视图。有了它,不再需要协调各种运行时代理发出的不同类型的指标,也不再需要添加任意代理来收集遗留的未检测应用程序的指标。它在你的多语言服务和集群中增加了一定程度的可观察性,这是任何其他工具在细粒度水平上无法实现的。

Istio还增加了更深层次的安全性。Kubernetes仅提供基本秘密分发和控制平面证书管理,Istio则提供mTLS功能,因此你可以对线路流量进行加密,以确保服务到服务通信是安全的。

  •    天作之合

将Kubernetes与服务网格Istio配对可以为你提供两全其美的优势,而且由于Istio是在Kubernetes上运行的,因此两者可以无缝协作。你可以使用Kubernetes来管理所有构建和部署需求,Istio来负责处理重要的运行时问题。

Kubernetes已经成熟到大多数企业都将其用于容器编排。目前,有74家CNCF认证的服务提供商——这证明了市场规模的庞大且不断增长。笔者认为Istio是Kubernetes的延伸,也是解决更多挑战的下一步。

Istio已经快速成熟,并开始在企业中更多地被采用。在2019年,我们将看到Istio成为企业的服务网格标准,就像Kubernetes作为容器编排的标准一样。

转载地址:http://bqpn.baihongyu.com/

你可能感兴趣的文章
nodejs 开发websocket 笔记
查看>>
nodejs 的 Buffer 详解
查看>>
NodeJS 的环境变量: 开发环境vs生产环境
查看>>
nodejs 读取xlsx文件内容
查看>>
nodejs 运行CMD命令
查看>>
Nodejs+Express+Mysql实现简单用户管理增删改查
查看>>
nodejs+nginx获取真实ip
查看>>
nodejs-mime类型
查看>>
NodeJs——(11)控制权转移next
查看>>
NodeJS、NPM安装配置步骤(windows版本)
查看>>
NodeJS、NPM安装配置步骤(windows版本)
查看>>
nodejs下的express安装
查看>>
nodejs与javascript中的aes加密
查看>>
nodejs中Express 路由统一设置缓存的小技巧
查看>>
nodejs中express的使用
查看>>
Nodejs中搭建一个静态Web服务器,通过读取文件获取响应类型
查看>>
Nodejs中的fs模块的使用
查看>>
NodeJS使用淘宝npm镜像站的各种姿势
查看>>
NodeJs入门知识
查看>>
nodejs包管理工具对比:npm、Yarn、cnpm、npx
查看>>