En este documento, se explica cómo ver la topología de tus instancias de Compute Engine en ejecución. Después de crear y, luego, iniciar instancias de procesamiento, puedes ver su ubicación física en una zona para comprender la topología de tu clúster. Esta información te ayuda a hacer lo siguiente:
Organiza los trabajos: Puedes ajustar el diseño de tu carga de trabajo para, por ejemplo, colocar las tareas que requieren mucha comunicación en las instancias de procesamiento más cercanas físicamente.
Soluciona problemas: Puedes investigar problemas de latencia o rendimiento de la red si instancias de procesamiento específicas están ubicadas inesperadamente lejos unas de otras.
Para verificar qué instancias de procesamiento se ejecutan en tu proyecto, consulta una lista de las instancias de procesamiento.
Limitaciones
Solo puedes ver la topología de las instancias de procesamiento que cumplen con uno o más de los siguientes requisitos:
Las instancias de procesamiento usan uno de los siguientes tipos de máquinas:
A4X Max
A4X
A4
A3 Ultra
A3 Mega
A3 High con 8 GPUs
H4D
Las instancias de procesamiento especifican una política de posición compacta.
Las instancias de procesamiento forman parte de un grupo de instancias administrado (MIG) que especifica una política de carga de trabajo con un tipo de alta capacidad de procesamiento (
HIGH_THROUGHPUT).
Información sobre la topología de las instancias de procesamiento
Cada instancia de procesamiento se ejecuta en un servidor físico, un host, que se encuentra en un bloque de servidores. Cada bloque pertenece a un clúster, que reside en un centro de datos dentro de unaCloud de Confiance zona. Cuando ves instancias de procesamiento que cumplen con requisitos específicos, puedes comprender su topología en relación con otras instancias de procesamiento que cumplen con los mismos requisitos.
Específicamente, puedes comprender la ubicación física de tus instancias de procesamiento verificando los siguientes subcampos en el campo physicalHostTopology de cada instancia de procesamiento:
Clúster (
cluster): Es el nombre global del clúster en el que existe tu instancia de procesamiento. Un clúster es una agrupación lógica de alto nivel de varios hosts, que puede abarcar varios bloques y que funcionan en conjunto como un solo grupo de recursos.Bloque (
block): Es el ID específico de la organización del bloque en el que existe tu instancia de procesamiento. Un bloque es una colección de varios hosts agrupados. Las instancias de procesamiento del mismo bloque experimentan una latencia de red baja.Sub-block (
subBlock): Es el ID específico de la organización del subbloque en el que existe tu instancia de procesamiento. Un subbloque es una subdivisión física dentro de un bloque que agrupa hosts dentro de un solo gabinete físico. Las instancias de procesamiento en el mismo subbloque experimentan una latencia de red más baja que las instancias de procesamiento en el mismo bloque.Host (
host): Es el ID específico de la organización del host en el que existe tu instancia de procesamiento. Un host es un solo servidor físico en el que se ejecutan tus instancias de procesamiento. Cada host tiene su propia CPU virtual, memoria, almacenamiento y tarjeta de interfaz de red (NIC) físicos. Las instancias de procesamiento en hosts adyacentes experimentan la menor latencia de red posible.
Cuantos más subcampos compartan dos instancias de procesamiento en ejecución, más cerca estarán físicamente entre sí. Esta información te ayuda a optimizar tus cargas de trabajo organizando tus trabajos para que puedas minimizar la latencia de la red o diseñando sistemas más resilientes.
Antes de comenzar
-
Si aún no lo hiciste, configura la autenticación.
La autenticación verifica tu identidad para acceder a los servicios y las APIs de Cloud de Confiance by S3NS . Para ejecutar código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:
Selecciona la pestaña que corresponda a la forma en que planeas usar las muestras de esta página:
Console
Cuando usas la consola de Cloud de Confiance para acceder a los servicios y las APIs de Cloud de Confiance by S3NS , no necesitas configurar la autenticación.
gcloud
-
Instala Google Cloud CLI y, luego, accede a gcloud CLI con tu identidad federada. Después de acceder, inicializa Google Cloud CLI con el siguiente comando:
gcloud init
-
- Configura una región y una zona predeterminadas.
REST
Para usar las muestras de la API de REST incluidas en esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la gcloud CLI.
Instala Google Cloud CLI y, luego, accede a gcloud CLI con tu identidad federada.
Para obtener más información, consulta Autentícate para usar REST en la documentación de autenticación de Cloud de Confiance .
Roles obligatorios
Para obtener los permisos que necesitas para verificar la topología de tus instancias de procesamiento, pídele a tu administrador que te otorgue el rol de IAM de Visualizador de Compute (roles/compute.viewer) en el proyecto.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para verificar la topología de tus instancias de procesamiento. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para verificar la topología de tus instancias de procesamiento:
-
Para ver los detalles de una instancia de procesamiento:
compute.instances.geten el proyecto -
Para ver una lista de instancias de procesamiento:
compute.instances.listen el proyecto
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Verifica la topología de la instancia de procesamiento
Para verificar la topología de tus instancias de procesamiento en ejecución, usa uno de los siguientes métodos:
Verifica la topología de la instancia de procesamiento con la consola de Cloud de Confiance , gcloud CLI o REST
Para ver la topología de varias instancias de procesamiento de forma simultánea, usa la API de REST. De lo contrario, selecciona una de las siguientes opciones:
Console
En la consola de Cloud de Confiance , ve a la página Instancias de VM.
En la columna Nombre, haz clic en el nombre de la instancia de procesamiento de la que deseas ver los detalles. Aparecerá una página con los detalles de la instancia y se seleccionará la pestaña Detalles.
En la sección Información básica, verifica el valor del campo Host físico.
gcloud
Para ver la topología de una instancia de procesamiento en ejecución, usa el comando gcloud compute instances describe con la marca --flatten=resourceStatus.physicalHostTopology:
gcloud compute instances describe INSTANCE_NAME \
--flatten=resourceStatus.physicalHostTopology \
--zone=ZONE
Reemplaza lo siguiente:
INSTANCE_NAME: Es el nombre de la instancia de procesamiento.ZONE: Es la zona en la que existe la instancia de procesamiento.
El resultado es similar a lo siguiente:
---
block: 3e3056e23cf91a5cb4a8621b6a52c100
cluster: europe-west1-cluster-jfhb
host: 1215168a4ecdfb434fd4d28056589059
subBlock: 0fc09525cbd5abd734342893ca1c083f
REST
Para ver la topología de tus instancias de procesamiento en ejecución, realiza una de las siguientes solicitudes GET. Cuando realices una solicitud, debes incluir el parámetro de búsqueda fields y especificar que solo se muestren los campos name, machineType y physicalHostTopology de una instancia de procesamiento. También debes incluir el parámetro de consulta filter y especificar que solo se listen las instancias de procesamiento en ejecución.
Para ver una lista de tus instancias en todas las zonas, usa el método
instances.aggregatedList:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/instances?fields=items.name,items.machineType,items.resourceStatus.physicalHostTopology&filter=status=RUNNINGPara ver una lista de tus instancias en una zona específica, usa el método
instances.list.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances?fields=items.name,items.machineType,items.resourceStatus.physicalHostTopology&filter=status=RUNNING
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto en el que existen las instancias de procesamiento.ZONE: Es la zona en la que existen las instancias de procesamiento.
El resultado es similar al siguiente. En el siguiente ejemplo, las instancias de procesamiento vm-01 y vm-02 se encuentran en el mismo bloque.
{
"items": [
{
"name": "vm-01",
"machineType": "https://www.googleapis.com/compute/v1/projects/example-project/zones/europe-west1-b/machineTypes/a3-ultragpu-8g",
"resourceStatus": {
"physicalHostTopology": {
"block": "3e3056e23cf91a5cb4a8621b6a52c100",
"cluster": "europe-west1-cluster-jfhb",
"host": "1215168a4ecdfb434fd4d28056589059",
"subBlock": "0fc09525cbd5abd734342893ca1c083f"
}
}
},
{
"name": "vm-02",
"machineType": "https://www.googleapis.com/compute/v1/projects/example-project/zones/europe-west1-b/machineTypes/a3-ultragpu-8g",
"resourceStatus": {
"physicalHostTopology": {
"block": "3e3056e23cf91a5cb4a8621b6a52c100",
"cluster": "europe-west1-cluster-jfhb",
"host": "2326279b5ecdfc545fd5e39167698168",
"subBlock": "1fc18636cbd4abd623553784ca2c174e"
}
}
},
...
]
}
Si deseas definir mejor tu lista de instancias de procesamiento, edita la expresión de filtro en el parámetro de consulta filter.
Verifica la topología de la instancia de procesamiento consultando la clave de metadatos
Para ver la topología de una instancia de procesamiento en ejecución consultando la clave de metadatos physical_host_topology, selecciona una de las siguientes opciones:
Instancias de Linux
Conéctate a tu instancia de Linux.
Consulta la clave de metadatos
physical_host_topologyconcurl:user@myinst:~$ curl -s -H "Metadata-Flavor: Google" http://metadata.google.internal/computeMetadata/v1/instance/attributes/physical_host_topologyEl resultado es similar a lo siguiente:
{ "block": "3e3056e23cf91a5cb4a8621b6a52c100", "cluster": "europe-west1-cluster-jfhb", "host": "2326279b5ecdfc545fd5e39167698168", "subBlock": "1fc18636cbd4abd623553784ca2c174e" }
Instancias de Windows
Conéctate a tu instancia de Windows.
Consulta la clave de metadatos
physical_host_topologycon el comandoInvoke-RestMethod:PS C:\> $value = (Invoke-RestMethod ` -Headers @{'Metadata-Flavor' = 'Google'} ` -Uri "http://metadata.google.internal/computeMetadata/v1/instance/attributes/physical_host_topology") $valueEl resultado es similar a lo siguiente:
{ "block": "3e3056e23cf91a5cb4a8621b6a52c100", "cluster": "europe-west1-cluster-jfhb", "host": "2326279b5ecdfc545fd5e39167698168", "subBlock": "1fc18636cbd4abd623553784ca2c174e" }
¿Qué sigue?
Obtén más información sobre los eventos del host en una instancia de procesamiento.
Obtén más información para supervisar instancias de procesamiento.