Prometheus 원격 쓰기를 사용하여 메트릭 수집

Monitoring 에이전트를 사용할 수 없는 환경에서 메트릭을 수집하고 Monitoring 인스턴스로 전송하도록 Prometheus 원격 쓰기를 구성할 수 있습니다.

다음에서 메트릭을 수집할 수 있습니다.

  • 기존 Prometheus 서버입니다.
  • Monitoring 에이전트가 스크랩할 만큼 오래 존재하지 않을 수 있는 임시 또는 일괄처리 작업입니다.
  • Windows 호스트 및 Monitoring 에이전트를 사용할 수 없는 기타 운영 체제
  • Non-x86 기반 아키텍처(일반적으로 IoT 환경 또는 에지 컴퓨팅에서 볼 수 있음)
  • NGNIX, 사용자 정의 애플리케이션, RabbitMQ등과 같은 비컨테이너 워크로드.

Prometheus remote write option
Prometheus remote write

Monitoring 웹 UI를 통해 Prometheus 원격 쓰기를 사용하여 수집되는 메트릭을 모니터할 수 있습니다. 또한 PromQL을 사용하여 표준 Prometheus 조회 언어를 사용하여 데이터를 조회할 수 있습니다.

Prometheus 원격 쓰기 구성

Monitoring 인스턴스에 원격으로 쓰도록 Prometheus 서버를 구성할 수 있습니다. 예를 들면 다음과 같습니다.

  • Kubernetes 클러스터에서 실행되는 Prometheus 서버를 다양한 방식으로 구성할 수 있습니다. 설치 방법에 따라 다음 옵션 중 하나를 선택하여 IBM Cloud Monitoring 인스턴스에 메트릭을 전송하도록 Prometheus의 원격 쓰기 기능을 구성할 수 있습니다.

    • Prometheus Operator에서 관리되는 Prometheus 서버 구성

    • Helm을 사용하여 Prometheus 서버 구성

    • Kubernetes ConfigMap 을 통해 Prometheus 서버 구성

    자세한 정보는 Prometheus 원격 쓰기를 사용하여 메트릭 수집의 내용을 참조하십시오.

Prometheus v2.25 및 이전 버전

Prometheus v2.25 이하 버전의 경우 remote_write 구성 파일에서 prometheus.yml 섹션을 다음과 같이 구성해야 합니다.

global:
  external_labels:
    [ <labelname>: <labelvalue> ... ]
remote_write:
- url: "https://<INGESTION_URL>/prometheus/remote/write"
  bearer_token: "<MONITOR_API_TOKEN>"

여기서,

  • <MONITOR_API_TOKEN> 인증 토큰이 포함되어 있습니다. 자세한 정보는 모니터 API 토큰에 대한 작업 을 참조하십시오.
  • <INGESTION_URL> 섭취 종점을 나타냅니다. 이 값을 Monitoring 인스턴스가 사용 가능한 지역에 대한 수집 엔드포인트로 설정해야 합니다. 자세한 정보는 엔드포인트 를 참조하십시오.

Prometheus 버전 2.26 이상 버전

Prometheus 버전 2.26 이상 버전의 경우 remote_write 구성 파일에서 prometheus.yml 섹션을 다음과 같이 구성해야 합니다.

global:
  external_labels:
    [ <labelname>: <labelvalue> ... ]
remote_write:
- url: "https://<INGESTION_URL>/prometheus/remote/write"
  authorization:
    credentials: "<MONITOR_API_TOKEN>"

여기서,

  • <MONITOR_API_TOKEN> 인증 토큰이 포함되어 있습니다. 자세한 정보는 모니터 API 토큰에 대한 작업 을 참조하십시오.
  • <INGESTION_URL> 섭취 종점을 나타냅니다. 이 값을 Monitoring 인스턴스가 사용 가능한 지역에 대한 수집 엔드포인트로 설정해야 합니다. 자세한 정보는 엔드포인트 를 참조하십시오.

원격 쓰기를 통해 수집된 메트릭 관리

기본적으로 Prometheus 서버가 Monitoring 인스턴스에 원격으로 쓰도록 구성하면 모든 메트릭이 수집되고 쉽게 식별할 수 있도록 remote_write: true 레이블이 포함됩니다.

전송되는 메트릭 제어

수집하여 Monitoring 인스턴스로 전송하는 메트릭을 관리하고 제어할 수 있습니다. 수집할 시리즈 및 레이블을 선택하고 Monitoring 인스턴스에 전송되는 활성 시리즈 수를 줄이려면 write_relabel_configs 내에서 remote_write 블록을 사용하여 레이블 재지정 구성을 설정할 수 있습니다.

예를 들어, 하나의 네임스페이스 my-namespace에서 메트릭을 수집하려면 다음을 추가할 수 있습니다.

remote_write:
    - url: https://<INGESTION_URL>/prometheus/remote/write
      authorization:
        credentials_file: /etc/secrets/<SECRET_NAME>
      write_relabel_configs:
        - action: keep
          regex: my-namespace
          source_labels:
          - namespace

Prometheus 서버에서 메트릭 레이블 지정

external_labels 내의 global 블록을 사용하여 Prometheus 서버에서 수집된 각 시계열과 함께 전송되는 사용자 정의 레이블을 지정할 수 있습니다.

이러한 레이블을 사용하여 Monitoring UI에서 대시보드를 통해 모니터하는 메트릭의 범위를 필터링하고 정의할 수 있습니다.

예를 들어, Monitoring 인스턴스에 원격으로 쓰도록 구성된 두 개의 다른 Prometheus 서버가 있는 경우 각 서버를 식별하기 위해 외부 레이블을 포함할 수 있습니다.

# Prometheus server 1
global:
  external_labels:
    provider: prometheus1
remote_write:
- url: ...
# Prometheus server 2
global:
  external_labels:
    provider: prometheus2
remote_write:
- url: ...

속도 한계

다음 표에는 인스턴스당 기본 비율 한계가 나열되어 있습니다.

속도 한계
비율 한계 정보
병렬 쓰기 100개의 동시 요청
분당 데이터 점(DPM) 1백만 전송되는 데이터 점 수는 메트릭이 전송되는 빈도에 따라 다릅니다. 예를 들어, 스크랩핑 간격이 10초이면 60초 간격보다 더 많은 DPM을 제출합니다.
분당 쓰기 수 10,000

원격 쓰기를 위한 수집 엔드포인트

IBM Cloud Monitoring 더 이상 사용되지 않는 https://ingest.<region>https://ingest.private.<region> 양식의 엔드포인트의 Prometheus 클라이언트 지원이며 2024년 5월 31일에 새 엔드포인트로 대체되었습니다. 이전 엔드포인트에 대한 지원 종료는 2024년 8월 31일입니다. 이 날짜 이후에는 이전 엔드포인트의 작동이 중지됩니다. Prometheus 원격 쓰기를 사용하는 고객은 2024년 8월 31일까지 새 엔드포인트를 사용하도록 마이그레이션해야 Prometheus 원격 쓰기를 계속 사용할 수 있습니다.

다음 표에는 Prometheus 원격 쓰기를 통해 메트릭을 수집하도록 구성할 수 있는 공용 Monitoring 수집 엔드포인트가 나열되어 있습니다.

원격 쓰기 수집은 TCP 443포트를 사용합니다.

Prometheus 원격 쓰기 공용 엔드포인트
지역 엔드포인트
댈러스(US-South) https://ingest.us-south.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.us-south.monitoring.cloud.ibm.com/prometheus/remote/write
프랑크푸르트(EU-DE) https://ingest.eu-de.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.eu-de.monitoring.cloud.ibm.com/prometheus/remote/write
런던(EU-GB) https://ingest.eu-gb.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.eu-gb.monitoring.cloud.ibm.com/prometheus/remote/write
마드리드 (EU-ES) https://ingest.eu-es.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.eu-es.monitoring.cloud.ibm.com/prometheus/remote/write
JP-OSA https://ingest.jp-osa.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.jp-osa.monitoring.cloud.ibm.com/prometheus/remote/write
BR-SAO https://ingest.br-sao.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.br-sao.monitoring.cloud.ibm.com/prometheus/remote/write
시드니(AU-SYD) https://ingest.au-syd.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.au-syd.monitoring.cloud.ibm.com/prometheus/remote/write
도쿄(JP-TOK) https://ingest.jp-tok.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.jp-tok.monitoring.cloud.ibm.com/prometheus/remote/write
CA-TOR https://ingest.ca-tor.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.ca-tor.monitoring.cloud.ibm.com/prometheus/remote/write
워싱턴(US-EAST) https://ingest.us-east.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.us-east.monitoring.cloud.ibm.com/prometheus/remote/write

다음 표에는 Prometheus 를 통해 메트릭을 수집하도록 구성할 수 있는 개인 Monitoring 수집 엔드포인트가 나열되어 있습니다. 원격 쓰기:

Prometheus 원격 쓰기 비공개 엔드포인트
지역 엔드포인트
댈러스(US-South) https://ingest.private.us-south.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.private.us-south.monitoring.cloud.ibm.com/prometheus/remote/write
프랑크푸르트(EU-DE) https://ingest.private.eu-de.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.private.eu-de.monitoring.cloud.ibm.com/prometheus/remote/write
런던(EU-GB) https://ingest.private.eu-gb.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.private.eu-gb.monitoring.cloud.ibm.com/prometheus/remote/write
마드리드 (EU-ES) https://ingest.private.eu-es.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.private.eu-es.monitoring.cloud.ibm.com/prometheus/remote/write
JP-OSA https://ingest.private.jp-osa.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.private.jp-osa.monitoring.cloud.ibm.com/prometheus/remote/write
BR-SAO https://ingest.private.br-sao.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.private.br-sao.monitoring.cloud.ibm.com/prometheus/remote/write
시드니(AU-SYD) https://ingest.private.au-syd.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.private.au-syd.monitoring.cloud.ibm.com/prometheus/remote/write
도쿄(JP-TOK) https://ingest.private.jp-tok.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.private.jp-tok.monitoring.cloud.ibm.com/prometheus/remote/write
CA-TOR https://ingest.private.ca-tor.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.private.ca-tor.monitoring.cloud.ibm.com/prometheus/remote/write
워싱턴(US-EAST) https://ingest.private.us-east.monitoring.cloud.ibm.com/prometheus/remote/write 더 이상 사용되지 않음
https://ingest.prws.private.us-east.monitoring.cloud.ibm.com/prometheus/remote/write

제한사항

IBM Cloud Monitoring Prometheus 원격 쓰기 기능에는 다음과 같은 제한사항이 있습니다.

  • 인스턴스로 전송된 메트릭은 탐색에서 액세스할 수 있지만 범위 트리와 호환 가능하지 않습니다.

  • 소스에서 수집된 레이블만 메트릭을 필터링하는 데 사용할 수 있습니다.

  • 메트릭의 메타데이터는 원격 쓰기를 통해 전송되지 않습니다.

  • 이름이 _total, _sum 또는 _count로 끝나는 메트릭은 카운터로 저장되며, 그렇지 않으면 게이지로 관리됩니다.

  • 대시보드에서 수동으로 단위를 설정할 수 있습니다.

  • 대시보드에서 다른 샘플링을 사용하는 메트릭(예: 10초 및 1분)을 혼합할 수 없습니다.

    Prometheus 원격 쓰기 메트릭을 측정 항목을 Monitoring 에이전트 메트릭과 결합할 수 있도록 스크랩핑 간격을 10초로 구성하는 것이 좋습니다.