本页面介绍如何将指标从集群内的 Prometheus 监控系统导出到外部日志记录和监控工具。
前提条件
管理员集群必须至少有一个来自负载平衡器的地址池的备用 IP 地址。
配置 Prometheus 联盟
您可以通过 Prometheus 联盟将 Anthos 不公开模式指标导出到外部系统。以下说明假定外部监控和日志记录系统基于 Prometheus。
如需允许从外部系统访问 Prometheus 联盟,请将以下配置应用于管理员集群:
cat <<EOF | kubectl apply --kubeconfig=ADMIN_OIDC_KUBECONFIG -f - apiVersion: v1 kind: Service metadata: # the name of the service must be anthos-prometheus-k8s-external name: anthos-prometheus-k8s-external namespace: kube-system spec: ports: - name: http port: 9090 protocol: TCP targetPort: 9090 selector: app: anthos-prometheus-k8s sessionAffinity: ClientIP type: LoadBalancer EOF
将以下配置添加到外部系统中 Prometheus 配置文件的
scrape_configs
部分:scrape_configs: - job_name: 'federate' scrape_interval: 1m honor_labels: true metrics_path: '/federate' params: 'match[]': - '{job!=""}' static_configs: - targets: - '<loadbalancer-ip-of-anthos-prometheus-k8s-external>:9090'
如需获取 Prometheus 的负载平衡器 IP 地址,请运行以下命令:
kubectl get --kubeconfig=ADMIN_OIDC_KUBECONFIG -n kube-system svc anthos-prometheus-k8s-external -ojsonpath={.status.loadBalancer.ingress[*].ip}
后续步骤
详细了解日志记录和监控。