检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
流量分发 流量分发概述 创建流量策略 管理流量策略
服务网格 网格管理 服务管理 灰度发布 流量治理 服务安全 服务网关 监控中心
流量治理 概述 服务路由 流量策略 父主题: 服务网格
服务路由 服务路由概述 创建服务路由 更新服务路由 服务路由协议 重试 重写 请求超时 流量镜像 CORS 头域控制 故障注入 父主题: 流量治理
概述 流量治理是Istio的核心功能,其目标是提供非侵入的流量治理能力,用户仅仅关注自己的业务逻辑,无需关注服务访问管理。流量治理要解决的问题类似如下: 动态修改服务间访问的负载均衡策略,比如配置一致性哈希将流量转发到特定的服务实例上。 同一个服务有两个版本在线,将一部分流量切到某个版本上。
重写 开启重写,可以在不修改客户端的访问的目标地址前提下,根据配置重写请求的URL。 YAML设置如下: apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata: name: ratings-route
前提条件 准备一个云上虚拟私有云(VPC),并将集群的第三方云厂商网络环境与该VPC连通,具体可以选用如下两种方案: 虚拟专用网络(VPN)方案:具体操作请参见通过VPN连接云下数据中心与云上VPC。 云专线(DC)方案:具体操作请参见用户通过单专线静态路由访问VPC或用户通过单专线BGP协议访问VPC。
本文以华为云的内网DNS为例,您也可自行配置DNS。 创建内网DNS,在ECS上通过公网的方式访问服务,ECS请先绑定EIP或者NAT配置公网出口。 创建与ECS相同VPC的内网域名,该域名为MCI中指定的域名。 将两个ELB实例的公网IP分别添加至集群的记录集。 在ECS上通过域名curl demo.localdev
重试 开启重试,服务访问失败时会自动重试,提高总体访问成功率和质量。 YAML设置如下: apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata: name: ratings-route spec:
源命名空间 匹配源服务的命名空间 服务目标参数 版本 选择服务子集版本 流量权重 可以控制实例上接收的流量比例,输入值必须在0到100之间 TCP协议服务路由 所有不满足以上HTTP和TLS条件的流量都会应用TCP流量规则。 表3 TCP协议服务路由参数 匹配条件参数 目标子网 目标IP地址匹配的IP子网
SOA类型的记录集标识了对此域名具有最终解释权的主权威服务器。 NS类型的记录集标识了此域名的权威服务器。 您可以根据域名所在区域修改NS记录集的值,详细内容请参考华为云DNS对用户提供域名服务的DNS是什么?。 步骤二:更改域名的DNS服务器 域名的DNS服务器定义了域名用于解析的权威DNS服务器。 当通过云解析服
请求超时 开启请求超时,服务访问超时系统会自动处理,快速失败,避免资源锁定和请求卡顿。 YAML设置如下: apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata: name: my-productpage-rule
服务路由概述 服务路由定义了对特定目标服务的一组流量规则,在形式上表示一个虚拟服务,将满足条件的流量都转发到对应的服务后端。 这个服务后端可以是一个服务,也可以是在流量策略中定义的服务的子集。 服务路由描述了一个具体的服务对象,在该服务对象内包含了对流量的各种处理,其主体是一个服务而不是一组规则,更易于理解。
下: 登录UCS控制台,单击左侧导航栏中的“服务网格”,进入服务网格列表页。 单击服务网格名称,进入服务网格详情页。 在左侧导航栏,单击“流量治理 > 服务路由”,进入服务路由列表页面。 单击右上角“YAML创建”,弹出服务路由YAML创建界面。 当前数据选择YAML,在编辑栏进行编辑(根据实际需求调整配置参数):
控制台更新服务路由操作步骤如下: 登录UCS控制台,单击左侧导航栏中的“服务网格”,进入服务网格列表页。 单击服务网格名称,进入服务网格详情页。 在左侧导航栏,单击“流量治理 > 服务路由”,进入服务路由列表页面。 单击列表右侧操作列下的“YAML编辑”。 根据实际需求,例如修改URI更新服务路由,YAML设置如下:
头域控制 开启头域控制,可以灵活增加、修改和删除指定HTTP头域,非侵入方式管理请求内容。只支持路由上的头域操作,暂不支持对于特定后端的头域操作。 YAML设置如下: apiVersion: networking.istio.io/v1beta1 kind: VirtualService
故障注入 故障注入是一种有效的测试方法,它能够将错误引入系统,以确保系统能够承受错误的并从错误中恢复。开启故障注入,可以通过配置灵活注入延迟或特定错误,开展故障测试。 以延迟故障注入为例,YAML设置如下: route: - destination: host:
重定向 开启重定向,可以在客户端将对目标地址的请求重定向到配置的新的目标地址。 YAML设置如下: apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata: name: ratings-route
此漏洞允许恶意攻击者发起针对HTTP/2 服务器的DDoS攻击,使用 HEADERS 和 RST_STREAM发送一组HTTP请求,并重复此模式以在目标 HTTP/2 服务器上生成大量流量。通过在单个连接中打包多个HEADERS和RST_STREAM帧,显著提升每秒请求量,提升服务器上的CPU利用率,从
统一治理多集群流量 您可以通过UCS的流量分发功能,实现跨云、跨地域集群应用访问流量的智能调度,实现流量切分、灰度、故障倒换等不同功能。 前提条件 您需要将一个已有的Kubernetes集群添加至UCS,且集群接入网络,具体操作请参考步骤三:为容器舰队添加集群。 已添加的集群中已