使用獨立運作的 Prometheus 伺服器監視 Azure Kubernetes 服務 (AKS)

使用獨立運作的 Prometheus 伺服器監視 Azure Kubernetes 服務 (AKS)

我是否可以將 Prometheus 部署到每個 Azure Kubernetes 服務 (AKS),並從 AKS 外部的虛擬機器建立的 Prometheus 監視每個 Prometheus?換句話說,我想將中心的 Prometheus 與每個集群中的所有 Prometheus 連接起來。

如果您能讓我知道與此高度相關的參考資料,我將不勝感激。我們正在考慮的構圖如下。

在此輸入影像描述

答案1

看起來您正在尋找普羅米修斯伺服器的聯合。官方文檔這裡

基本上,您需要配置中央 Prometheus 實例以從 path 的中間實例中抓取資料/federate

您的情況的簡單配置範例如下:

scrape_configs:
  - job_name: 'federate'
    scrape_interval: 15s

    honor_labels: true
    metrics_path: '/federate'

    params:
      'match[]':
        - '{__name__=~".+"}'

    static_configs:
      - targets:
        - 'cluster-1-address:9090'
        - 'cluster-2-address:9090'
        - 'cluster-3-address:9090'

請注意,聯合不會保留時間戳記。因此,中央伺服器和中間伺服器之間的資料可能會出現微小差異。

請務必scrape_interval根據scrape_interval中間實例進行配置:如果中心伺服器的間隔較小,則會導致資料點的倍增和使用的儲存空間的增加。如果中央伺服器有更大的間隔,您將丟失一些資料點。

答案2

是的,可以將 Prometheus 部署到每個 Azure Kubernetes 服務 (AKS),並從 AKS 外部的虛擬機器建立的 Prometheus 監視每個 Prometheus。這可以透過使用 Prometheus 中的聯合來實現。

相關內容