Share via


Microsoft Entra ID와 함께 Prometheus용 Azure Monitor 관리형 서비스를 사용하도록 자체 관리형 Grafana를 구성합니다.

Prometheus용 Azure Monitor 관리형 서비스를 사용하면 Prometheus 호환 모니터링 솔루션을 사용하여 대규모로 메트릭을 수집하고 분석할 수 있습니다. Prometheus 데이터를 분석하고 표시하는 가장 일반적인 방법은 Grafana 대시보드를 사용하는 것입니다. 이 문서에서는 Microsoft Entra ID를 사용하여 자체 호스팅 Grafana에 대한 데이터 원본으로 Prometheus를 구성하는 방법을 설명합니다.

관리되는 시스템 ID로 Grafana를 사용하는 방법에 대한 자세한 내용은 관리되는 시스템 ID를 사용하여 Grafana 구성을 참조 하세요.

Microsoft Entra 인증

Microsoft Entra 인증을 설정하려면 다음 단계를 수행합니다.

  1. Microsoft Entra ID를 사용하여 앱을 등록합니다.
  2. Azure Monitor 작업 영역에 앱에 대한 액세스 권한을 부여합니다.
  3. 앱의 자격 증명을 사용하여 자체 호스팅 Grafana를 구성합니다.

Microsoft Entra ID를 사용하여 앱 등록

  1. 앱을 등록하려면 Azure Portal에서 Active Directory 개요 페이지를 엽니다.

  2. 새 등록을 선택합니다.

  3. 애플리케이션 등록 페이지에서 애플리케이션의 이름을 입력합니다.

  4. 등록을 선택합니다.

  5. 애플리케이션(클라이언트) ID디렉터리(테넌트) ID를 확인합니다. Grafana 인증 설정에서 사용됩니다. A screenshot showing the App registration overview page.

  6. 앱의 개요 페이지에서 인증서 및 비밀을 선택합니다.

  7. 클라이언트 비밀 탭에서 새 클라이언트 비밀을 선택합니다.

  8. 설명을 입력합니다.

  9. 드롭다운에서 만료 기간을 선택하고 추가를 선택합니다.

    참고 항목

    비밀을 갱신하고 비밀이 만료되기 전에 Grafana 데이터 원본 설정을 업데이트하는 프로세스를 만듭니다. 비밀이 만료되면 Grafana는 Azure Monitor 작업 영역에서 데이터를 쿼리하는 기능을 잃게 됩니다.

    A screenshot showing the Add client secret page.

  10. 클라이언트 비밀 을 복사하여 저장합니다.

    참고 항목

    클라이언트 비밀 값은 만든 직후에만 볼 수 있습니다. 페이지를 나가기 전에 비밀을 저장해야 합니다.

    A screenshot showing the client secret page with generated secret value.

앱이 작업 영역에 액세스하도록 허용

앱이 Azure Monitor 작업 영역에서 데이터를 쿼리하도록 허용합니다.

  1. Azure Portal에서 Azure Monitor 작업 영역을 엽니다.

  2. 개요 페이지에서 쿼리 엔드포인트를 기록해 둡다. 쿼리 엔드포인트는 Grafana 데이터 원본을 설정할 때 사용됩니다.

  3. 액세스 제어(IAM) 를 선택합니다. A screenshot showing the Azure Monitor workspace overview page

  4. 추가를 선택한 다음, IAM(액세스 제어) 페이지에서 역할 할당을 추가합니다.

  5. 역할 할당 추가 페이지에서 모니터링을 검색합니다.

  6. 모니터링 데이터 판독기를 선택한 다음 멤버 탭을 선택합니다.

    A screenshot showing the Add role assignment page

  7. 멤버 선택을 선택합니다.

  8. Microsoft Entra ID 섹션에 앱 등록 섹션에서 등록한 앱을 검색하여 선택합니다.

  9. 선택을 클릭합니다.

  10. 검토 + 할당을 선택합니다. A screenshot showing the Add role assignment, select members page.

앱 등록을 만들고 Azure Monitor 작업 영역에서 데이터를 쿼리하기 위한 액세스 권한을 할당했습니다. 다음 단계는 Grafana에서 Prometheus 데이터 원본을 설정하는 것입니다.

자체 관리형 Grafana를 설정하여 Azure 인증을 켭니다.

Grafana는 이제 Prometheus 데이터 원본을 사용하여 Azure Monitor 관리되는 Prometheus에 대한 연결을 지원합니다. 자체 호스팅 Grafana 인스턴스의 경우 Grafana에서 Azure 인증 옵션을 사용하려면 구성 변경이 필요합니다. 자체 호스팅 Grafana 또는 Azure에서 관리되지 않는 다른 Grafana 인스턴스의 경우 다음을 변경합니다.

  1. Grafana 구성 파일을 찾습니다. 자세한 내용은 Grafana 구성 설명서를 참조하세요.

  2. Grafana 버전을 ID로 지정합니다.

  3. Grafana 구성 파일을 업데이트합니다.

    Grafana 9.0의 경우:

        [feature_toggles] 
        # Azure authentication for Prometheus (<=9.0) 
        prometheus_azure_auth = true 
    

    Grafana 9.1 이상 버전의 경우:

        [auth] 
        # Azure authentication for Prometheus (>=9.1) 
        azure_auth_enabled = true 
    

Azure Managed Grafana의 경우 구성을 변경할 필요가 없습니다. 관리 ID도 기본적으로 사용하도록 설정됩니다.

Grafana에서 Prometheus 데이터 원본 구성

  1. Grafana 인스턴스에 로그인합니다.

  2. 구성 페이지에서 데이터 원본 탭을 선택합니다.

  3. 데이터 원본 추가를 선택합니다.

  4. Prometheus를 선택합니다.

  5. Prometheus 데이터 원본의 이름을 입력합니다.

  6. URL 필드에 Azure Monitor 작업 영역 개요 페이지에서 쿼리 엔드포인트 값을 붙여넣습니다.

  7. 인증에서 Azure 인증켭니다.

  8. Azure 인증 섹션의 인증 드롭다운에서 앱 등록선택합니다.

  9. Microsoft Entra ID 섹션에 앱 등록 섹션에서 Direct(테넌트) ID, 애플리케이션(클라이언트) ID클라이언트 비밀을 입력합니다.

  10. 저장 및 테스트 선택 A screenshot showing the Grafana settings page for adding a data source.

자주 묻는 질문

이 섹션에서는 일반적인 질문에 대한 답변을 제공합니다.

메트릭 전체 또는 일부가 누락되었습니다. 문제를 해결하려면 어떻게 해야 하나요?

여기에서 관리 에이전트의 Prometheus 메트릭 수집에 대한 문제 해결 가이드를 사용할 수 있습니다.

이름은 같지만 대/소문자가 다른 두 개의 레이블이 있는 메트릭이 누락되는 이유는 무엇인가요?

Azure 관리되는 Prometheus는 대/소문자를 구분하지 않는 시스템입니다. 메트릭 이름, 레이블 이름 또는 레이블 값과 같은 문자열은 문자열의 경우에만 다른 시계열과 다른 경우 동일한 시계열로 처리합니다. 자세한 내용은 Prometheus 메트릭 개요를 참조하세요.

메트릭 데이터에 약간의 차이가 있습니다. 이러한 현상이 발생하는 이유는 무엇인가요?

노드 업데이트 중에 클러스터 수준 수집기에서 수집된 메트릭에 대한 메트릭 데이터의 간격이 1분에서 2분으로 표시될 수 있습니다. 이 간격은 데이터가 실행되는 노드가 일반 업데이트 프로세스의 일부로 업데이트되기 때문에 발생합니다. 이 업데이트 프로세스는 kube-state-metrics 및 지정된 사용자 지정 애플리케이션 대상과 같은 클러스터 전체 대상에 영향을 줍니다. 이 문제는 클러스터가 수동으로 또는 자동 업데이트를 통해 업데이트될 때 발생합니다. 이 동작은 예상되는 것이며 업데이트될 때 실행되는 노드로 인해 발생합니다. 이 동작은 권장되는 경고 규칙에 영향을 주지 않습니다.

다음 단계