×

关于Kiali

您可以使用Red Hat提供的Kiali Operator在一个控制台中查看配置、监控流量和分析跟踪。它基于开源Kiali项目。

Red Hat提供的Kiali Operator是Red Hat OpenShift Service Mesh的管理控制台。它提供仪表板、可观测性和强大的配置和验证功能。它通过推断流量拓扑来显示服务网格的结构,并显示网格的运行状况。Kiali提供详细的指标、强大的验证、对Grafana的访问以及与Red Hat OpenShift分布式追踪平台(Tempo)的强大集成。

安装Red Hat提供的Kiali Operator

以下步骤介绍如何安装Red Hat提供的Kiali Operator。

不要安装社区版的Operator。社区版不受支持。

先决条件
  • 访问Red Hat OpenShift Service Mesh Web控制台。

步骤
  1. 登录到Red Hat OpenShift Service Mesh Web控制台。

  2. 导航到**Operators** → **OperatorHub**。

  3. 在筛选框中键入**Kiali**以查找Red Hat提供的Kiali Operator。

  4. 单击**Red Hat提供的Kiali Operator**以显示有关Operator的信息。

  5. 单击**安装**。

  6. 在**Operator安装**页面上,选择**稳定**更新渠道。

  7. 选择**集群上的所有命名空间(默认)**。这将在默认的`openshift-operators`项目中安装Operator,并使Operator可用于集群中的所有项目。

  8. 选择**自动**批准策略。

    手动批准策略需要具有相应凭据的用户来批准Operator安装和订阅过程。

  9. 单击**安装**。

  10. **已安装的Operators**页面显示Kiali Operator的安装进度。

使用Kiali配置OpenShift监控

以下步骤介绍如何将Red Hat提供的Kiali Operator与用户工作负载监控集成。

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

  • 已启用用户工作负载监控。请参阅为用户定义的项目启用监控

  • OpenShift监控已配置为Service Mesh。请参阅“使用Service Mesh配置OpenShift监控”。

  • 已安装Red Hat提供的Kiali Operator 1.89。

步骤
  1. 为Kiali创建一个`ClusterRoleBinding`资源

    `ClusterRoleBinding`配置示例
    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRoleBinding
    metadata:
      name: kiali-monitoring-rbac
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: ClusterRole
      name: cluster-monitoring-view
    subjects:
    - kind: ServiceAccount
      name: kiali-service-account
      namespace: istio-system
  2. 创建一个Kiali资源并将其指向您的Istio实例

    Kiali资源配置示例
    apiVersion: kiali.io/v1alpha1
    kind: Kiali
    metadata:
      name: kiali-user-workload-monitoring
      namespace: istio-system
    spec:
      external_services:
        prometheus:
          auth:
            type: bearer
            use_kiali_token: true
          thanos_proxy:
            enabled: true
          url: https://thanos-querier.openshift-monitoring.svc.cluster.local:9091
  3. Kiali资源准备就绪后,通过运行以下命令获取Kiali URL:

    $ echo "https://$(oc get routes -n istio-system kiali -o jsonpath='{.spec.host}')"
  4. 请点击URL链接,在您的网络浏览器中打开Kiali。

将Red Hat OpenShift分布式追踪平台与Red Hat提供的Kiali Operator集成

您可以将Red Hat OpenShift分布式追踪平台与Red Hat提供的Kiali Operator集成,这将启用以下功能:

  • 在图形上显示追踪覆盖和详细信息。

  • 在详情页显示散点图和深入的追踪/跨度信息。

  • 在日志和指标图表中集成跨度信息。

  • 提供指向外部追踪UI的链接。

配置Red Hat OpenShift分布式追踪平台与Red Hat提供的Kiali Operator

在Red Hat提供的Kiali Operator与Red Hat OpenShift分布式追踪平台集成后,您可以在Kiali控制台中查看分布式追踪。查看这些追踪可以深入了解服务网格内服务之间的通信,帮助您了解请求如何在系统中流动以及潜在问题可能出现在哪里。

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

  • 您已使用Red Hat OpenShift Service Mesh配置了分布式追踪平台。

步骤
  1. 更新用于追踪的Kiali资源spec配置

    用于追踪的Kiali资源spec配置示例
    spec:
      external_services:
        tracing:
          enabled: true (1)
          provider: tempo
          use_grpc: false
          in_cluster_url: http://tempo-sample-query-frontend.tempo:3200
          url: https://tempo-sample-query-frontend-tempo.apps-crc.testing (2)
    1 启用追踪。
    2 必须在Tempo命名空间中创建Jaeger UI的OpenShift路由。您可以手动为tempo-sample-query-frontend服务创建它,也可以使用.spec.template.queryFrontend.jaegerQuery.ingress.type: route更新Tempo自定义资源。
  2. 将更新后的spec保存到kiali_cr.yaml文件中。

  3. 运行以下命令应用配置:

    $ oc patch -n istio-system kiali kiali --type merge -p "$(cat kiali_cr.yaml)"
    示例输出
     kiali.kiali.io/kiali patched
验证
  1. 运行以下命令获取Kiali路由:

    $ oc get route kiali ns istio-system
  2. 导航到Kiali UI。

  3. 导航到**工作负载** → **追踪**选项卡,以在Kiali UI中查看追踪。