Cloud Monitoring을 사용하여 쿼리

Google Cloud Managed Service for Prometheus를 배포한 후 관리형 서비스에 전송된 데이터를 쿼리하고 결과를 차트 및 대시보드로 표시할 수 있습니다.

이 문서에서는 쿼리 가능한 데이터, Cloud Monitoring을 사용해서 수집한 데이터를 검색하고 사용하는 방법을 결정하는 측정항목 범위에 대해 설명합니다.

Managed Service for Prometheus의 모든 쿼리 인터페이스는 Cloud Monitoring API를 사용하여 Monarch에서 데이터를 검색하도록 구성됩니다. 로컬 Prometheus 서버에서 데이터를 쿼리하는 대신 Monarch를 쿼리하면 규모에 맞게 전역 모니터링을 수행할 수 있습니다.

시작하기 전에

관리형 서비스를 아직 배포하지 않았으면 관리 컬렉션 또는 자체 배포 컬렉션을 설정합니다. PromQL을 사용하여 Cloud Monitoring 측정항목 쿼리에만 관심이 있는 경우 이 단계를 건너뛸 수 있습니다.

쿼리 및 측정항목 범위

쿼리 가능한 데이터는 데이터 쿼리에 사용되는 방법에 관계없이 Cloud Monitoring 구문 측정항목 범위에 따라 결정됩니다.

Monitoring 측정항목 범위는 여러 Google Cloud 프로젝트에 속하는 측정항목 데이터를 쿼리할 수 있게 해주는 읽기 전용 구문입니다. 모든 측정항목 범위는 범위 지정 프로젝트라고 부르는 지정된 Google Cloud 프로젝트에서 호스팅됩니다.

기본적으로 프로젝트는 자체 측정항목 범위에 대한 범위 지정 프로젝트이고, 측정항목 범위에는 해당 프로젝트에 대한 측정항목 및 구성이 포함되어 있습니다. 범위 지정 프로젝트는 측정항목 범위에 모니터링 프로젝트를 두 개 이상 가질 수 있으며 측정항목 범위에 있는 모든 모니터링 프로젝트의 측정항목과 구성은 범위 지정 프로젝트에 표시됩니다. 또한 모니터링 프로젝트는 측정항목 범위 두 개 이상에 포함될 수 있습니다.

범위 지정 프로젝트에서 측정항목을 쿼리하고 해당 범위 지정 프로젝트가 멀티 프로젝트 측정항목 범위를 호스팅하는 여러 프로젝트에서 데이터를 검색할 수 있습니다. 측정항목 범위에 모든 프로젝트가 포함되면 쿼리와 규칙이 전역적으로 평가됩니다.

범위 지정 프로젝트 및 측정항목 범위에 대한 자세한 내용은 측정항목 범위를 참조하세요. 다중 프로젝트 측정항목 범위 구성에 대한 자세한 내용은 다중 프로젝트의 측정항목 보기를 참조하세요.

Cloud Monitoring의 Managed Service for Prometheus 데이터

Managed Service for Prometheus는 데이터 스토리지 백엔드인 Monarch를 Cloud Monitoring과 공유합니다. Managed Service for Prometheus에서 수집된 데이터에 Cloud Monitoring에서 제공되는 모든 도구를 사용할 수 있습니다. 예를 들어 모니터링을 위한 Google Cloud 콘솔에 설명된 대로 측정항목 탐색기를 사용할 수 있으며 이러한 측정항목을 기반으로 알림을 설정할 수 있습니다. 또한 Grafana 대시보드를 Cloud Monitoring에 가져올 수 있습니다.

Managed Service for Prometheus의 데이터를 포함한 측정항목 데이터로 작업할 때 Cloud Monitoring에서 제공하는 쿼리 도구를 사용할 수 있습니다.

Cloud Monitoring에서 PromQL을 사용하여 쿼리

Prometheus 데이터를 쿼리하는 가장 간단한 방법은 Google Cloud 콘솔에서 Cloud Monitoring 측정항목 탐색기 페이지를 사용하는 것입니다. Prometheus 데이터가 올바르게 수집되는지 확인하려면 다음을 수행합니다.

  1. Google Cloud 콘솔의 탐색 패널에서 Monitoring을 선택한 후 측정항목 탐색기를 선택합니다.

    측정항목 탐색기로 이동

  2. 쿼리 빌더 창의 툴바에서 이름이  MQL 또는  PromQL인 버튼을 선택합니다.

  3. 언어 전환 버튼에 PromQL이 선택되어 있는지 확인합니다. 언어 전환 버튼은 쿼리 형식을 지정할 수 있는 동일한 툴바에 있습니다.

  4. 편집기에 다음 쿼리를 입력한 후 쿼리 실행을 클릭합니다.

    up
    

데이터가 수집되고 있는 경우 다음과 같은 차트가 표시됩니다.

Managed Service for Prometheus up 측정항목의 측정항목 탐색기 차트입니다.

PromQL을 사용해서 Cloud Monitoring 시스템 측정항목을 쿼리하는 방법은 Cloud Monitoring 측정항목용 PromQL을 참조하세요.

측정항목 탐색기와 Cloud Monitoring 차트에서 PromQL을 사용하는 방법에 대한 자세한 내용은 Cloud Monitoring의 PromQL을 참조하세요.

Cloud Monitoring의 다른 쿼리 옵션

Prometheus 데이터를 Cloud Monitoring 시계열로 확인하고 차트 및 대시보드를 만들려면 메뉴 기반 인터페이스 또는 MQL을 사용하면 됩니다. 다음은 측정항목 탐색기의 간단한 쿼리를 보여줍니다.

  1. Google Cloud 콘솔의 탐색 패널에서 Monitoring을 선택한 후 측정항목 탐색기를 선택합니다.

    측정항목 탐색기로 이동

  2. 차트에 표시될 데이터를 지정합니다. 앞에서 설명한 PromQL 버튼 사용 외에도 메뉴 기반의 인터페이스를 사용할 수 있습니다. 쿼리를 생성하려면 다음을 수행합니다.

    1. 쿼리 빌더 창 내에서 "측정항목 선택"을 클릭합니다.

    2. 검색 필드에 "up/"을 입력하여 목록을 필터링한 후 Prometheus 대상, Up, Prometheus/up/gauge를 차례로 선택합니다.

    3. "적용"을 클릭합니다.

이 쿼리의 결과 차트에는 PromQL 예시에 표시된 차트와 동일한 데이터가 표시됩니다.

메뉴 기반 인터페이스를 사용하여 생성된 쿼리는 PromQL 버튼을 선택하여 PromQL로 변환할 수 있습니다. 이러한 변환에서는 히스토그램 함수 또는 기타 일반적이지 않은 연산자가 올바르게 변환되지 않을 수 있습니다.

prometheus_target 리소스

Cloud Monitoring에서는 시계열 데이터가 모니터링되는 리소스 유형에 따라 작성됩니다. Prometheus 측정항목의 경우 모니터링되는 리소스 유형은 prometheus_target입니다. PromQL로 작성되지 않은 Prometheus 측정항목의 모니터링 쿼리는 이 리소스 유형을 지정해야 합니다.

prometheus_target 리소스에는 쿼리된 데이터 필터링 및 조작에 사용할 수 있는 다음 라벨이 있습니다.

  • project_id: 이 리소스와 연결된 Google Cloud 프로젝트의 식별자입니다.
  • location: 데이터가 저장되는 물리적 위치(Google Cloud 리전)입니다. 이 값은 일반적으로 GKE 클러스터 또는 Compute Engine 인스턴스의 리전입니다. 데이터가 AWS 또는 온프레미스 배포에서 수집되는 경우 값이 가장 가까운 Google Cloud 리전일 수 있습니다.
  • cluster: GKE 클러스터 또는 연결된 개념이며, 비어 있을 수 있습니다.
  • namespace: GKE 네임스페이스 또는 연결된 개념이며, 비어 있을 수 있습니다.
  • job: Prometheus 대상의 작업 라벨입니다(알려진 경우). 규칙 평가 결과의 경우 비어 있을 수 있습니다.
  • instance: Prometheus 대상의 인스턴스 라벨입니다(알려진 경우). 규칙 평가 결과의 경우 비어 있을 수 있습니다.

이러한 라벨의 값은 수집 중에 설정됩니다.

다음 단계