第 4 章 红帽提供的 Kiali Operator
4.1. 使用红帽提供的 Kiali Operator 复制链接链接已复制到粘贴板!
将应用程序添加到网格后,您可以使用红帽提供的 Kiali Operator 来查看通过应用程序的数据流。
4.1.1. 关于 Kiali 复制链接链接已复制到粘贴板!
您可以使用红帽提供的 Kiali Operator 查看配置、监控流量和分析单个控制台中的 trace。它基于开源 Kiali 项目。
红帽提供的 Kiali Operator 是 Red Hat OpenShift Service Mesh 的管理控制台。它提供了仪表板、可观察性以及强大的配置和验证功能。它通过推断流量拓扑显示服务网格的结构,并显示网格的健康状况。Kiali 提供详细的指标、强大的验证、访问 Grafana 以及与 Red Hat OpenShift distributed tracing 平台(Tempo)的强大集成。
4.1.2. 安装红帽提供的 Kiali Operator 复制链接链接已复制到粘贴板!
以下步骤演示了如何安装红帽提供的 Kiali Operator。
不要安装 Operator 的 Community 版本。不支持 Community 版本。
先决条件
- 访问 Red Hat OpenShift Service Mesh web 控制台。
流程
- 登录到 Red Hat OpenShift Service Mesh web 控制台。
-
进入 Operators
OperatorHub。 - 在过滤器框中键入 Kiali 来查找红帽提供的 Kiali Operator。
- 点 由红帽提供的 Kiali Operator 来显示有关 Operator 的信息。
- 点 Install。
- 在 Operator 安装页面中,选择 stable Update Channel。
-
选择 All namespaces on the cluster(默认)。这会在默认的
openshift-operators
项目中安装 Operator ,并使其可以被集群中的所有项目使用。 选择 Automatic 批准策略。
注意Manual 批准策略需要具有适当凭证的用户批准 Operator 的安装和订阅过程。
- 点 Install。
- Installed Operators 页会显示 Kiali Operator 的安装进度。
4.1.3. 使用 Kiali 配置 OpenShift Monitoring 复制链接链接已复制到粘贴板!
以下步骤演示了如何将红帽提供的 Kiali Operator 与用户工作负载监控集成。
先决条件
- 安装了 Red Hat OpenShift Service Mesh。
- 启用 user-workload 监控。请参阅 为用户定义的项目启用监控。
- OpenShift Monitoring 已配置了 Service Mesh。请参阅"使用 Service Mesh 配置 OpenShift Monitoring"。
- 已安装由 Red Hat 2.4 提供的 Kiali Operator。
流程
为 Kiali 创建
ClusterRoleBinding
资源:ClusterRoleBinding
配置示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建 Kiali 资源并将其指向 Istio 实例:
Kiali 资源配置示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 当 Kiali 资源就绪时,运行以下命令来从 Route 获取 Kiali URL:
echo "https://$(oc get routes -n istio-system kiali -o jsonpath='{.spec.host}')"
$ echo "https://$(oc get routes -n istio-system kiali -o jsonpath='{.spec.host}')"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 按照 URL 在网页浏览器中打开 Kiali。
- 进入 Traffic Graph 选项卡,在 Kiali UI 中检查流量。
您可以将 Red Hat OpenShift distributed tracing 平台与红帽提供的 Kiali Operator 集成,这样可启用以下功能:
- 显示追踪覆盖和图中的详细信息。
- 显示有关详细信息页面的 scatterplot chart 和 in-depth trace/span 信息。
- 在日志和指标图表中集成的 span 信息。
- 提供外部追踪 UI 的链接。
将红帽提供的 Kiali Operator 与 Red Hat OpenShift distributed tracing 平台集成后,您可以在 Kiali 控制台中查看分布式追踪。查看 trace 可让您了解服务网格中服务之间的通信,帮助您了解请求如何通过系统流动,以及潜在问题可能驻留的位置。
先决条件
- 已安装 Red Hat OpenShift Service Mesh。
- 已使用 Red Hat OpenShift Service Mesh 配置分布式追踪平台。
流程
更新用于追踪的
Kiali
资源spec
配置:用于追踪的
Kiali
资源spec
配置示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 指定是否启用追踪。
- 2
- 指定分布式追踪平台(Tempo)或分布式追踪平台(Jaeger)。分布式追踪平台可以公开 Jaeger API 或 Tempo API。
- 3
- 指定 Tempo API 的内部 URL。当您在多租户中部署分布式追踪平台时,请将租户名称包含在
internal_url
参数的 URL 路径中。在本例中,default
代表租户名称。 - 4
- 指定 Jaeger UI 的 OpenShift 路由。当您在多租户中部署分布式追踪平台时,网关会创建路由。否则,您必须在
Tempo
命名空间中创建路由。您可以为tempo-sample-query-frontend
服务手动创建路由,或使用.spec.template.queryFrontend.jaegerQuery.ingress.type: route
来更新Tempo
自定义资源。 - 5
- 指定健康检查 URL。默认不需要。当您在多租户中部署分布式追踪平台时,它不会公开默认的健康检查 URL。这是有效健康 URL 的示例。
- 6
- 指定访问 URL 是
HTTPS
或需要身份验证时使用的配置。默认不需要。 - 7
- 指定默认为
grafana
的配置。默认不需要。如果 KialiView in tracing
链接重定向到 Jaeger 控制台 UI,则更改为jaeger
。
-
将更新的
spec
保存到kiali_cr.yaml
中。 运行以下命令以应用配置:
oc patch -n istio-system kiali kiali --type merge -p "$(cat kiali_cr.yaml)"
$ oc patch -n istio-system kiali kiali --type merge -p "$(cat kiali_cr.yaml)"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例:
kiali.kiali.io/kiali patched
kiali.kiali.io/kiali patched
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
运行以下命令来获取 Kiali 路由:
oc get route kiali ns istio-system
$ oc get route kiali ns istio-system
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 进入 Kiali UI。
-
进入到 Workload
Traces 选项卡,在 Kiali UI 中查看 trace。