Argo Workflow提供了许多监控指标,可以帮助用户了解工作流的运行情况。可以使用Prometheus来收集和展示这些指标。
具体示例代码如下:
1.安装Prometheus Operator以及Argo的Prometheus Exporter kubectl create namespace monitoring helm repo add stable https://charts.helm.sh/stable helm install prometheus-operator stable/prometheus-operator -n monitoring --set prometheusOperator.createCustomResource=false kubectl apply -f https://raw.githubusercontent.com/argoproj/argo/v3.1.3/examples/metrics/argo-prometheus.yaml -n monitoring
2.访问Prometheus Dashboard kubectl port-forward -n monitoring service/prometheus-operator-prometheus 9090:9090
3.在Prometheus Dashboard中,可以查看与Argo Workflow相关的所有指标,例如: argo_workflow_duration_seconds_bucket:工作流运行时间的分布情况 argo_workflow_events_total:工作流事件的数量 argo_workflow_pods_current:当前正在运行的Pod数量
4.使用Grafana可视化Argo Workflow指标 helm install grafana stable/grafana -n monitoring --set adminPassword=admin kubectl port-forward -n monitoring service/grafana 3000:80
5.登录Grafana并添加Prometheus数据源,将数据源命名为“prometheus”,并设置Prometheus服务器的URL。 6.在Grafana中,可以创建仪表板并展示Argo Workflow指标,例如: 工作流运行时间统计 工作流事件数量的实时变化 当前运行Pod的数量
更多Argo Workflow指标和展示方法,请参考Argo官方文档。