1.18.13.2. 为故障转移配置 DestinationRule


创建配置以下内容的 DestinationRule 资源:

  • 服务的 Outlier 检测。需要此项才能使故障转移正常工作。特别是,它会配置 sidecar 代理,以获知服务端点处于不健康状态,并最终触发对下一个位置的故障转移。
  • 各地区之间的故障转移策略。这样可确保除区域边界外的故障切换将具有可预见的。

流程

  1. 以具有 cluster-admin 角色的用户身份登录到 OpenShift Container Platform CLI。输入以下命令。然后在提示时输入您的用户名和密码。

    $ oc login --username=<NAMEOFUSER> <API token> https://<HOSTNAME>:6443
  2. 切换到安装 Service Mesh control plane 的项目。

    $ oc project <smcp-system>

    例如: green-mesh-system

    $ oc project green-mesh-system
  3. 根据以下示例创建一个 DestinationRule 文件,如果 green-mesh 不可用,则流量应从 us-east 区域中的 green-mesh 路由到 us-west 中的 red-mesh。

    DestinationRule示例

    apiVersion: networking.istio.io/v1beta1
    kind: DestinationRule
    metadata:
      name: default-failover
      namespace: bookinfo
    spec:
      host: "ratings.bookinfo.svc.cluster.local"
      trafficPolicy:
        loadBalancer:
          localityLbSetting:
            enabled: true
            failover:
              - from: us-east
                to: us-west
        outlierDetection:
          consecutive5xxErrors: 3
          interval: 10s
          baseEjectionTime: 1m

  4. 部署 DestinationRule,其中 <DestinationRule> 包含到您的文件的完整路径,请输入以下命令:

    $ oc create -n <application namespace> -f <DestinationRule.yaml>

    例如:

    $ oc create -n bookinfo -f green-mesh-us-west-DestinationRule.yaml
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.