云服务器内容精选

  • 概述 流量治理是Istio的核心功能,其目标是提供非侵入的流量治理能力,用户仅仅关注自己的业务逻辑,无需关注服务访问管理。流量治理要解决的问题类似如下: 动态修改服务间访问的负载均衡策略,比如配置一致性哈希将流量转发到特定的服务实例上。 同一个服务有两个版本在线,将一部分流量切到某个版本上。 服务保护,如限制并发连接数、限制请求数、隔离有故障的服务实例等。 动态修改服务中的内容,或者模拟一个服务运行故障等。 应用服务网格服务当前支持重试、超时、连接池、熔断、负载均衡、HTTP头域、故障注入等流量治理能力,可满足大多数业务场景的治理需求。 父主题: 流量治理
  • 操作步骤 登录应用服务网格控制台,单击服务网格的名称,进入网格详情页面。 在左侧导航栏选择“服务管理”,选择需要更改流量策略的服务,单击操作列的“流量治理”,在右侧页面进行流量策略更改。 接下来,以Bookinfo应用的reviews服务为例,结合 APM 应用性能管理 )的监控拓扑图来描述负载均衡算法更改前后的配置效果。 负载均衡算法为“轮询调度”时,不断访问productpage页面,观察流量如何分发。 进入“流量监控”页面,鼠标右键单击reviews服务,选择“展开”选项,这时可以看到所有实例的被分发情况。 从下图可以看出,请求依次分发给reviews的5个实例。这与负载均衡“轮询调度”算法相吻合。 在“负载均衡”页签中,单击“立即配置”,将负载均衡算法修改为“随机调度”。 图1 修改负载均衡算法 不断访问productpage页面,观察流量分发情况。 可以发现流量分发没有什么固定规律,各个实例的访问次数参差不齐,说明随机算法已经生效。
  • 负载级别配置拦截IP网段 通过配置业务deployment文件,可以在负载级别配置IP网段拦截: 执行kubectl edit deploy –n user_namespace user_deployment 1. 在deployment.spec.template.metadata.annotations中配置IP网段拦截traffic.sidecar.istio.io/includeOutboundIPRanges: 2. 在deployment.spec.template.metadata.annotations中配置IP网段不拦截traffic.sidecar.istio.io/excludeOutboundIPRanges: 注意:上述操作会导致业务容器滚动升级。
  • 负载级别指定端口配置出入流量拦截 通过修改业务deployment文件,可以在负载级别配置端口上的出入流量拦截规则: 执行kubectl edit deploy –n user_namespace user_deployment 1. 在deployment.spec.template.metadata.annotations中配置入流量指定端口不拦截traffic.sidecar.istio.io/excludeInboundPorts: 2. 在deployment.spec.template.metadata.annotations中配置入流量指定端口拦截traffic.sidecar.istio.io/includeInboundPorts: 3. 在deployment.spec.template.metadata.annotations中配置出流量指定端口不拦截traffic.sidecar.istio.io/excludeOutboundPorts: 4. 在deployment.spec.template.metadata.annotations中配置出流量指定端口拦截traffic.sidecar.istio.io/includeOutboundPorts: 注意:上述操作完成后会导致业务容器滚动升级。