멀티 테넌트 모니터링 및 쿼리

이 문서에서는 다양한 팀에 여러 프로젝트 집합에 대한 액세스 권한을 부여하는 방법을 설명합니다. Grafana의 여러 인스턴스 및 여러 데이터 소스 동기화와 함께 측정항목 범위를 사용하여 이러한 종류의 멀티 테넌트 모니터링을 설정할 수 있습니다.

측정항목 범위에 있는 프로젝트 수나 사용하는 Google Cloud 리전 수에 관계없이 측정항목 범위마다 Grafana 인스턴스 하나와 데이터 소스 동기화 하나만 설정해야 합니다.

  • Monarch 쿼리는 project_id 필터가 포함되어 있지 않으면 측정항목 범위 내의 모든 프로젝트로 자동 확장됩니다.

  • location 필터가 포함되어 있지 않으면 쿼리가 모든 Google Marketing Platform 리전 전반에에서 실행됩니다.

멀티 테넌트 모니터링을 수행하기 위해 수집 측의 그 어떤 것도 변경할 필요가 없습니다.

다음 다이어그램에서는 멀티 테넌트 모니터링 구성을 보여줍니다.

관리형 및 자체 배포 컬렉션을 혼합하여 Managed Service for Prometheus를 설정할 수 있습니다.

다이어그램과 같은 구성을 설정하고 사용하려면 다음과 같이 측정항목 범위, Grafana 인스턴스, 데이터 소스 동기화를 설정합니다.

  • 개발팀 A가 프로젝트 1과 2에서 읽고 액세스할 수 있게 하려고 합니다. 이 액세스를 설정하려면 다음을 수행합니다.

    • 프로젝트 1과 프로젝트 2를 scoping_project_A의 측정항목 범위에 배치합니다.

    • 프로젝트 1에 데이터 소스 동기화를 배치하고 scoping_project_A를 사용하도록 구성합니다. 동기화의 서비스 계정에 scoping_project_A에 대한 Monitoring 뷰어 권한을 부여합니다.

    사용자가 이 데이터 소스 동기화와 연결된 Grafana 인스턴스에서 쿼리를 실행하면 Monarch에서 scoping_project_A를 구성된 모니터링 프로젝트로 확장하고 모든 Google Cloud 리전에서 프로젝트 1과 프로젝트 2 모두의 결과를 반환합니다. Grafana 인스턴스와 데이터 소스 동기화는 프로젝트 1 내에 상주하므로 프로젝트 1에 대한 액세스 권한이 있는 사용자만 scoping_project_A를 쿼리할 수 있습니다.

  • 개발팀 B가 프로젝트 3과 4에서 읽고 액세스할 수 있게 하려고 합니다. 이 액세스를 설정하려면 다음을 수행합니다.

    • 프로젝트 3과 프로젝트 4를 scoping_project_B의 측정항목 범위에 배치합니다.

    • 프로젝트 3에 데이터 소스 동기화를 배치하고 scoping_project_B를 사용하도록 구성합니다. 동기화의 서비스 계정에 scoping_project_B에 대한 Monitoring 뷰어 권한을 부여합니다.

    사용자가 이 데이터 소스 동기화와 연결된 Grafana 인스턴스에서 쿼리를 실행하면 Monarch에서 scoping_project_B를 구성된 모니터링 프로젝트로 확장하고 모든 Google Cloud 리전에서 프로젝트 3과 프로젝트 4 모두의 결과를 반환합니다. Grafana 인스턴스와 데이터 소스 동기화는 프로젝트 3 내에 상주하므로 프로젝트 3에 대한 액세스 권한이 있는 사용자만 scoping_project_B를 쿼리할 수 있습니다.

  • SRE팀이 프로젝트 1, 2, 3, 4, 5에서 읽고 액세스할 수 있게 하려고 합니다. 이 액세스를 설정하려면 다음을 수행합니다.

    • 모든 프로젝트를 scoping_project_C의 측정항목 범위에 배치합니다.

    • 프로젝트 5에 데이터 소스 동기화를 배치하고 scoping_project_C를 사용하도록 구성합니다. 동기화의 서비스 계정에 scoping_project_C에 대한 Monitoring 뷰어 권한을 부여합니다.

    사용자가 이 데이터 소스 동기화와 연결된 Grafana 인스턴스에서 쿼리를 실행하면 Monarch에서 scoping_project_C를 구성된 모니터링 프로젝트로 확장하고 모든 Google Cloud 리전에서 프로젝트 1, 2, 3, 4, 5의 결과를 반환합니다. Grafana 인스턴스와 데이터 소스 동기화는 프로젝트 5 내에 상주하므로 프로젝트 5에 대한 액세스 권한이 있는 사용자만 scoping_project_C를 쿼리할 수 있습니다.