독립적으로 실행되는 Prometheus 서버로 AKS(Azure Kubernetes Service) 모니터링

독립적으로 실행되는 Prometheus 서버로 AKS(Azure Kubernetes Service) 모니터링

각 AKS(Azure Kubernetes Service)에 Prometheus를 배포하고 AKS 외부의 가상 머신에서 생성된 Prometheus에서 각 Prometheus를 모니터링할 수 있나요? 즉, 중앙의 프로메테우스를 각 클러스터의 모든 프로메테우스와 연결하고 싶습니다. 즉, 중앙의 프로메테우스를 각 클러스터의 모든 프로메테우스와 연결하고 싶습니다.

이와 관련성이 높은 참고문헌을 알려주시면 감사하겠습니다. 우리가 생각하고 있는 구성은 다음과 같습니다.

여기에 이미지 설명을 입력하세요

답변1

Prometheus 서버 연합을 찾고 계신 것 같습니다. 공식 문서여기.

기본적으로 path 의 중간 인스턴스에서 데이터를 스크랩하도록 중앙 Prometheus 인스턴스를 구성해야 합니다 /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

예, 각 AKS(Azure Kubernetes Service)에 Prometheus를 배포하고 AKS 외부의 가상 머신에서 생성된 Prometheus에서 각 Prometheus를 모니터링할 수 있습니다. 이는 Prometheus의 페더레이션을 사용하여 달성할 수 있습니다.

관련 정보