Prometheus 연방
1. 장면 사용하기
Prometheus 연방은 서로 다른 사용 장면을 가지고 있다.일반적으로 연방은 확장 가능한 Prometheus 모니터링 설정을 실현하거나 관련 지표를 한 서비스의 Prometheus에서 다른 Prometheus로 가져오는 데 사용된다.
1.1. 층별 연방
계층형 연방은 Prometheus가 10여 개의 데이터 센터와 수백만 개의 노드로 확장할 수 있도록 허용한다.이 장면에서 연방 토폴로지는 트리 토폴로지 구조와 유사하다. 상부의 프로메테우스 서버는 대량의 하층 프로메테우스 서버에서 수집하고 집합하는 시차 데이터를 수집한다.
예를 들어 연방 설정은 여러 데이터 센터의 Prometheus 서버와 전역 Prometheus 서버로 구성될 수 있다.각 데이터 센터에 배치된 Prometheus 서버는 이 구역 내의 세립도 데이터 (실례 단계) 를 수집하고, 전역 Prometheus 서버는 이 하층 Prometheus 서버에서 데이터 (작업 단계) 를 수집하고 집합한 데이터를 저장합니다.이렇게 하면 집합된 전역 시각과 상세한 로컬 시각을 제공할 수 있다.
1.2. 크로스 서비스 연방
크로스 서비스 연방에서, 한 서비스의 프로메테우스 서버는 다른 서비스의 프로메테우스 서버에서 지정한 데이터를 추출하여 프로메테우스 서버에서 두 데이터 집합에 대한 경고와 조회를 사용하도록 설정되어 있다.
예를 들어 여러 가지 서비스를 실행하는 그룹 스케줄러는 그룹에서 실행되는 서비스 실례의 자원 사용 정보(예를 들어 메모리와 CPU 사용률)에 노출될 수 있다.다른 한편, 집단에서 실행되는 서비스는 지정된 응용 프로그램 수준의 서비스 지표만 노출해야 한다.일반적으로 이 두 가지 지표 집합은 각각 다른 Prometheus 서버에 의해 캡처됩니다.연방을 이용하여 서비스 수준 지표를 감시하는 Prometheus 서버도 집단에서 Prometheus 서버에서 특정한 서비스의 집단 자원 사용률 지표를 끌어내어 이 두 그룹의 지표집을 사용할 수 있도록 할 수 있다
2. 연방 구성
Prometheus 서버에서
/federate
노드는 서비스에서 선택된 시간 시퀀스 집합의 값을 가져올 수 있습니다.하나 이상의 URL 매개 변수가 노출될 시퀀스로 지정되어야 합니다.각각match[]
변수는 변하지 않는 차원 선택기 상match[]
또는up
으로 지정되어야 한다.만약 여러 개의 {job="api-server"}
파라미터가 있다면, 모든 시차 데이터의 집합이 선택될 것이다.하나의 Prometheus 서버 연방 지표에서 다른 Prometheus 서버로 목표 Prometheus 서버가 원본 서버의
match[]
노드에서 지표 데이터를 캡처하는 동시에 /federate
캡처 옵션(소스 Prometheus 서비스에 노출된 라벨을 다시 쓰지 않음)을 사용하고 필요한 honor_lables
파라미터를 전달합니다.예를 들어 아래의 match[]
연방scrape_configs
세 대의 Prometheus 서버는 상부 Prometheus가 노출된 모든 테이프source-prometheus-{1,2,3}:9090
라벨의 서열이나 이름을 job="prometheus"
로 시작하는 지표를 캡처하고 집계한다.scrape_configs:
- job_name: 'federate'
scrape_interval: 15s
honor_labels: true
metrics_path: '/federate'
params:
'match[]':
- '{job="prometheus"}'
- '{__name__=~"job:.*"}'
- '{job="node"}'
static_configs:
- targets:
- 'source-prometheus-1:9090'
- 'source-prometheus-2:9090'
- 'source-prometheus-3:9090'
Read more: https://fuckcloudnative.io/prometheus/3-prometheus/federation.html#ixzz6V68Jlq2m
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.