Si quieres ver las relaciones entre las instancias de VM y otros recursos de Compute Engine, usa el método de la API REST listReferrers
.
Cuando usas REST, Compute Engine devuelve una lista de referencias que describen lo siguiente:
- El recurso de origen: el recurso que apunta al recurso de destino
- El recurso de destino: el recurso en cuestión
- El tipo de referencia: la relación entre los dos recursos
Por ejemplo, puedes usar REST para ver fácilmente una lista de los grupos de instancias a los que pertenece una instancia de VM.
Antes de empezar
-
Si aún no lo has hecho, configura la autenticación.
La autenticación verifica tu identidad para acceder a Trusted Cloud by S3NS servicios y APIs. Para ejecutar código o ejemplos desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:
Para usar las muestras de la API REST de esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la CLI de gcloud.
Instala Google Cloud CLI y, a continuación, inicia sesión en gcloud CLI con tu identidad federada. Después de iniciar sesión, inicializa la CLI de Google Cloud ejecutando el siguiente comando:
gcloud init
Para obtener más información, consulta el artículo Autenticarse para usar REST de la documentación sobre autenticación de Trusted Cloud .
Limitaciones
- Solo puede enumerar las relaciones entre las instancias de VM y los grupos de instancias (tanto gestionados como no gestionados).
- Solo puede enumerar los referentes mediante REST.
Listar una sola referente
Un referente es un recurso que hace referencia a otro recurso. En el caso de las instancias de VM, un referente habitual es un grupo de instancias.
Por ejemplo, supongamos que tienes una instancia de VM llamada example-ig-a1
en la zona us-central1-a
. La instancia de VM es miembro de un grupo de instancias llamado example-ig
en la misma zona, tal como se muestra en el diagrama de abajo:
Para ver esta relación, llama al método listReferrers
en example-ig-a1
con la siguiente solicitud HTTP:
GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/example-ig-a1/referrers
El servidor devuelve una respuesta de lista estándar que contiene los siguientes elementos:
"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
}
]
En este caso, el target
es example-ig-a1
, que es un MEMBER_OF
el referrer
, el grupo example-ig instance
.
Lista de varios referentes
Si un recurso tiene más de un referente, la respuesta devuelve una lista de todos los referentes del recurso de destino. Si una instancia pertenece a dos grupos de instancias, la respuesta contiene ambos grupos.
Por ejemplo, la siguiente respuesta indica que la instancia llamada example-instance-a2
pertenece a dos grupos de instancias, example-ig
y 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
}
]
Listar referentes entre ámbitos
El método listReferrers
también devuelve información sobre los referentes que existen en otros ámbitos, como otras regiones o zonas. Por ejemplo, supongamos que tienes una instancia de VM que pertenece a un grupo de instancias gestionado regional (MIG regional):
Llamas al método listReferrers
orientado a esta instancia con la siguiente solicitud HTTP:
GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/new-instance-a3/referrers
El servidor devuelve una respuesta de lista estándar que contiene los siguientes elementos:
"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
}
]
En la respuesta se muestra el grupo de instancias regional en la lista de referentes.
Mostrar los referentes de todos los recursos de una colección
Si usas el carácter comodín (-
), puedes solicitar una lista de todos los referentes de todas las instancias de VM de una zona específica. La solicitud se puede hacer con una solicitud HTTP similar a la siguiente:
GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/-/referrers
El servidor devuelve una respuesta que contiene una lista de instancias de VM en la zona y referencias a la instancia. Por ejemplo:
"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
}
]
Siguientes pasos
- Consulta más información sobre los grupos de instancias.
- Consulta la lista de zonas y regiones aplicables.