AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.

Prometheus와 통합

Prometheus는 지정된 간격으로 구성된 대상에서 지표를 수집하고, 규칙 표현식을 평가하고 결과를 표시하며, 특정 조건이 관찰되면 경고를 트리거할 수 있습니다.

통합을 통해 배포서버 에 대한 메트릭 데이터를 Prometheus 인스턴스로 전송하도록 MongoDB Ops Manager 구성할 수 있습니다.

  • Prometheus 통합은 MongoDB Agent 12.0.15.7646 이상을 사용하는 자동화 managed 형 클러스터에서 사용할 수 있습니다. 이후 버전이어야 합니다. MongoDB Agent 12.0.15.7646 은 MongoDB Ops Manager 6.0.7와 함께 출시됩니다.

  • 작동하는 Prometheus 인스턴스가 있어야 합니다. 작업 인스턴스 설정하다 하려면 설치 가이드를 참조하세요.

  • (선택 사항) Grafana 를 사용하여 Prometheus 메트릭을 시각화합니다.

MongoDB Ops Manager와 Prometheus를 통합하려면 다음을 수행합니다.

1
  1. 이미 표시되어 있지 않은 경우 탐색 모음의 Organizations 메뉴에서 원하는 프로젝트가 포함된 조직을 선택합니다.

  2. 이미 표시되어 있지 않은 경우 Projects 탐색 모음의 프로젝트 메뉴에서 원하는 프로젝트를 선택합니다.

  3. Projects 메뉴 옆에 있는 Options 메뉴를 펼친 다음 Integrations 을 클릭합니다.

2
3

Prometheus 인증 자격 증명 은 MongoDB Ops Manager 의 Prometheus 통합과 함께 사용하도록 특별히 설계되었습니다. MongoDB Ops Manager 는 이러한 자격 증명 을 사용하여 Prometheus 검색 엔드포인트에 액세스 하고 MongoDB Ops Manager 노드에서 Prometheus 지표 를 스크래핑합니다. 이러한 기능으로 엄격하게 제한되며 모니터링 데이터에 액세스하고 수집하는 것 이상의 추가 권한이나 기능은 없습니다.

중요

사용자 아이디와 비밀번호를 안전한 위치에 복사합니다. 이 화면을 벗어나면 비밀번호에 액세스할 수 없습니다.

4

팁

기본값인 0.0.0.0:9216 은 로컬 시스템의 모든 IPv4 주소에 있는 포트 9216 에서 지표를 스크랩합니다.

5

이 설정을 활성화하면 Ops Manager는 Prometheus 인스턴스가 https 를 사용하여 지표를 스크랩하도록 합니다.

필드
설명

TLS 인증서 키 파일 경로

PEM https Prometheus 스크래핑 엔드포인트를 가동하는 데 필요한 인증서 및 키가 포함된 파일 경로입니다.

사용자는 다음에 대한 책임이 있습니다.

  • TLS 인증서 키 파일 발급 및 갱신.

  • 자동화 에이전트 로그에서 엔드포인트가 올바르게 시작되었는지 확인합니다.

--tlsCertificateKeyFilePassword

인증서 키 파일이 암호화된 경우 필수입니다.

6
Discovery Method
설명

이 방법을 사용하려면 Prometheus v2.28 이상이 필요합니다. 구성 파일 의 scrape_config 부분을 생성하여 HTTP 엔드포인트를 통해 대상을 검색합니다.

이 메서드를 사용하면 Prometheus가 YAML 또는 JSON 문서를 읽고 스크래핑할 대상을 구성할 수 있습니다.

사용자는 Discovery API에 요청하여 대상을 제공하고 그 결과를 targets.json 파일에 저장할 책임이 있습니다.

요청하려면 다음 탭 중 하나에서 자리 표시자 텍스트를 대체하거나 다른 언어로 직접 스크립트를 생성하십시오.

# Sets the `Authorization` header on every scrape# request with the username and password from the# previous step. The URL that Prometheus fetches the# targets from.# Replace the <group-id> with the project ID of your# Ops Manager instance. curl --header 'Accept: application/json' \ --user <username>:<password> \ --request GET "https://cloud.mongodb.com/prometheus/v1.0/groups/{GROUP-ID}/discovery"

Discovery API에 대해 자세히 알아보려면 Prometheus의 최신 대상 반환을 참조하세요.

7
8
  1. 생성된 스니펫을 구성 파일 의 scrape_configs 섹션에 복사하고 자리 표시자 텍스트로 대체합니다.

    두 메서드의 구성 파일 예시는 예시 구성을 참조하세요.

  2. 프로메테우스 인스턴스를 다시 시작합니다.

  3. Prometheus 인스턴스의 상단 탐색 메뉴에서 Status 클릭하고 Targets 클릭하여 배포 측정항목을 확인합니다.

다음은 HTTP Service 검색 또는 파일 서비스 검색 메서드를 사용할 때의 구성 파일 의 예입니다.

두 방법의 구성 파일에는 다음 필드가 포함되어 있습니다.

필드
설명

scrape_interval

대상을 스크래핑하는 빈도를 나타내는 시간입니다. 이 설정은 최소 10초의 시간을 지원합니다.

job_name

스크랩된 측정항목에 사람이 읽을 수 있는 라벨이 할당되었습니다.

metrics_path

대상에서 측정항목을 가져올 위치를 나타내는 HTTP 리소스 경로입니다.

scheme

http 또는 https 요청에 대해 구성된 Prometheus 프로토콜 체계. https 를 구성하는 경우 tlsPemPath 을 지정해야 합니다.

basic_auth

모든 스크랩 요청에 사용할 권한 부여 헤더입니다.

HTTP Service 검색 방법에는 다음 하위 필드가 있는 http_sd_configs 필드도 포함되어 있습니다.

필드
설명

url

Prometheus가 대상을 가져오는 URL입니다.

refresh_interval

엔드포인트를 다시 쿼리할 시기를 나타내는 시간입니다.

basic_auth

API 서버 인증에 사용할 자격 증명입니다.

global: scrape_interval: 15s scrape_configs: - job_name: "CM-Testing-mongo-metrics" scrape_interval: 10s metrics_path: /metrics scheme : https basic_auth: username: prom_user_<GROUP-ID> password: <PASSWORD> http_sd_configs: - url: https://cloud.mongodb.com/prometheus/v1.0/groups/<GROUP-ID>/discovery refresh_interval: 60s basic_auth: username: prom_user_<GROUP-ID> password: <PASSWORD>

파일 서비스 검색 방법에는 다음 하위 필드가 있는 file_sd_configs 필드도 포함되어 있습니다.

필드
설명

files

메트릭 스크래핑 대상을 추출할 파일이 포함된 목록입니다.

global: scrape_interval: 15s scrape_configs: - job_name: "CM-Testing-mongo-metrics" scrape_interval: 10s metrics_path: /metrics scheme : https basic_auth: username: prom_user_<GROUP-ID> password: <PASSWORD> file_sd_configs: - files: - /usr/local/etc/targets.json

샘플 Grafana 대시보드 를 가져오려면 다음을 수행합니다.

1

Grafana UI 에서 버튼을 클릭한 다음 을 Import 클릭합니다.

2
3

mongo-metrics.json 또는 hardware-metrics.json 파일 을 복사하여 대시보드 를 만듭니다.

참고

mongo-metrics.json 파일 MongoDB 8.0 이상에 대해 지표 이름을 사용합니다. MongoDB 7.0 및 이전 버전의 경우 mongodb_queues_execution_read_available 및 mongodb_queues_execution_write_available 를 mongodb_wiredTiger_concurrentTransactions_read_available 및 mongodb_wiredTiger_concurrentTransactions_write_available로 바꿉니다.

Grafana 대시보드 가져오기에 대해 자세히 학습하려면 Grafana 설명서를 참조하세요.

다음 지표 MongoDB Atlas cluster 와 함께 Prometheus 통합을 사용할 때 사용할 수 있습니다.

각 MongoDB 측정항목에는 다음 라벨이 포함되어 있습니다.

레이블
설명

group_id

프로젝트를 식별하는 고유한 16진수 문자열입니다.

org_id

Atlas 조직을 식별하는 고유한 24자리 16진수 문자열.

cl_role

클러스터 역할을 정의하는 사람이 읽을 수 있는 레이블입니다.

cl_name

클러스터를 식별하는 사람이 읽을 수 있는 라벨입니다.

rs_nm

복제본 세트를 식별하는 사람이 읽을 수 있는 레이블입니다.

rs_state

복제본 세트 상태를 나타내는 숫자입니다.

process_port

프로세스가 실행되는 포트입니다.

mongodb_info 은 언제나 값이 1인 게이지입니다. 이 지표에는 모든 MongoDB 지표 레이블과 함께 다음 레이블을 포함합니다.

레이블
설명

mongodb_version

주 버전, 부 버전 및 패치 버전을 나타내는 문자열입니다.

replica_state_name

복제본 세트 멤버 상태를 나타내는 문자열입니다.

process_type

실행 중인 프로세스를 나타내는 문자열입니다. 값은 mongod, mongos 또는 config일 수 있습니다.

참고

Prometheus 표현식 브라우저에서 각 hardware 지표에 대한 설명을 볼 수도 있습니다.

이름
운영 체제
유형
설명

hardware_system_cpu_nice

Unix, Darwin

카운터

우선 순위가 낮은 사용자 모드에서 보낸 시간입니다.

hardware_system_cpu_io_wait

Unix

카운터

I/O가 완료될 때까지 기다리는 시간입니다.

hardware_system_cpu_irq

Unix

카운터

인터럽트 서비스에 소요된 시간.

hardware_system_cpu_soft_irq

Unix

카운터

softirq를 서비스하는 데 소요된 시간입니다.

hardware_system_cpu_steal

Unix

카운터

가상 환경에서 실행할 때 다른 운영 체제에서 소비한 시간입니다.

hardware_system_cpu_guest

Unix

카운터

Linux 커널의 제어 하에 게스트 운영 체제의 가상 CPU를 실행하는 데 소요된 시간입니다.

hardware_system_cpu_guest_nice

Unix

카운터

친절하게 게스트를 응대하는 데 소요되는 시간.

hardware_system_cpu_kernel_milliseconds

모두

카운터

시스템 모드에서 보낸 시간입니다.

hardware_system_cpu_user_milliseconds

모두

카운터

사용자 모드에서 보낸 시간입니다.

hardware_disk_metrics_weighted_time_io

Unix

카운터

I/O에 소요된 시간 가중치.

hardware_disk_metrics_physical_write_count

Unix

카운터

처리된 물리적 쓰기 I/O의 수입니다.

hardware_disk_metrics_physical_read_count

Unix

카운터

처리된 물리적 읽기 I/O의 수입니다.

hardware_disk_metrics_total_time

Unix

카운터

이 차단 장치가 활성화된 총 시간입니다.

hardware_disk_metrics_idle_time

Windows

카운터

유휴 작업에 소요된 시간입니다.

hardware_disk_metrics_disk_space_free_bytes

모두

게이지

마운트된 파일 시스템에서 사용 가능한 디스크 공간입니다.

hardware_disk_metrics_disk_space_used_bytes

모두

게이지

마운트된 파일 시스템에서 사용되는 디스크 공간입니다.

hardware_disk_metrics_read_count

모두

카운터

처리된 읽기 I/O의 수입니다.

hardware_disk_metrics_read_time_milliseconds

모두

카운터

읽기 요청에 대한 총 대기 시간입니다.

hardware_disk_metrics_write_count

모두

카운터

Number of write I/O's processed.

hardware_disk_metrics_write_time_milliseconds

모두

카운터

쓰기 요청에 대한 총 대기 시간입니다.

hardware_process_cpu_children_user

Unix

카운터

이 프로세스가 어린이를 기다릴 수 있도록 사용자 모드에서 예약된 시간입니다.

hardware_process_cpu_children_kernel

Unix

카운터

이 프로세스가 하위 프로세스를 기다리도록 커널 모드에서 예약된 시간입니다.

hardware_process_cpu_kernel_milliseconds

모두

카운터

이 프로세스에 대해 커널 모드에서 예약된 시간입니다.

hardware_process_cpu_user_milliseconds

모두

카운터

이 프로세스에 대해 사용자 모드에서 예약된 시간입니다.

hardware_system_vm_page_swap_in

Unix

카운터

시스템이 디스크에서 스왑인한 페이지 수입니다.

hardware_system_vm_page_swap_out

Unix

카운터

시스템이 디스크로 교체한 페이지 수입니다.

hardware_system_memory_mem_total

Unix

게이지

사용 가능한 총 RAM(물리적 RAM에서 몇 개의 예약 비트와 커널 바이너리 코드를 뺀 값).

hardware_system_memory_mem_free

Unix

게이지

LowFree 0} + HighFree 의 합계.

hardware_system_memory_mem_available

Unix

게이지

교체하지 않고 새 애플리케이션을 시작하는 데 사용할 수 있는 메모리 양의 추정치입니다.

hardware_system_memory_buffers

Unix

게이지

엄청나게 커지지 않아야 하는 원시 디스크 블록을 위한 임시 스토리지입니다.

hardware_system_memory_cached

Unix

게이지

디스크에서 읽은 파일을 위한 인메모리 캐시입니다. 여기에는 SwapCached이 포함되지 않습니다.

hardware_system_memory_swap_total

Unix

게이지

사용 가능한 스왑 공간의 총량입니다.

hardware_system_memory_swap_free

Unix

게이지

사용되지 않은 스왑 공간의 총량입니다.

hardware_system_memory_shared_mem

Unix

게이지

콘텐츠가 가상 메모리에 있는 파일 시스템에서 사용되는 메모리 양입니다.

hardware_system_memory_swap_free_kilobytes

모두

게이지

사용되지 않은 스왑 공간의 총량입니다.

hardware_system_memory_swap_total_kilobytes

모두

게이지

사용 가능한 스왑 공간의 총량입니다.

hardware_platform_num_logical_cpus

모두

게이지

현재 프로세스에서 사용할 수 있는 논리적 CPU의 수입니다.

hardware_system_network_bytes_in_bytes

모두

카운터

인터페이스에서 수신한 데이터의 바이트 수입니다.

hardware_system_network_bytes_out_bytes

모두

카운터

인터페이스에서 전송되는 데이터의 바이트 수입니다.

각 하드웨어 지표에는 다음과 같은 레이블이 포함되어 있습니다.

레이블
설명

group_id

프로젝트를 식별하는 고유한 16진수 문자열입니다.

org_id

Atlas 조직을 식별하는 고유한 24자리 16진수 문자열.

process_port

프로세스가 실행되는 포트입니다.

disk_name

디스크를 식별하는 사람이 읽을 수 있는 라벨입니다.