VM 인스턴스와 다른 Compute Engine 리소스 간의 관계를 보려면 listReferrers
API 메서드를 사용합니다.
이 API 메서드를 사용하면 Compute Engine이 다음을 설명하는 참조 목록을 반환합니다.
- 소스 리소스: 타겟 리소스를 참조하는 리소스입니다.
- 타겟 리소스: 해당하는 리소스입니다.
- 참조 유형: 두 리소스 간의 관계입니다.
예를 들어 이 API를 사용하면 VM 인스턴스가 속한 인스턴스 그룹의 목록을 간편하게 볼 수 있습니다.
시작하기 전에
- 이 가이드의 API 예시를 사용하려면 API 액세스를 설정합니다.
제한사항
- VM 인스턴스와 인스턴스 그룹(관리형 및 비관리형) 간의 관계만 나열할 수 있습니다.
- API를 사용하여 리퍼러만 나열할 수 있습니다.
단일 리퍼러 나열
리퍼러는 다른 리소스를 참조하는 리소스입니다. VM 인스턴스의 경우 공통 리퍼러는 인스턴스 그룹입니다.
예를 들어 us-central1-a
영역에 example-ig-a1
이라는 VM 인스턴스가 있다고 가정합니다. VM 인스턴스는 아래 다이어그램과 같이 동일한 영역에 있는 example-ig
라는 인스턴스 그룹의 구성원입니다.
이 관계를 보려면 다음 HTTP 요청으로 example-ig-a1
에서 listReferrers
메서드를 호출합니다.
GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a1/referrers
서버는 다음 항목이 포함된 표준 목록 응답을 반환합니다.
"items": [
{
"target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a1,
"referenceType": MEMBER_OF,
"referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig
}
]
이 경우 target
은 example-ig-a1
이며 example-ig instance
그룹인 referrer
의 MEMBER_OF
입니다.
여러 리퍼러 나열
리소스에 리퍼러가 두 개 이상 있는 경우 응답에는 타겟 리소스의 모든 리퍼러 목록이 반환됩니다. 한 인스턴스가 두 인스턴스 그룹에 속하는 경우 응답에는 두 인스턴스 그룹이 모두 포함됩니다.
예를 들어 다음 응답은 example-instance-a2
라는 인스턴스가 두 인스턴스 그룹(example-ig
및 example-ig-2
)에 속함을 나타냅니다.
"items": [
{
"target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-instance-a2,
"referenceType": MEMBER_OF,
"referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig
},
{
"target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-instance-a2,
"referenceType": MEMBER_OF,
"referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig-2
}
]
교차 범위 리퍼러 나열
listReferrers
메서드는 다른 리전 또는 영역과 같은 다른 범위 내에 있는 리퍼러에 대한 정보도 반환합니다. 예를 들어 리전 관리형 인스턴스 그룹(리전 MIG)에 속하는 VM 인스턴스가 있다고 가정합니다.
다음 HTTP 요청으로 이 인스턴스를 타겟팅하는 listReferrers
메서드를 호출합니다.
GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/new-instance-a3/referrers
서버는 다음 항목이 포함된 표준 목록 응답을 반환합니다.
"items": [
{
"target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/new-instance-a3,
"referenceType": MEMBER_OF,
"referrer": https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-central1/instanceGroups/example-rmig
}
]
응답의 리퍼러 목록에는 리전 인스턴스 그룹이 표시됩니다.
모음 내 모든 리소스에 대한 리퍼러 나열
와일드 카드 문자(-
)를 사용하여 특정 영역 내의 모든 VM 인스턴스에 대한 모든 리퍼러의 목록을 요청할 수 있습니다. 다음과 유사한 HTTP 요청을 사용하여 요청을 할 수 있습니다.
GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/-/referrers
서버에서는 영역에 있는 VM 인스턴스 목록과 인스턴스에 대한 참조를 포함하는 응답을 반환합니다. 예를 들면 다음과 같습니다.
"items": [
{
"target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a1,
"referenceType": MEMBER_OF,
"referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig
},
{
"target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a2,
"referenceType": MEMBER_OF,
"referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig
},
{
"target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a2,
"referenceType": MEMBER_OF,
"referrer": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroups/example-ig-2
},
{
"target": https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/new-instance-a3,
"referenceType": MEMBER_OF,
"referrer": https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-central1/instanceGroups/example-rmig
}
]