簡體   English   中英

Prometheus抓取K8s入口端點

[英]Prometheus to scrape K8s Ingress Endpoints

我的Prometheus實例當前已部署到K8s集群的外部。 我瀏覽了以下文章: https : //www.linkedin.com/pulse/monitoring-kubernetes-prometheus-outside-cluster-steven-acreman

這為通過api服務器訪問K8s服務提供了一個很好的主意。 我仍在嘗試使其工作(卡有證書問題)。

但是,我的問題是我們是否可以使用Prometheus代替入口控制器主機名來刮擦指標端點。 還是那是一種標准方法?

我找不到相同的單個文檔或實現。 請建議是否有人實現了上述方案或上面有任何文檔。

我將使用Kubernetes SD配置 ,並冒險使用角色來發現目標。

Kubernetes SD配置允許從Kubernetes的 REST API檢索抓取目標,並始終與集群狀態保持同步。

您可以使用角色類型endpoints

endpoints角色從列出的服務endpoints中發現目標。 對於每個端點地址,每個端口都發現一個目標。 如果端點由Pod支持,則該Pod的所有其他未綁定到端點端口的容器端口也將被發現為目標。

可用的元標簽:

  • __meta_kubernetes_namespace :端點對象的名稱空間。
  • __meta_kubernetes_endpoints_name :端點對象的名稱。
  • 對於直接從端點列表中發現的所有目標(未從基礎容器額外推斷出的所有目標),將附加以下標簽:
    • __meta_kubernetes_endpoint_hostname :端點的主機名。
    • __meta_kubernetes_endpoint_node_name :承載端點的節點的名稱。
    • __meta_kubernetes_endpoint_ready :對於端點的就緒狀態,設置為truefalse
    • __meta_kubernetes_endpoint_port_name :端點端口的名稱。
    • __meta_kubernetes_endpoint_port_protocol :端點端口的協議。
    • __meta_kubernetes_endpoint_address_target_kind :端點地址目標的種類。
    • __meta_kubernetes_endpoint_address_target_name :端點地址目標的名稱。
  • 如果端點屬於服務,則會附加role: service發現的所有標簽。
  • 對於由容器支持的所有目標,將附加role: pod所有標簽role: pod發現。

或角色類型ingress

ingress角色發現每個入口的每個路徑的目標。 這通常對黑盒監視入口很有用。 該地址將設置為入口規范中指定的主機。

可用的元標簽:

  • __meta_kubernetes_namespace :入口對象的名稱空間。
  • __meta_kubernetes_ingress_name :入口對象的名稱。
  • __meta_kubernetes_ingress_label_<labelname> :來自入口對象的每個標簽。
  • __meta_kubernetes_ingress_labelpresent_<labelname> :對於來自入口對象的每個標簽,為true
  • __meta_kubernetes_ingress_annotation_<annotationname> :來自入口對象的每個注釋。
  • __meta_kubernetes_ingress_annotationpresent_<annotationname> :對於來自入口對象的每個注釋為true
  • __meta_kubernetes_ingress_scheme :入口協議方案,如果設置了TLS配置,則為https 默認為http
  • __meta_kubernetes_ingress_path :入口規范的路徑。 默認為/

如果您想查看為Kubernetes配置Prometheus的詳細示例,請參閱此文件

您可能也對第三方Prometheus Operator感興趣,它可以自動在Kubernetes上建立Peometheus。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM