Depois de criar um cluster H4D em blocos de capacidade reservados, é possível conferir a disposição física das VMs que compõem o cluster. Entender a disposição das VMs permite:
- Ajustar o design do aplicativo ou da carga de trabalho para minimizar ainda mais a latência de rede, especialmente para cargas de trabalho que usam o Cloud RDMA.
- Resolver problemas de latência de rede ou desempenho de VMs que se comunicam com frequência.
Antes de começar
Verifique se você tem as permissões necessárias para conferir as informações de topologia da VM.
Funções exigidas
Para receber as permissões necessárias para conferir a topologia das VMs, peça ao administrador para conceder a você o papel do IAM de Administrador da instância do Compute (v1) no projeto. Para mais informações sobre como conceder papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esse papel predefinido contém todas as permissões necessárias para conferir a topologia das VMs. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
As permissões abaixo são necessárias para conferir a topologia das VMs:
- Para ver os detalhes de uma reserva:
compute.instances.getno projeto - Para ver uma lista de VMs:
compute.instances.listno projeto
Entender a topologia das VMs
Ao conferir os detalhes de uma VM em execução, é possível recuperar informações sobre
a localização física dela em um cluster verificando o campo Host físico
(para o Google Cloud console) ou o campo physicalHostTopology (para a
Google Cloud CLI, a API Compute Engine) ou consultando a chave de metadados.
Esses campos contêm os seguintes subcampos:
cluster: o nome global do cluster.block: o ID específico da organização do bloco reservado em que a VM está localizada.sub-block: o ID específico da organização do subbloco em que a VM está localizada.host: o ID específico da organização do host em que a VM é executada.
Para definições desses termos, consulte Terminologia de cluster.
Para entender a proximidade das VMs, compare os valores dos campos Host físico ou physicalHostTopology entre as VMs. Quanto mais subcampos as VMs compartilharem, mais próximas elas estarão fisicamente.
Também é possível conferir a topologia de uma reserva em que as VMs são criadas.
Os campos physicalHostTopology de uma reserva e de uma VM mostram os mesmos campos block e cluster. Ao conferir um bloco reservado específico, é possível conferir o nome e o subbloco de todas as VMs implantadas no bloco. Para mais
informações sobre a topologia de uma reserva, consulte Conferir a topologia de uma reserva.
Conferir a topologia das VMs
Para conferir a localização física de várias VMs em execução, selecione uma das seguintes opções:
Console
No console do Google Cloud , acesse a página Instâncias de VM.
Na coluna Nome, clique no nome da VM para conferir os detalhes. Uma página com os detalhes da VM será exibida. A guia Detalhes é selecionada por padrão.
Na seção Informações básicas, confira o valor do campo Host físico.
Google Cloud CLI
Para conferir a localização física de uma VM em execução, use o gcloud compute instances describe
comando com o flatten=resourceStatus.physicalHostTopology.
Substitua:
VM_NAME: o nome da VM.ZONE: a zona em que a VM existe.
O resultado será assim:
---
cluster: europe-west1-cluster-jfhb
block: 3e3056e23cf91a5cb4a8621b6a52c100
subBlock: 0fc09525cbd5abd734342893ca1c083f
host: 1215168a4ecdfb434fd4d28056589059
REST
Para conferir a localização física das VMs em execução, faça uma das seguintes solicitações GET. Ao fazer uma solicitação, inclua o parâmetro de consulta fields e especifique para mostrar apenas os campos name, machineType e physicalHostTopology de uma VM. Também é necessário incluir o parâmetro de consulta filter e especificar para listar apenas as VMs em execução.
- Para conferir uma lista das VMs em todas as zonas:
instances.aggregatedListmétodo.
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/instances?fields=items.name,items.machineType,items.resourceStatus.physicalHostTopology&filter=status=RUNNING
- Para conferir uma lista das VMs em uma zona específica:
instances.listmétodo.
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances?fields=items.name,items.machineType,items.resourceStatus.physicalHostTopology&filter=status=RUNNING
Substitua o seguinte: * PROJECT_ID: o ID do projeto em que as VMs existem.
* ZONE: a zona em que as VMs existem.
O resultado será assim:
{
"items": [
{
"name": "vm-01",
"machineType": "https://www.googleapis.com/compute/v1/projects/example-project/zones/europe-west4-b/machineTypes/h4d-highmem-192-lssd",
"resourceStatus": {
"physicalHostTopology": {
"cluster": "europe-west4-cluster-jfhb",
"block": "3e3056e23cf91a5cb4a8621b6a52c100",
"subBlock": "0fc09525cbd5abd734342893ca1c083f",
"host": "1215168a4ecdfb434fd4d28056589059"
}
}
},
{
"name": "vm-02",
"machineType": "https://www.googleapis.com/compute/v1/projects/example-project/zones/europe-west1-b/machineTypes/h4d-highmem-192-lssd",
"resourceStatus": {
"physicalHostTopology": {
"cluster": "europe-west4-cluster-jfhb",
"block": "3e3056e23cf91a5cb4a8621b6a52c100",
"subBlock": "1fc18636cbd4abd623553784ca2c174e",
"host": "2326279b5ecdfc545fd5e39167698168"
}
}
},
...
]
}
Se você quiser refinar a lista de VMs, edite a expressão de filtro em
o filter
parâmetro de consulta.
Conferir a topologia das VMs consultando a chave de metadados
Para conferir a localização física de uma VM em execução consultando a chave de metadados physical_host_topology, selecione uma das seguintes opções:
VMs do Linux
- Conecte-se à VM do Linux.
- Na VM do Linux, crie uma consulta usando a ferramenta curl. Para consultar a chave de metadados
physical_host_topologynas VMs do Linux, execute o seguinte comando:
curl -s -H "Metadata-Flavor: Google" http://metadata.google.internal/computeMetadata/v1/instance/attributes/physical_host_topology
O resultado será assim:
{
"cluster": "europe-west4-cluster-jfhb",
"block": "3e3056e23cf91a5cb4a8621b6a52c100",
"subBlock": "1fc18636cbd4abd623553784ca2c174e",
"host": "2326279b5ecdfc545fd5e39167698168"
}
VM do Windows
- Conecte-se à VM do Windows.
- Na VM do Windows, crie uma consulta usando o Invoke-RestMethod.
Para consultar a chave de metadados
physical_host_topologynas VMs do Windows, execute o seguinte comando:
$value = (Invoke-RestMethod `
-Headers @{'Metadata-Flavor' = 'Google'} `
-Uri "http://metadata.google.internal/computeMetadata/v1/instance/attributes/physical_host_topology")
$value
O resultado será assim:
{
"cluster": "europe-west4-cluster-jfhb",
"block": "3e3056e23cf91a5cb4a8621b6a52c100",
"subBlock": "1fc18636cbd4abd623553784ca2c174e",
"host": "2326279b5ecdfc545fd5e39167698168"
}