1.25. Kiali 配置参考

当 Service Mesh Operator 创建 ServiceMeshControlPlane 时,它也会处理 Kiali 资源。然后,当 Kiali Operator 创建 Kiali 实例时会使用这个对象。

1.25.1. 在 SMCP 中指定 Kiali 配置

您可以在 ServiceMeshControlPlane 资源的 addons 部分配置 Kiali。默认情况下启用 Kiali 。要禁用 Kiali,将 spec.addons.kiali.enabled 设置为 false

您可以通过以下两种方式之一指定 Kiali 配置:

  • spec.addons.kiali.install 下指定 ServiceMeshControlPlane 资源中的 Kiali 配置。这个方法有一些限制,因为 SMCP 中没有 Kiali 配置的完整列表。
  • 配置和部署 Kiali 实例,并将 Kiali 资源的名称指定为 ServiceMeshControlPlane 资源中的 spec.addons.kiali.name 的值。您必须在与 Service Mesh control plane 相同的命名空间中创建 CR,如 istio-system。如果存在与 name 值匹配的 Kiali 资源,control plane 将配置该 Kiali 资源以用于 control plane。这个方法可让您在 Kiali 资源中完全自定义 Kiali 配置。请注意,使用此方法,Kiali 资源的不同字段会被 Service Mesh Operator 覆盖,特别是 accessible_namespaces 列表,以及 Grafana、Prometheus 和追踪的端点。

Kiali 的 SMCP 参数示例

apiVersion: maistra.io/v2
kind: ServiceMeshControlPlane
metadata:
  name: basic
spec:
  addons:
    kiali:
      name: kiali
      enabled: true
      install:
        dashboard:
          viewOnly: false
          enableGrafana: true
          enableTracing: true
          enablePrometheus: true
        service:
          ingress:
            contextPath: /kiali

表 1.38. ServiceMeshControlPlane Kiali 参数

参数描述默认值
spec:
  addons:
    kiali:
      name:

Kiali 自定义资源的名称。如果存在与 name 值匹配的 Kiali CR,Service Mesh Operator 会将该 CR 用于安装。如果没有 Kiali CR,Operator 将使用这个 名称和 SMCP 中指定的配置选项创建一个。

字符串

kiali

kiali:
  enabled:

这个参数启用或禁用 Kiali。默认情况下启用 Kiali 。

true/false

true

kiali:
  install:

如果命名 Kiali 资源不存在,请安装 Kiali 资源。如果 addons.kiali.enabled 设为 false,则 install 部分会被忽略。

  
kiali:
  install:
    dashboard:

Kiali 提供的仪表板的配置参数。

  
kiali:
  install:
    dashboard:
      viewOnly:

为 Kiali 控制台启用或禁用只读视图模式。启用只读视图模式时,用户无法使用 Kiali 控制台来更改 Service Mesh。

true/false

false

kiali:
  install:
    dashboard:
      enableGrafana:

基于 spec.addons.grafana 配置的 Grafana 端点。

true/false

true

kiali:
  install:
    dashboard:
      enablePrometheus:

基于 spec.addons.prometheus 配置的 Prometheus 端点。

true/false

true

kiali:
  install:
    dashboard:
      enableTracing:

追踪根据 Jaeger 自定义资源配置配置的端点。

true/false

true

kiali:
  install:
    service:

与 Kiali 安装关联的 Kubernetes 服务的配置参数。

  
kiali:
  install:
    service:
      metadata:

用于指定应用到资源的额外元数据。

N/A

N/A

kiali:
  install:
    service:
      metadata:
        annotations:

用于指定可应用到组件的服务的额外注解。

字符串

N/A

kiali:
  install:
    service:
      metadata:
        labels:

用于指定要应用到组件的服务的额外标签。

字符串

N/A

kiali:
  install:
    service:
      ingress:

用于指定通过 OpenShift Route 访问组件的服务的详细信息。

N/A

N/A

kiali:
  install:
    service:
      ingress:
        metadata:
          annotations:

用于指定可应用到组件的服务入口的额外注解。

字符串

N/A

kiali:
  install:
    service:
      ingress:
        metadata:
          labels:

用于指定可应用到组件的服务入口的额外标签。

字符串

N/A

kiali:
  install:
    service:
      ingress:
        enabled:

用于为与组件关联的服务自定义 OpenShift Route。

true/false

true

kiali:
  install:
    service:
      ingress:
        contextPath:

用于指定服务的上下文路径。

字符串

N/A

install:
  service:
    ingress:
      hosts:

用于为每个 OpenShift 路由指定一个主机名。空主机名表示路由的默认主机名。

字符串

N/A

install:
  service:
    ingress:
      tls:

用于为 OpenShift 路由配置 TLS。

 

N/A

kiali:
  install:
    service:
      nodePort:

用于为组件的服务 Values.<component>.service.nodePort.port 指定 nodePort

整数

N/A

1.25.2. 在 Kiali 自定义资源中指定 Kiali 配置

您可以通过在 Kiali 自定义资源(CR)而不是 ServiceMeshControlPlane (SMCP)资源中配置 Kiali 部署来完全自定义 Kiali 部署。这个配置有时被称为 "外部 Kiali",因为配置是在 SMCP 之外指定的。

注意

您必须在同一命名空间中部署 ServiceMeshControlPlane 和 Kiali 自定义资源。例如: istio-system

您可以配置和部署 Kiali 实例,然后将 Kiali 资源的 name 指定为 SMCP 资源中的 spec.addons.kiali.name 的值。如果存在与 name 值匹配的 Kiali CR,Service Mesh control plane 将使用现有安装。这个方法可让您完全自定义 Kiali 配置。