应用工作台组件的可观测面板¶
本文提供了应用工作台中相关组件如何开启 Grafana 面板的方法,便于监控相关组件的关键指标。应用工作台中的组件包括:
- Jenkins
- ArgoCD
- Argo Rollouts
- KubeVela
默认情况下并不会开启这些组件的指标采集能力,需要手动开启,各个组件的开启方法如下。
Jenkins¶
Note
Jenkins 版本需要 >= v0.4.7
需要通过更新 Helm 参数的方式开启,具体方式如下:
- 前往 容器管理 ,点击 集群列表 ,找到 Jenkins 所在的集群
- 点击 Helm 应用 ,找到 Jenkins 所在的命名空间。找到 Jenkins 后,点击 更新
-
选择通过 YAML 的形式更新,待修改的 YAML 字段如下:
-
点击**保存** ,等待 3 分钟左右
- 前往 可观测性 ,点击 仪表盘 ,在仪表盘中搜索关键字
jenkins
即可打开仪表盘
ArgoCD¶
ArgoCD 也是通过更新 Helm 参数的方式开启,通过 Helm 更新的步骤与上述 Jenkins 的步骤一致,关键字搜索 argocd
。
待修改的 YAML 字段如下:
argo-cd:
controller:
metrics:
enabled: true
serviceMonitor:
enabled: true
additionalLabels:
operator.insight.io/managed-by: insight
dex:
metrics:
enabled: true
serviceMonitor:
enabled: true
additionalLabels:
operator.insight.io/managed-by: insight
redis:
metrics:
enabled: true
serviceMonitor:
enabled: true
additionalLabels:
operator.insight.io/managed-by: insight
server:
metrics:
enabled: true
serviceMonitor:
enabled: true
additionalLabels:
operator.insight.io/managed-by: insight
repoServer:
metrics:
enabled: true
serviceMonitor:
enabled: true
additionalLabels:
operator.insight.io/managed-by: insight
notifications:
metrics:
enabled: true
serviceMonitor:
enabled: true
additionalLabels:
operator.insight.io/managed-by: insight
applicationSet:
metrics:
enabled: true
serviceMonitor:
enabled: true
additionalLabels:
operator.insight.io/managed-by: insight
argo-rollouts¶
argo-rollouts 也是通过更新 Helm 参数的方式开启,通过 Helm 更新的步骤与上述 Jenkins 的步骤一致,关键字搜索argo-rollouts。 待修改的 YAML 字段如下:
argo-rollouts:
controller:
metrics:
enabled: true
serviceMonitor:
enabled: true
additionalLabels:
operator.insight.io/managed-by: insight
KubeVela¶
KubeVela 不支持 直接通过设置参数的方式开启可观测能力。目前需要手动部署以下资源:
-
部署 Service
apiVersion: v1 kind: Service metadata: name: kubevela-controller-service namespace: < your kubevela namespace > # 需要替换 labels: component: kubevela-controller spec: ports: - name: http protocol: TCP port: 9443 targetPort: 9443 - name: metrics protocol: TCP port: 8080 targetPort: 8080 selector: < kubevela core pod label selector> # 需要替换
-
部署 ServiceMonitor
apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: name: amamba-kubevela namespace: < your kubevela namespace > # 需要替换 labels: operator.insight.io/managed-by: insight spec: endpoints: - honorLabels: true interval: 10s path: /metrics port: metrics scheme: http namespaceSelector: matchNames: - < your kubevela namespace > # 需要替换 selector: matchLabels: component: kubevela-controller
注意需要替换成实际的 namespace、labelSelector。打开仪表板的方式与上述 Jenkins、ArgoCD 等其他组件一致。