博客
关于我
为什么服务网格、编排器决定了云原生部署的成败
阅读量: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/

你可能感兴趣的文章
MySQL 调优/优化的 101 个建议!
查看>>
mysql 转义字符用法_MySql 转义字符的使用说明
查看>>
mysql 输入密码秒退
查看>>
mysql 递归查找父节点_MySQL递归查询树状表的子节点、父节点具体实现
查看>>
mysql 里对root及普通用户赋权及更改密码的一些命令
查看>>
Mysql 重置自增列的开始序号
查看>>
MySQL 高可用性之keepalived+mysql双主
查看>>
mysql-connector-java各种版本下载地址
查看>>
mysql-group_concat
查看>>
MySQL-【4】基本操作
查看>>
Mysql-丢失更新
查看>>
Mysql-事务阻塞
查看>>
Mysql-存储引擎
查看>>
mysql-开启慢查询&所有操作记录日志
查看>>
MySQL-数据目录
查看>>
MySQL-数据页的结构
查看>>
MySQL-架构篇
查看>>
MySQL-索引的分类(聚簇索引、二级索引、联合索引)
查看>>
Mysql-触发器及创建触发器失败原因
查看>>
MySQL-连接
查看>>