×

关于将项目添加到服务网格

安装操作符并创建ServiceMeshControlPlane资源后,请将一个或多个项目添加到服务网格。

在 OpenShift Dedicated 中,项目本质上是具有附加注释的 Kubernetes 命名空间,例如项目中可用的用户 ID 范围。通常,OpenShift Dedicated Web 控制台使用术语“项目”,而 CLI 使用术语“命名空间”,但这两个术语基本同义。

您可以使用 OpenShift Dedicated Web 控制台或 CLI 将项目添加到现有服务网格。有三种方法可以将项目添加到服务网格

  • ServiceMeshMemberRoll资源中指定项目名称。

  • ServiceMeshMemberRoll资源的spec.memberSelectors字段中配置标签选择器。

  • 在项目中创建ServiceMeshMember资源。

如果您使用第一种方法,则必须创建ServiceMeshMemberRoll资源。

创建 Red Hat OpenShift Service Mesh 成员角色

ServiceMeshMemberRoll 列出了属于 Service Mesh 控制平面的项目。只有列在 ServiceMeshMemberRoll 中的项目才会受到控制平面的影响。除非您将项目添加到特定控制平面部署的成员列表中,否则该项目不属于服务网格。

您必须在与 ServiceMeshControlPlane 相同的项目(例如 istio-system)中创建名为 defaultServiceMeshMemberRoll 资源。

从 Web 控制台创建成员列表

您可以从 Web 控制台向 Service Mesh 成员列表添加一个或多个项目。在此示例中,istio-system 是 Service Mesh 控制平面项目的名称。

先决条件
  • 已安装并验证的 Red Hat OpenShift Service Mesh Operator。

  • 要添加到服务网格的现有项目列表。

步骤
  1. 登录到 OpenShift Dedicated Web 控制台。

  2. 如果您还没有网格的服务,或者您是从头开始,请为您的应用程序创建一个项目。它必须与您安装 Service Mesh 控制平面的项目不同。

    1. 导航到 **主页** → **项目**。

    2. 在 **名称** 字段中输入名称。

    3. 单击 **创建**。

  3. 导航到 **Operators** → **已安装的 Operators**。

  4. 单击 **项目** 菜单,然后从列表中选择部署 ServiceMeshControlPlane 资源的项目,例如 istio-system

  5. 单击 Red Hat OpenShift Service Mesh Operator。

  6. 单击 **Istio Service Mesh 成员列表** 选项卡。

  7. 单击 **创建 ServiceMeshMemberRoll**

  8. 单击 **成员**,然后在 **值** 字段中输入您的项目名称。您可以添加任意数量的项目,但一个项目只能属于一个 ServiceMeshMemberRoll 资源。

  9. 单击 **创建**。

从 CLI 创建成员列表

您可以从命令行向 ServiceMeshMemberRoll 添加项目。

先决条件
  • 已安装并验证的 Red Hat OpenShift Service Mesh Operator。

  • 要添加到服务网格的项目列表。

  • 访问 OpenShift CLI (oc)。

步骤
  1. 登录到 OpenShift Dedicated CLI。

    $ oc login --username=<NAMEOFUSER> https://<HOSTNAME>:6443
  2. 如果您还没有网格的服务,或者您是从头开始,请为您的应用程序创建一个项目。它必须与您安装 Service Mesh 控制平面的项目不同。

    $ oc new-project <your-project>
  3. 要将您的项目添加为成员,请修改以下示例 YAML。您可以添加任意数量的项目,但一个项目只能属于一个 ServiceMeshMemberRoll 资源。在此示例中,istio-system 是 Service Mesh 控制平面项目的名称。

    示例 servicemeshmemberroll-default.yaml
    apiVersion: maistra.io/v1
    kind: ServiceMeshMemberRoll
    metadata:
      name: default
      namespace: istio-system
    spec:
      members:
        # a list of projects joined into the service mesh
        - your-project-name
        - another-project-name
  4. 运行以下命令以上传并在 istio-system 命名空间中创建 ServiceMeshMemberRoll 资源。

    $ oc create -n istio-system -f servicemeshmemberroll-default.yaml
  5. 运行以下命令以验证 ServiceMeshMemberRoll 是否已成功创建。

    $ oc get smmr -n istio-system default

    STATUS 列为 Configured 时,安装已成功完成。

关于使用 ServiceMeshMemberRoll 资源添加项目

使用 ServiceMeshMemberRoll 资源是将项目添加到服务网格的最简单方法。要添加项目,请在 ServiceMeshMemberRoll 资源的 spec.members 字段中指定项目名称。ServiceMeshMemberRoll 资源指定哪些项目受 ServiceMeshControlPlane 资源控制。

Adding project using `ServiceMeshMemberRoll` resource image

使用此方法添加项目需要用户在要添加的项目中拥有 update servicemeshmemberrollsupdate pods 权限。

  • 如果您已经有要添加到服务网格的应用程序、工作负载或服务,请参见以下内容

    • 使用 Web 控制台和 ServiceMeshMemberRoll 资源添加或删除网格中的项目

    • 使用 CLI 和 ServiceMeshMemberRoll 资源添加或删除网格中的项目

  • 或者,要安装名为 Bookinfo 的示例应用程序并将其添加到 ServiceMeshMemberRoll 资源,请参阅 Bookinfo 示例应用程序教程。

使用 Web 控制台和 ServiceMeshMemberRoll 资源添加或删除网格中的项目

您可以使用 OpenShift Dedicated Web 控制台和 ServiceMeshMemberRoll 资源添加或删除网格中的项目。您可以添加任意数量的项目,但一个项目只能属于一个网格。

当其对应的 ServiceMeshControlPlane 资源被删除时,ServiceMeshMemberRoll 资源将被删除。

先决条件
  • 已安装并验证的 Red Hat OpenShift Service Mesh Operator。

  • 现有的 ServiceMeshMemberRoll 资源。

  • 具有 ServiceMeshMemberRoll 资源的项目的名称。

  • 您想要添加或删除到网格中的项目的名称。

步骤
  1. 登录到 OpenShift Dedicated Web 控制台。

  2. 导航到 **Operators** → **已安装的 Operators**。

  3. 单击 **项目** 菜单,然后从列表中选择部署 ServiceMeshControlPlane 资源的项目。例如 istio-system

  4. 单击 Red Hat OpenShift Service Mesh Operator。

  5. 单击 **Istio Service Mesh 成员列表** 选项卡。

  6. 单击 default 链接。

  7. 单击 YAML 选项卡。

  8. 修改 YAML 以添加项目作为成员(或删除它们以删除现有成员)。您可以添加任意数量的项目,但一个项目只能属于一个 ServiceMeshMemberRoll 资源。

    示例 servicemeshmemberroll-default.yaml
    apiVersion: maistra.io/v1
    kind: ServiceMeshMemberRoll
    metadata:
      name: default
      namespace: istio-system #control plane project
    spec:
      members:
        # a list of projects joined into the service mesh
        - your-project-name
        - another-project-name
  9. 单击 **保存**。

  10. 单击 **重新加载**。

使用 CLI 和 ServiceMeshMemberRoll 资源添加或删除网格中的项目

您可以使用 CLI 和 ServiceMeshMemberRoll 资源向网格添加一个或多个项目。您可以添加任意数量的项目,但一个项目只能属于一个网格。

当其对应的 ServiceMeshControlPlane 资源被删除时,ServiceMeshMemberRoll 资源将被删除。

先决条件
  • 已安装并验证的 Red Hat OpenShift Service Mesh Operator。

  • 现有的 ServiceMeshMemberRoll 资源。

  • 具有 ServiceMeshMemberRoll 资源的项目的名称。

  • 您想要添加或删除到网格中的项目的名称。

  • 访问 OpenShift CLI (oc)。

步骤
  1. 登录到 OpenShift Dedicated CLI。

  2. 编辑 ServiceMeshMemberRoll 资源。

    $ oc edit smmr -n <controlplane-namespace>
  3. 修改 YAML 以添加或删除项目作为成员。您可以添加任意数量的项目,但一个项目只能属于一个 ServiceMeshMemberRoll 资源。

    示例 servicemeshmemberroll-default.yaml
    apiVersion: maistra.io/v1
    kind: ServiceMeshMemberRoll
    metadata:
      name: default
      namespace: istio-system #control plane project
    spec:
      members:
        # a list of projects joined into the service mesh
        - your-project-name
        - another-project-name
  4. 保存文件并退出编辑器。

关于使用 ServiceMeshMember 资源添加项目

ServiceMeshMember 资源提供了一种在不修改 ServiceMeshMemberRoll 资源的情况下将项目添加到服务网格的方法。要添加项目,请在要添加到服务网格的项目中创建一个 ServiceMeshMember 资源。当 Service Mesh Operator 处理 ServiceMeshMember 对象时,该项目将出现在 ServiceMeshMemberRoll 资源的 status.members 列表中。然后,驻留在该项目中的服务将可用于网格。

Adding project using `ServiceMeshMember` resource image

网格管理员必须授予每个网格用户在 ServiceMeshMember 资源中引用 ServiceMeshControlPlane 资源的权限。有了此权限,即使网格用户没有服务网格项目或 ServiceMeshMemberRoll 资源的直接访问权限,也可以将项目添加到网格。有关更多信息,请参见创建 Red Hat OpenShift Service Mesh 成员。

使用 Web 控制台和 ServiceMeshMember 资源将项目添加到网格

您可以使用 OpenShift Dedicated Web 控制台和 ServiceMeshMember 资源向网格添加一个或多个项目。

先决条件
  • 您已安装 Red Hat OpenShift Service Mesh Operator。

  • 您知道 ServiceMeshControlPlane 资源的名称以及该资源所属项目的名称。

  • 您知道要添加到网格的项目的名称。

  • 服务网格管理员必须明确授予对服务网格的访问权限。管理员可以使用 RoleBindingClusterRoleBindingmesh-user Role 分配给用户,从而授予用户访问网格的权限。有关更多信息,请参见《创建 Red Hat OpenShift Service Mesh 成员》。

步骤
  1. 登录到 OpenShift Dedicated Web 控制台。

  2. 导航到 **Operators** → **已安装的 Operators**。

  3. 点击**项目**菜单,然后从下拉列表中选择要添加到网格的项目。例如,istio-system

  4. 单击 Red Hat OpenShift Service Mesh Operator。

  5. 点击**Istio 服务网格成员**选项卡。

  6. 点击**创建 ServiceMeshMember**。

  7. 接受ServiceMeshMember的默认名称。

  8. 点击展开**ControlPlaneRef**。

  9. 在**命名空间**字段中,选择ServiceMeshControlPlane资源所属的项目。例如,istio-system

  10. 在**名称**字段中,输入此命名空间所属的ServiceMeshControlPlane资源的名称。例如,basic

  11. 单击 **创建**。

验证
  1. 使用以下步骤确认已创建ServiceMeshMember资源并将项目添加到网格。

    1. 点击资源名称,例如default

    2. 查看屏幕末尾显示的**条件**部分。

    3. 确认ReconciledReady条件的状态True

      如果状态False,请参阅原因消息列以获取更多信息。

使用 ServiceMeshMember 资源和 CLI 将项目添加到网格

您可以使用ServiceMeshMember资源和 CLI 将一个或多个项目添加到网格。

先决条件
  • 您已安装 Red Hat OpenShift Service Mesh Operator。

  • 您知道ServiceMeshControlPlane资源的名称及其所属项目的名称。

  • 您知道要添加到网格的项目的名称。

  • 服务网格管理员必须明确授予对服务网格的访问权限。管理员可以使用 RoleBindingClusterRoleBindingmesh-user Role 分配给用户,从而授予用户访问网格的权限。有关更多信息,请参见《创建 Red Hat OpenShift Service Mesh 成员》。

步骤
  1. 登录到 OpenShift Dedicated CLI。

  2. 创建ServiceMeshMember清单的 YAML 文件。该清单将my-application项目添加到由部署在istio-system命名空间中的ServiceMeshControlPlane资源创建的服务网格。

    apiVersion: maistra.io/v1
    kind: ServiceMeshMember
    metadata:
      name: default
      namespace: my-application
    spec:
      controlPlaneRef:
        namespace: istio-system
        name: basic
  3. 应用 YAML 文件以创建ServiceMeshMember资源。

    $ oc apply -f <file-name>
验证
  • 运行以下命令验证命名空间是否属于网格的一部分。确认READY列中显示的值为True

    $ oc get smm default -n my-application
    示例输出
    NAME      CONTROL PLANE        READY   AGE
    default   istio-system/basic   True    2m11s
  • 或者,查看ServiceMeshMemberRoll资源以确认my-application命名空间显示在ServiceMeshMemberRoll资源的status.membersstatus.configuredMembers字段中。

    $ oc describe smmr default -n istio-system
    示例输出
    Name:         default
    Namespace:    istio-system
    Labels:       <none>
    # ...
    Status:
    # ...
      Configured Members:
        default
        my-application
    # ...
      Members:
        default
        my-application

关于使用标签选择器添加项目

对于集群范围的部署,您可以使用标签选择器将项目添加到网格。在ServiceMeshMemberRoll资源中指定的标签选择器使服务网格操作员能够根据命名空间标签将命名空间添加到网格或从网格中移除命名空间。与您可以用来指定单个标签选择器的其他标准 OpenShift Dedicated 资源不同,您可以使用ServiceMeshMemberRoll资源指定多个标签选择器。

Adding project using label selector image

如果命名空间的标签与ServiceMeshMemberRoll资源中指定的任何选择器匹配,则该命名空间将包含在网格中。

在 OpenShift Dedicated 中,项目本质上是具有附加注释的 Kubernetes 命名空间,例如项目中可以使用的一个用户 ID 范围。通常,OpenShift Dedicated Web 控制台使用术语项目,而 CLI 使用术语命名空间,但这两个术语基本同义。

使用 Web 控制台将项目添加到网格(使用标签选择器)

您可以使用标签选择器通过 OpenShift Dedicated Web 控制台将项目添加到服务网格。

先决条件
  • 您已安装 Red Hat OpenShift Service Mesh Operator。

  • 部署具有现有的ServiceMeshMemberRoll资源。

  • 您已以具有dedicated-admin角色的用户身份登录到 OpenShift Dedicated Web 控制台。

步骤
  1. 导航到 **Operators** → **已安装的 Operators**。

  2. 点击**项目**菜单,然后从下拉列表中选择部署ServiceMeshMemberRoll资源的项目。例如,**istio-system**。

  3. 单击 Red Hat OpenShift Service Mesh Operator。

  4. 单击 **Istio Service Mesh 成员列表** 选项卡。

  5. 点击**创建 ServiceMeshMember Roll**。

  6. 接受ServiceMeshMemberRoll的默认名称。

  7. 在**标签**字段中,输入键值对以定义标识哪些命名空间包含在服务网格中的标签。如果项目命名空间具有选择器指定的任何标签,则项目命名空间将包含在服务网格中。您无需同时包含这两个标签。

    例如,输入mykey=myvalue将包含所有具有此标签的命名空间作为网格的一部分。当选择器识别匹配项时,项目命名空间将添加到服务网格。

    输入myotherkey=myothervalue将包含所有具有此标签的命名空间作为网格的一部分。当选择器识别匹配项时,项目命名空间将添加到服务网格。

  8. 单击 **创建**。

使用 CLI 将项目添加到网格(使用标签选择器)

您可以使用 CLI 将项目添加到服务网格(使用标签选择器)。

先决条件
  • 您已安装 Red Hat OpenShift Service Mesh Operator。

  • 部署具有现有的ServiceMeshMemberRoll资源。

  • 您已以具有dedicated-admin角色的用户身份登录到 OpenShift Dedicated。

步骤
  1. 登录到 OpenShift Dedicated CLI。

  2. 编辑 ServiceMeshMemberRoll 资源。

    $ oc edit smmr default -n istio-system

    您可以将服务网格控制平面部署到任何项目,前提是它与包含您的服务的项目分开。

  3. 修改 YAML 文件,以便在ServiceMeshMemberRoll资源的spec.memberSelectors字段中包含命名空间标签选择器。

    除了使用matchLabels字段之外,您还可以使用选择器中的matchExpressions字段。

    apiVersion: maistra.io/v1
    kind: ServiceMeshMemberRoll
    metadata:
      name: default
      namespace: istio-system
    spec:
      memberSelectors: (1)
      - matchLabels: (2)
          mykey: myvalue (2)
      - matchLabels: (3)
          myotherkey: myothervalue (3)
    1 包含用于标识哪些项目命名空间包含在服务网格中的标签选择器。如果项目命名空间具有选择器指定的任何标签,则项目命名空间将包含在服务网格中。项目命名空间不需要同时包含这两个标签。
    2 指定所有具有mykey=myvalue标签的命名空间。当选择器识别匹配项时,项目命名空间将添加到服务网格。
    3 指定所有具有myotherkey=myothervalue标签的命名空间。当选择器识别匹配项时,项目命名空间将添加到服务网格。

Bookinfo 示例应用程序

Bookinfo 示例应用程序允许您在 OpenShift Dedicated 上测试您的 Red Hat OpenShift Service Mesh 2.6.4 安装。

Bookinfo 应用程序显示有关书籍的信息,类似于在线书店的单个目录条目。该应用程序显示一个页面,其中描述了书籍、书籍详细信息(ISBN、页数和其他信息)和书籍评论。

Bookinfo 应用程序由以下微服务组成:

  • productpage微服务调用detailsreviews微服务来填充页面。

  • details微服务包含书籍信息。

  • reviews微服务包含书籍评论。它还调用ratings微服务。

  • ratings微服务包含伴随书籍评论的书籍排名信息。

reviews微服务有三个版本:

  • 版本 v1 不调用ratings服务。

  • 版本 v2 调用ratings服务并将每个评分显示为一颗到五颗黑色星。

  • 版本 v3 调用ratings服务并将每个评分显示为一颗到五颗红色星。

安装 Bookinfo 应用程序

本教程将引导您完成如何通过创建项目、将 Bookinfo 应用程序部署到该项目以及在服务网格中查看正在运行的应用程序来创建示例应用程序的过程。

先决条件
  • 已安装 OpenShift Dedicated 4.1 或更高版本。

  • 已安装 Red Hat OpenShift Service Mesh 2.6.4。

  • 访问 OpenShift CLI (oc)。

  • 您已以具有dedicated-admin角色的用户身份登录到 OpenShift Dedicated。

Bookinfo 示例应用程序无法安装在 IBM Z® 和 IBM Power® 上。

本节中的命令假设服务网格控制平面项目为istio-system。如果您在另一个命名空间中安装了控制平面,请在运行之前编辑每个命令。

步骤
  1. 点击**主页** → **项目**。

  2. 点击**创建项目**。

  3. 输入bookinfo作为**项目名称**,输入**显示名称**和**描述**,然后点击**创建**。

    • 或者,您可以从 CLI 运行以下命令来创建bookinfo项目。

      $ oc new-project bookinfo
  4. 点击操作员已安装的操作员

  5. 点击项目菜单并使用 Service Mesh 控制平面命名空间。在本例中,使用istio-system

  6. 点击Red Hat OpenShift Service Mesh 操作员。

  7. 单击 **Istio Service Mesh 成员列表** 选项卡。

    1. 如果您已经创建了 Istio Service Mesh 成员角色,请点击名称,然后点击 YAML 选项卡打开 YAML 编辑器。

    2. 如果您尚未创建ServiceMeshMemberRoll,请点击创建 ServiceMeshMemberRoll

  8. 点击成员,然后在字段中输入您的项目名称。

  9. 点击创建以保存更新后的 Service Mesh 成员角色。

    1. 或者,将以下示例保存到 YAML 文件。

      Bookinfo ServiceMeshMemberRoll 示例 servicemeshmemberroll-default.yaml
      apiVersion: maistra.io/v1
      kind: ServiceMeshMemberRoll
      metadata:
        name: default
      spec:
        members:
        - bookinfo
    2. 运行以下命令以上传该文件并在istio-system命名空间中创建ServiceMeshMemberRoll资源。在本例中,istio-system是 Service Mesh 控制平面项目的名称。

      $ oc create -n istio-system -f servicemeshmemberroll-default.yaml
  10. 运行以下命令以验证 ServiceMeshMemberRoll 是否已成功创建。

    $ oc get smmr -n istio-system -o wide

    STATUS 列为 Configured 时,安装已成功完成。

    NAME      READY   STATUS       AGE   MEMBERS
    default   1/1     Configured   70s   ["bookinfo"]
  11. 从 CLI 部署 _`bookinfo`_ 项目中的 Bookinfo 应用程序,方法是应用bookinfo.yaml文件

    $ oc apply -n bookinfo -f https://raw.githubusercontent.com/Maistra/istio/maistra-2.6/samples/bookinfo/platform/kube/bookinfo.yaml

    您应该看到类似以下的输出

    service/details created
    serviceaccount/bookinfo-details created
    deployment.apps/details-v1 created
    service/ratings created
    serviceaccount/bookinfo-ratings created
    deployment.apps/ratings-v1 created
    service/reviews created
    serviceaccount/bookinfo-reviews created
    deployment.apps/reviews-v1 created
    deployment.apps/reviews-v2 created
    deployment.apps/reviews-v3 created
    service/productpage created
    serviceaccount/bookinfo-productpage created
    deployment.apps/productpage-v1 created
  12. 通过应用bookinfo-gateway.yaml文件创建入口网关

    $ oc apply -n bookinfo -f https://raw.githubusercontent.com/Maistra/istio/maistra-2.6/samples/bookinfo/networking/bookinfo-gateway.yaml

    您应该看到类似以下的输出

    gateway.networking.istio.io/bookinfo-gateway created
    virtualservice.networking.istio.io/bookinfo created
  13. 设置GATEWAY_URL参数的值

    $ export GATEWAY_URL=$(oc -n istio-system get route istio-ingressgateway -o jsonpath='{.spec.host}')

添加默认目标规则

在您可以使用 Bookinfo 应用程序之前,必须首先添加默认目标规则。有两个预配置的 YAML 文件,具体取决于您是否启用了相互传输层安全性 (TLS) 身份验证。

步骤
  1. 要添加目标规则,请运行以下命令之一

    • 如果您没有启用相互 TLS

      $ oc apply -n bookinfo -f https://raw.githubusercontent.com/Maistra/istio/maistra-2.6/samples/bookinfo/networking/destination-rule-all.yaml
    • 如果您启用了相互 TLS

      $ oc apply -n bookinfo -f https://raw.githubusercontent.com/Maistra/istio/maistra-2.6/samples/bookinfo/networking/destination-rule-all-mtls.yaml

      您应该看到类似以下的输出

      destinationrule.networking.istio.io/productpage created
      destinationrule.networking.istio.io/reviews created
      destinationrule.networking.istio.io/ratings created
      destinationrule.networking.istio.io/details created

验证 Bookinfo 安装

要确认样本 Bookinfo 应用程序已成功部署,请执行以下步骤。

先决条件
  • Red Hat OpenShift Service Mesh 已安装。

  • 完成安装 Bookinfo 样本应用程序的步骤。

  • 您已以具有dedicated-admin角色的用户身份登录到 OpenShift Dedicated。

CLI 步骤
  1. 使用此命令验证所有 Pod 是否已准备好

    $ oc get pods -n bookinfo

    所有 Pod 的状态都应为正在运行。您应该看到类似以下的输出

    NAME                              READY   STATUS    RESTARTS   AGE
    details-v1-55b869668-jh7hb        2/2     Running   0          12m
    productpage-v1-6fc77ff794-nsl8r   2/2     Running   0          12m
    ratings-v1-7d7d8d8b56-55scn       2/2     Running   0          12m
    reviews-v1-868597db96-bdxgq       2/2     Running   0          12m
    reviews-v2-5b64f47978-cvssp       2/2     Running   0          12m
    reviews-v3-6dfd49b55b-vcwpf       2/2     Running   0          12m
  2. 运行以下命令以检索产品页面的 URL

    echo "http://$GATEWAY_URL/productpage"
  3. 复制并粘贴输出到 Web 浏览器中,以验证 Bookinfo 产品页面是否已部署。

Kiali Web 控制台步骤
  1. 获取 Kiali Web 控制台的地址。

    1. 登录到 OpenShift Dedicated Web 控制台。

    2. 导航到网络路由

    3. 路由页面上,从命名空间菜单中选择 Service Mesh 控制平面项目,例如istio-system

      位置列显示每个路由的链接地址。

    4. 点击 Kiali 的位置列中的链接。

    5. 点击使用 OpenShift 登录。Kiali 的概览屏幕显示每个项目命名空间的图块。

  2. 在 Kiali 中,点击图表

  3. 命名空间列表中选择 bookinfo,从图表类型列表中选择应用程序图表。

  4. 显示菜单中点击显示空闲节点

    这将显示已定义但未接收或发送请求的节点。它可以确认应用程序已正确定义,但未报告任何请求流量。

    Kiali displaying bookinfo application
    • 使用持续时间菜单增加时间段,以帮助确保捕获较旧的流量。

    • 使用刷新率菜单更频繁或更不频繁地刷新流量,或者根本不刷新。

  5. 点击服务工作负载Istio 配置以查看 bookinfo 组件的列表视图,并确认它们是健康的。

删除 Bookinfo 应用程序

按照以下步骤删除 Bookinfo 应用程序。

先决条件
  • 已安装 OpenShift Dedicated 4.1 或更高版本。

  • 已安装 Red Hat OpenShift Service Mesh 2.6.4。

  • 访问 OpenShift CLI (oc)。

删除 Bookinfo 项目

步骤
  1. 登录到 OpenShift Dedicated Web 控制台。

  2. 点击主页项目

  3. 点击bookinfo菜单 kebab,然后点击删除项目

  4. 在确认对话框中键入bookinfo,然后点击删除

    • 或者,您可以使用 CLI 运行此命令来创建bookinfo项目。

      $ oc delete project bookinfo

从 Service Mesh 成员角色中删除 Bookinfo 项目

步骤
  1. 登录到 OpenShift Dedicated Web 控制台。

  2. 点击操作员已安装的操作员

  3. 点击项目菜单,然后从列表中选择istio-system

  4. 点击Red Hat OpenShift Service Mesh 操作员的提供的 API下的Istio Service Mesh 成员角色链接。

  5. 点击ServiceMeshMemberRoll菜单 kebab 并选择编辑 Service Mesh 成员角色

  6. 编辑默认的 Service Mesh 成员角色 YAML 并从成员列表中删除bookinfo

    • 或者,您可以使用 CLI 运行此命令以从ServiceMeshMemberRoll中删除bookinfo项目。在本例中,istio-system是 Service Mesh 控制平面项目的名称。

      $ oc -n istio-system patch --type='json' smmr default -p '[{"op": "remove", "path": "/spec/members", "value":["'"bookinfo"'"]}]'
  7. 点击保存以更新 Service Mesh 成员角色。

后续步骤