云原生技术分享篇丨浅析Istio流量管理

Istio为希腊语,意思是“起航”,是由Google、IBM和Lyft开源的微服务管理、保护和监控框架。Istio作为服务网格的典型实现,解决了开发人员和运营商在分布式微服务架构中面临的挑战。

Istio通过无侵入的方式提供了统一的微服务治理解决方案,其功能包括负载均衡、安全通信、流量管理和流量观测等。其主要特性包括:

1、使用 TLS 加密、强身份认证和授权的集群内服务到服务的安全通信;

2、自动负载均衡的HTTP, gRPC, WebSocket和TCP流量;

3、通过丰富的路由规则、重试、故障转移和故障注入对流量行为进行细粒度控制;

4、一个可插入的策略层和配置API,支持访问控制、速率限制和配额;

5、对集群内的所有流量(包括集群入口和出口)进行自动度量、日志和跟踪。
在这里插入图片描述
​Istio 的流量管理模型源于和服务一起部署的 Envoy 代理。网格内服务发送和接收的所有流量都经由 Envoy 代理,这让控制网格内的流量变得异常简单,而且不需要对服务做任何的更改。其实现流量管理主要通过以下几种资源:

1、Gateway(网关):为网格管理入站和出站流量,并对流量进行端口、协议和证书的配置;

2、 VirtualService( 虚拟服务):配置了如何在服务网格内将请求路由到服务,这基于Istio和平台提供的基本的连通性和服务发现能力。

3、DestinationRule(目标规则):将虚拟服务流量路由到给定目标地址,然后使用目标规则来配置该目标的流量。

三种资源分别负责流量管理过程中的部分核心功能,三者相互协调工作最终实现istio配置可观测、功能可扩展的流量管理能力。

接下来通过一个简单的示例来说明一下istio流量管理的流程:

1、外部请求通过域名a.demo.com访问;

2、 配置了*.demo.com的Gateway对外部请求进行端口、协议及证书的处理;

3、配置了a.demo.com域名的VirtualService经过规则匹配外部请求(uri、headers等),将其转发至Service A的v1子版本,并进行错误注入、流量复制等操作;

4、DestinationRule中定义了Service A的子版本v1、v2、v3,并为其提供异常检测、熔断限流等访问策略配置;

5、流量最终分发至Service A/v1版本并受DestinationRule访问策略的控制;
在这里插入图片描述

浪潮海岳云原生平台内置支持服务网格功能,主要功能包括:网关管理、目标规则、虚拟服务、流量控制、灰度发布等。通过可视化的界面,能够帮助运维人员快速的进行服务网格的配置,降低服务网格运维门槛,提升运维效率。
在这里插入图片描述

其主要特性有:

1、网关管理

支持多业务多网关配置管理。为关键业务应用配置其单独访问网关,从而实现关键业务的分离,确保关键业务的稳定与安全,解决通用网关场景下网关崩溃导致的关键应用瘫痪问题。

2、流量控制

支持页面快速配置简单路由目标服务或子版本及路由规则,例如,uri匹配,头信息匹配,端口匹配、网关匹配等匹配规则;以及路由流量的故障注入、流量复制、目标服务及其子版本的异常检测、熔断限流等配置功能。

3、灰度发布

支持多种灰度发布模式(金丝雀发布、蓝绿发布),可实现灰度子版本的流量切换、版本下线以及基于流量配比或基于头信息匹配的子版本快速上线功能。

4、黑白名单

支持根据访问请求的IP地址配置黑白名单进行请求拦截,实现非法ip访问拦截等功能

5、网格资源管理

支持对istio核心资源的配置修改,实现对VirtualService中http、tcp、tls三种类型路由配置修改,实现对DestinationRule中服务子版本及其流量策略的配置修改。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值