Azure Resource Graph란?

Azure Resource Graph는 환경을 효과적으로 관리할 수 있도록 지정된 구독 세트에서 대규모로 쿼리를 수행하는 기능과 함께 효율적이고 성능이 뛰어난 리소스 탐색 기능을 제공하여 Azure Resource Management를 확장하도록 디자인된 Azure 서비스입니다. 이러한 쿼리는 다음 기능을 제공합니다.

  • 리소스 속성별로 복합 필터링, 그룹화 및 정렬을 사용하여 리소스를 쿼리합니다.
  • 거버넌스 요구 사항에 따라 반복적으로 리소스를 탐색합니다.
  • 광범위한 클라우드 환경에서 정책 적용이 미치는 영향을 평가합니다.
  • 리소스 속성에 대한 쿼리 변경 사항

이 문서에서는 각 기능에 대해 자세히 설명합니다.

참고 항목

Azure Resource Graph는 Azure Portal의 검색 창, 새로운 찾아보기 모든 리소스 환경 및 Azure Policy의 변경 내용visual diff에서 사용됩니다. 이 기능은 고객이 대규모 환경을 관리할 수 있도록 디자인되었습니다.

참고 항목

이 서비스는 서비스 공급자가 자체 테넌트에 로그인하여 고객이 위임한 구독과 리소스 그룹을 관리할 수 있도록 하는 Azure Lighthouse를 지원합니다.

Resource Graph가 Azure Resource Manager를 보완하는 방법

Azure Resource Manager는 현재 다음과 같은 기본 리소스 필드에 대한 쿼리를 지원합니다.

  • 리소스 이름
  • ID
  • Type
  • 리소스 그룹
  • 구독
  • 위치

또한 Azure Resource Manager는 한 번에 하나의 리소스에 대한 세부 속성을 위해 개별 리소스 공급 기업을 호출하는 기능을 제공합니다.

Azure Resource Graph를 사용하면 각 리소스 공급자를 별도로 호출하지 않고도 리소스 공급자가 반환하는 이러한 속성에 액세스할 수 있습니다. 지원되는 리소스 종류의 목록은 테이블 및 리소스 종류 참조를 검토하세요. 지원되는 리소스 종류를 확인하는 다른 방법은 Azure Graph Explorer Schema 브라우저를 사용하는 것입니다.

Azure Resource Graph를 통해 다음을 수행할 수 있습니다.

  • 각 리소스 공급자를 별도로 호출하지 않고 리소스 공급자가 반환하는 속성에 액세스합니다.
  • 지난 14일간의 리소스 구성 변경 사항을 보고 변경된 속성 및 시기를 확인합니다.

참고 항목

미리 보기 기능으로, 일부 type 개체에는 사용 가능한 추가 비Resource Manager 속성이 있습니다. 자세한 내용은 확장 속성을 참조하세요.

Resource Graph가 최신 상태를 유지하는 방식

Azure 리소스가 업데이트되면 Azure Resource Manager는 Azure Resource Graph에 변경 내용을 알립니다. 그런 다음, Resource Graph는 데이터베이스를 업데이트합니다. Resource Graph는 또한 일반 전체 검색을 수행합니다. 이 검사는 놓친 알림이 있거나 Azure Resource Manager 외부에서 리소스가 업데이트될 때 Azure Resource Graph 데이터가 최신 상태인지 확인합니다.

참고 항목

Resource Graph는 각 리소스 공급자의 미리 보기가 아닌 최신 API(애플리케이션 프로그래밍 인터페이스)에 GET을 사용하여 속성 및 값을 수집합니다. 따라서 필요한 속성을 사용하지 못할 수 있습니다. 경우에 따라 사용되는 API 버전이 재정의되어 결과에 더 최신 속성 또는 널리 사용되는 속성이 제공되었습니다. 사용자 환경의 전체 목록은 각 리소스 유형에 대한 API 버전 표시 샘플을 참조하세요.

쿼리 언어

지금까지 Azure Resource Graph에 대해 알아보았으므로 이제 쿼리 생성 방법을 자세히 살펴보겠습니다.

Azure Resource Graph의 쿼리 언어는 Azure Data Explorer의 KQL(Kusto 쿼리 언어)에 기반을 두고 있다는 것을 이해하는 것이 중요합니다.

먼저 Azure Resource Graph에서 사용할 수 있는 작업 및 함수에 대한 자세한 내용은 Resource Graph 쿼리 언어를 참조하세요. 리소스를 찾아보려면 리소스 탐색을 참조하세요.

Azure Resource Graph의 권한

Resource Graph를 사용하려면 Azure RBAC(Azure 역할 기반 액세스 제어)에 적절한 권한이 있어야 하는데, 쿼리하려는 리소스에 대해 적어도 read 액세스 권한은 가져야 합니다. Azure 개체 또는 개체 그룹에 대해 최소 read 권한이 없는 경우에는 결과가 반환되지 않습니다.

참고 항목

Resource Graph는 로그인하는 동안 보안 주체에 제공되는 구독을 사용합니다. 활성 세션 중에 추가된 새 구독의 리소스를 보려면 보안 주체가 컨텍스트를 새로 고쳐야 합니다. 이 작업은 로그아웃했다가 다시 로그인하면 자동으로 수행됩니다.

Azure CLI 및 Azure PowerShell에서는 사용자가 액세스할 수 있는 구독을 사용합니다. REST API를 사용하는 경우 사용자가 구독 목록을 제공합니다. 사용자가 목록에 있는 구독에 액세스할 수 있는 경우 사용자가 액세스할 수 있는 구독에 대한 쿼리 결과가 반환됩니다. 이 동작은 리소스 그룹 - 목록을 호출하는 경우와 동일합니다. 즉, 결과가 부분적일 수 있음을 표시하지 않고 액세스할 수 있는 리소스 그룹을 가져오기 때문입니다. 사용자에게 적절한 권한이 있는 구독 목록에서 구독이 없는 경우 응답은 403(사용할 수 없음)입니다.

참고 항목

미리 보기 REST API 버전 2020-04-01-preview에서는 구독 목록이 생략될 수 있습니다. subscriptionsmanagementGroupId 속성이 요청에서 둘 다 정의되지 않은 경우 범위는 테넌트로 설정됩니다. 자세한 내용은 쿼리 범위를 참조하세요.

제한

무료 서비스로서, Resource Graph에 대한 쿼리는 모든 고객에게 최상의 경험과 응답 시간을 제공하도록 제한됩니다. 자주 수행되는 대규모 쿼리에 Resource Graph API를 사용하려는 조직은 Resource Graph 포털 페이지피드백 포털을 사용하세요. 비즈니스 사례를 제공하고, 연락을 받을 수 있도록 피드백과 관련하여 Microsoft에서 이메일을 보낼 수 있습니다 확인란을 선택하세요.

Resource Graph는 사용자 수준에서 쿼리를 제한합니다. 서비스 응답은 다음 HTTP 헤더를 포함합니다.

  • x-ms-user-quota-remaining(int): 사용자에 대해 남아 있는 리소스 할당량입니다. 이 값은 쿼리 수에 매핑됩니다.
  • x-ms-user-quota-resets-after(hh:mm:ss): 사용자의 할당량 사용이 재설정될 때까지 남은 기간

자세한 내용은 제한된 요청에 대한 지침을 참조하세요.

첫 번째 쿼리 실행

Azure Portal의 일부인 Azure Resource Graph Explorer를 사용하면 Azure Portal에서 직접 Resource Graph 쿼리를 실행할 수 있습니다. 결과를 동적 차트로 고정하여 포털 워크플로에 실시간 동적 정보를 제공합니다. 자세한 내용을 확인하려면 Azure Resource Graph Explorer를 사용한 첫 번째 쿼리로 이동하세요.

또한 Resource Graph는 Azure CLI, Azure PowerShell 및 REST API를 지원합니다. 쿼리는 각 언어에서 동일하게 구조화됩니다. 다음을 사용하여 Resource Graph를 활성화하는 방법을 알아봅니다.

Log Analytics와의 통합 경고

참고 항목

Azure Resource Graph는 Log Analytics와의 통합 경고를 공개 미리 보기로 제공합니다.

Azure Resources Graph 쿼리를 사용하거나 Azure Monitor를 통해 Log Analytics를 Azure Resources Graph 쿼리와 통합하여 경고 규칙을 만들 수 있습니다. 두 방법 모두 Azure 리소스에 대한 경고를 생성하는 데 사용할 수 있습니다. 예를 보려면 빠른 시작: Azure Resource Graph 및 Log Analytics 관련 경고 생성으로 이동합니다.

Power BI 커넥터를 사용하여 쿼리 실행

Azure Resource Graph Power BI 커넥터는 테넌트 수준에서 쿼리를 실행하지만 범위를 구독 또는 관리 그룹으로 변경할 수 있습니다. 쿼리 결과에 1,000개 이상의 레코드가 있는 경우 Power BI 커넥터에는 모든 레코드를 반환하기 위한 선택적 설정이 있습니다. 자세한 내용을 보려면 빠른 시작: Azure Resource Graph Power BI 커넥터를 사용하여 쿼리 실행으로 이동하세요.

다음 단계