Este documento descreve como ativar a unidade de monitoramento de desempenho (PMU) em instâncias de máquina virtual (VM) novas ou atuais.
Depois de ativar a PMU em uma VM C4 e conectar-se à VM, você pode executar e instalar um software de monitoramento de desempenho nela para analisar e otimizar o desempenho do software que ela executa. Isso é útil ao executar cargas de trabalho sensíveis ao desempenho, como cargas de trabalho de computação de alto desempenho (HPC) ou de machine learning (ML).
Antes de começar
-
Configure a autenticação, caso ainda não tenha feito isso.
A autenticação é
o processo de verificação da sua identidade para acesso a serviços e APIs do Google Cloud.
Para executar códigos ou amostras de um ambiente de desenvolvimento local, autentique-se no
Compute Engine da seguinte maneira.
Select the tab for how you plan to use the samples on this page:
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
Para criar VMs:
compute.instances.create
no projeto- Para usar uma imagem personalizada para criar a VM:
compute.images.useReadOnly
na imagem - Usar um snapshot para criar a VM:
compute.snapshots.useReadOnly
no snapshot - Usar um modelo de instância para criar a VM:
compute.instanceTemplates.useReadOnly
no modelo de instância - Atribuir uma rede legada à VM:
compute.networks.use
no projeto - Especificar um endereço IP estático para a VM:
compute.addresses.use
no projeto - Atribuir um endereço IP externo à VM ao usar uma rede legada:
compute.networks.useExternalIp
no projeto - Especificar uma sub-rede para a VM:
compute.subnetworks.use
no projeto ou na sub-rede escolhida - Atribuir um endereço IP externo à VM ao usar uma rede VPC:
compute.subnetworks.useExternalIp
no projeto ou na sub-rede escolhida - Definir os metadados da instância de VM para a VM:
compute.instances.setMetadata
no projeto - Definir tags para a VM:
compute.instances.setTags
na VM - Definir rótulos para a VM:
compute.instances.setLabels
na VM - Definir uma conta de serviço para a VM usar:
compute.instances.setServiceAccount
na VM - Criar um disco para a VM:
compute.disks.create
no projeto - Anexar um disco atual no modo somente leitura ou de leitura e gravação:
compute.disks.use
no disco - Anexar um disco atual no modo somente leitura:
compute.disks.useReadOnly
no disco
-
Para criar um modelo de instância:
compute.instanceTemplates.create
no projeto -
Para atualizar uma VM:
compute.instances.update
na VM - Ativar a PMU em uma VM atual
- Ativar a PMU ao criar uma VM
- Ativar a PMU ao criar VMs em massa
- Ativar a PMU ao criar um modelo de instância
Para verificar o tipo de máquina e a plataforma de CPU da VM, confira os detalhes dela.
Se você precisar mudar o tipo de máquina da VM, faça o seguinte:
Para verificar se uma plataforma de CPU compatível está disponível na zona em que a VM está, consulte Regiões e zonas disponíveis.
Mude o tipo de máquina da seguinte maneira:
Para ativar o tipo de PMU aprimorada, especifique um tipo de máquina C4 com 96 ou 192 vCPUs.
Caso contrário, para ativar o tipo de PMU arquitetônica ou padrão, especifique qualquer tipo de máquina C4.
Crie um arquivo YAML vazio.
Para exportar as propriedades de uma VM para o arquivo YAML que você acabou de criar, use o comando
gcloud compute instances export
.gcloud compute instances export VM_NAME \ --destination=YAML_FILE \ --zone=ZONE
Substitua:
VM_NAME
: o nome da VM.YAML_FILE
: o caminho para o arquivo YAML que você criou na etapa anterior.ZONE
: a zona em que a VM está localizada.
No arquivo de configuração YAML, adicione o campo
performanceMonitoringUnit
.advancedMachineFeatures: performanceMonitoringUnit: PMU_TYPE
Substitua
PMU_TYPE
por um dos seguintes valores:Tipo de PMU arquitetônica:
ARCHITECTURAL
Tipo de PMU padrão:
STANDARD
Tipo de PMU aprimorada:
ENHANCED
Para atualizar e reiniciar a VM, use o comando
gcloud compute instances update-from-file
com a flag--most-disruptive-allowed-action
definida comoRESTART
.gcloud compute instances update-from-file VM_NAME \ --most-disruptive-allowed-action=RESTART \ --source=YAML_FILE \ --zone=ZONE
Substitua:
VM_NAME
: o nome da VM.YAML_FILE
: o caminho para o arquivo YAML com os dados de configuração que você modificou na etapa anterior.ZONE
: a zona em que a VM está localizada.
Crie um arquivo JSON vazio.
Para exportar as propriedades de uma VM atual, faça uma solicitação
GET
para o métodoinstances.get
.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
Substitua:
PROJECT_ID
: o ID do projeto em que a VM está localizada.ZONE
: a zona em que a VM está localizada.VM_NAME
: o nome de uma VM existente.
No arquivo JSON vazio que você criou nas etapas anteriores, faça o seguinte:
Insira as propriedades da VM fornecidas na saída da solicitação
GET
.Adicione o campo
performanceMonitoringUnit
.{ "advancedMachineFeatures": { "performanceMonitoringUnit": "PMU_TYPE" }, ... }
Substitua
PMU_TYPE
por um dos seguintes valores:Tipo de PMU arquitetônica:
ARCHITECTURAL
Tipo de PMU padrão:
STANDARD
Tipo de PMU aprimorada:
ENHANCED
Para atualizar e reiniciar a VM, faça uma solicitação
PUT
ao métodoinstances.update
. Na solicitação, faça o seguinte:No URL da solicitação, inclua o parâmetro de consulta
most_disruptive_allowed_action
definido comoRESTART
.Para o corpo da solicitação, use as propriedades da VM fornecidas no arquivo JSON que foi criado e atualizado nas etapas anteriores.
PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME?most_disruptive_allowed_action=RESTART { "advancedMachineFeatures": { "performanceMonitoringUnit": "PMU_TYPE" }, ... }
VM_NAME
: o nome da VM.MACHINE_TYPE
: um tipo de máquina C4. Para ativar o tipo de PMU aprimorada, especifique um tipo de máquina C4 com 96 ou 192 vCPUs. Caso contrário, a criação da VM falhará.PMU_TYPE
: o tipo de PMU a ser ativada na VM. Especifique um dos seguintes valores:Tipo de PMU arquitetônica:
architectural
Tipo de PMU padrão:
standard
Tipo de PMU aprimorada:
enhanced
ZONE
: a zona em que a instância de VM será criada.PROJECT_ID
: o ID do projeto em que a VM será criada.ZONE
: a zona em que a instância de VM será criada.VM_NAME
: o nome da VM.MACHINE_TYPE
: um tipo de máquina C4. Para ativar o tipo de PMU aprimorada, especifique um tipo de máquina C4 com 96 ou 192 vCPUs. Caso contrário, a criação da VM falhará.IMAGE_PROJECT
: o projeto de imagem que contém a imagem, por exemplo,debian-cloud
. Para mais informações sobre os projetos de imagem com suporte, consulte Imagens públicas.IMAGE
: especifique uma destas opções:Uma versão específica da imagem do SO. Por exemplo:
debian-12-bookworm-v20240617
Uma família de imagens, que precisa ser formatada como
family/IMAGE_FAMILY
. Especifica a imagem do SO mais recente e não descontinuada. Por exemplo, se você especificarfamily/debian-12
, a versão mais recente na família de imagens do Debian 12 será usada. Para mais informações sobre o uso de famílias de imagens, consulte Práticas recomendadas para famílias de imagens.
PMU_TYPE
: o tipo de PMU a ser ativada na VM. Especifique um dos seguintes valores:Tipo de PMU arquitetônica:
ARCHITECTURAL
Tipo de PMU padrão:
STANDARD
Tipo de PMU aprimorada:
ENHANCED
COUNT
: o número de VMs a serem criadas.MACHINE_TYPE
: um tipo de máquina C4. Para ativar o tipo de PMU aprimorada, especifique um tipo de máquina C4 com 96 ou 192 vCPUs. Caso contrário, a criação da VM falhará.NAME_PATTERN
: o padrão de nome para as VMs. Para substituir uma sequência de números no nome de uma VM, use uma sequência de caracteres hash (#
). Por exemplo, usarvm-#
para o padrão de nome gera VMs com nomes que começam comvm-1
,vm-2
e continuam até o número de VMs especificado porCOUNT
.PMU_TYPE
: o tipo de PMU a ser ativada nas VMs. Especifique um dos seguintes valores:Tipo de PMU arquitetônica:
architectural
Tipo de PMU padrão:
standard
Tipo de PMU aprimorada:
enhanced
ZONE
: a zona em que as VMs serão criadas em massa.PROJECT_ID
: o ID do projeto em que as VMs serão criadas em massa.ZONE
: a zona em que as VMs serão criadas em massa.COUNT
: o número de VMs a serem criadas.NAME_PATTERN
: o padrão de nome para as VMs. Para substituir uma sequência de números no nome de uma VM, use uma sequência de caracteres hash (#
). Por exemplo, usarvm-#
para o padrão de nome gera VMs com nomes que começam comvm-1
,vm-2
e continuam até o número de VMs especificado porCOUNT
.MACHINE_TYPE
: um tipo de máquina C4. Para ativar o tipo de PMU aprimorada, especifique um tipo de máquina C4 com 96 ou 192 vCPUs. Caso contrário, a criação da VM falhará.IMAGE_PROJECT
: o projeto de imagem que contém a imagem, por exemplo,debian-cloud
. Para mais informações sobre os projetos de imagem com suporte, consulte Imagens públicas.IMAGE
: especifique uma destas opções:Uma versão específica da imagem do SO. Por exemplo:
debian-12-bookworm-v20240617
Uma família de imagens, que precisa ser formatada como
family/IMAGE_FAMILY
. Especifica a imagem do SO mais recente e não descontinuada. Por exemplo, se você especificarfamily/debian-12
, a versão mais recente na família de imagens do Debian 12 será usada. Para mais informações sobre o uso de famílias de imagens, consulte Práticas recomendadas para famílias de imagens.
PMU_TYPE
: o tipo de PMU a ser ativada nas VMs. Especifique um dos seguintes valores:Tipo de PMU arquitetônica:
ARCHITECTURAL
Tipo de PMU padrão:
STANDARD
Tipo de PMU aprimorada:
ENHANCED
ZONE
: a zona em que as VMs serão criadas em massa.Ative a PMU nas VMs de um grupo gerenciado de instâncias (MIG) fazendo o seguinte:
INSTANCE_TEMPLATE_NAME
: o nome do modelo de instância.MACHINE_TYPE
: um tipo de máquina C4. Para ativar o tipo de PMU aprimorada, especifique um tipo de máquina C4 com 96 ou 192 vCPUs. Caso contrário, a criação da VM falhará.PMU_TYPE
: o tipo de PMU a ser incluída no modelo de instância. Especifique um dos seguintes valores:Tipo de PMU arquitetônica:
architectural
Tipo de PMU padrão:
standard
Tipo de PMU aprimorada:
enhanced
Para criar um modelo de instância global: método
instanceTemplates.insert
.Para criar um modelo de instância regional: método
regionInstanceTemplates.insert
.PROJECT_ID
: o ID do projeto em que o modelo de instância será criado.INSTANCE_TEMPLATE_NAME
: o nome do modelo de instância.IMAGE_PROJECT
: o projeto de imagem que contém a imagem, por exemplo,debian-cloud
. Para mais informações sobre os projetos de imagem com suporte, consulte Imagens públicas.IMAGE
: especifique uma destas opções:Uma versão específica da imagem do SO. Por exemplo:
debian-12-bookworm-v20240617
Uma família de imagens, que precisa ser formatada como
family/IMAGE_FAMILY
. Especifica a imagem do SO mais recente e não descontinuada. Por exemplo, se você especificarfamily/debian-12
, a versão mais recente na família de imagens do Debian 12 será usada. Para mais informações sobre o uso de famílias de imagens, consulte Práticas recomendadas para famílias de imagens.
MACHINE_TYPE
: um tipo de máquina C4. Para ativar o tipo de PMU aprimorada, especifique um tipo de máquina C4 com 96 ou 192 vCPUs. Caso contrário, a criação da VM falhará.PMU_TYPE
: o tipo de PMU a ser incluída no modelo de instância. Especifique um dos seguintes valores:Tipo de PMU arquitetônica:
ARCHITECTURAL
Tipo de PMU padrão:
STANDARD
Tipo de PMU aprimorada:
ENHANCED
Saiba como conectar-se a uma VM.
Saiba como mudar o tipo de PMU em uma VM ou desativar a PMU.
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.
Funções exigidas
Para receber as permissões necessárias e ativar a PMU em uma VM nova ou atual, peça ao administrador para conceder a você o papel do IAM de Administrador da instância do Compute (v1) (
roles/compute.instanceAdmin.v1
) no projeto. Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.Esse papel predefinido contém as permissões necessárias para ativar a PMU em uma VM nova ou atual. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
Estas permissões são necessárias para ativar a PMU em uma VM nova ou atual:
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Ativar a PMU em VMs
Para ativar a PMU em uma ou mais VMs C4, selecione um destes métodos:
Depois de ativar a PMU em uma ou mais VMs, você pode instalar e usar um software de monitoramento de desempenho nelas.
Ativar a PMU em uma VM atual
Antes de ativar a PMU em uma VM atual, verifique se ela usa um tipo de máquina e uma plataforma de CPU compatíveis fazendo o seguinte:
Não é necessário interromper a VM para ativar a PMU. No entanto, para que a mudança entre em vigor, você precisa reiniciar a VM conforme descrito nesta seção.
Para ativar a PMU em uma VM atual, selecione uma das seguintes opções:
gcloud
REST
Para mais informações sobre como atualizar as propriedades de uma VM, consulte Atualizar as propriedades da VM.
Ativar a PMU ao criar uma VM
Só é possível criar uma VM com a PMU ativada em uma zona que contenha uma plataforma de CPU compatível. Para conferir uma lista de CPUs disponíveis por zona, consulte Regiões e zonas disponíveis.
Para criar uma VM com a PMU ativada, selecione uma das seguintes opções:
gcloud
Para criar uma VM com a PMU ativada, use o comando
gcloud compute instances create
com a flag--performance-monitoring-unit
.gcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --performance-monitoring-unit=PMU_TYPE \ --zone=ZONE
Substitua:
REST
Para criar uma VM com a PMU ativada, faça uma solicitação
POST
ao métodoinstances.insert
. No corpo da solicitação, inclua o campoperformanceMonitoringUnit
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "VM_NAME", "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "advancedMachineFeatures": { "performanceMonitoringUnit": "PMU_TYPE" } }
Substitua:
Para mais informações sobre como criar uma VM, consulte Criar e iniciar uma instância do Compute Engine.
Ativar a PMU ao criar VMs em massa
Só é possível criar VMs em massa com a PMU ativada em zonas que contêm uma plataforma de CPU compatível. Para conferir uma lista de CPUs disponíveis por zona, consulte Regiões e zonas disponíveis.
Para criar VMs em massa com a PMU ativada, selecione uma das seguintes opções:
gcloud
Para criar VMs em massa com a PMU ativada, use o comando
gcloud compute instances bulk create
com a flag--performance-monitoring-unit
.Por exemplo, para criar VMs em massa em uma única zona e especificar um padrão de nome, execute o seguinte comando:
gcloud compute instances bulk create \ --count=COUNT \ --machine-type=MACHINE_TYPE \ --name-pattern="NAME_PATTERN" \ --performance-monitoring-unit=PMU_TYPE \ --zone=ZONE
Substitua:
REST
Para criar VMs em massa com a PMU ativada, faça uma solicitação
POST
ao métodoinstances.bulkInsert
. No corpo da solicitação, inclua o campoperformanceMonitoringUnit
.Por exemplo, para criar VMs em massa em uma única zona e especificar um padrão de nome, faça uma solicitação
POST
da seguinte maneira:POST https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert { "count": COUNT, "namePattern": "NAME_PATTERN", "instanceProperties": { "machineType": "MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "advancedMachineFeatures": { "performanceMonitoringUnit": "PMU_TYPE" } } }
Substitua:
Para mais informações sobre a criação de VMs em massa, consulte Criar VMs em massa.
Ativar a PMU ao criar um modelo de instância
Se você quiser criar um modelo de instância regional com a PMU ativada, verifique se pelo menos uma zona na região selecionada contém uma plataforma de CPU compatível. Para conferir uma lista de CPUs disponíveis por zona, consulte Regiões e zonas disponíveis.
Depois de criar um modelo de instância com a PMU ativada, é possível usá-lo para fazer o seguinte:
Para criar um modelo de instância com a PMU ativada, selecione uma das seguintes opções:
gcloud
Para criar um modelo de instância com a PMU ativada, use o comando
gcloud compute instance-templates create
com a flag--performance-monitoring-unit
.Por exemplo, para criar um modelo de instância global com a PMU ativada, execute o seguinte comando:
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \ --machine-type=MACHINE_TYPE \ --performance-monitoring-unit=PMU_TYPE
Substitua:
REST
Para criar um modelo de instância com a PMU ativada, faça uma solicitação
POST
a um dos seguintes métodos:No corpo da solicitação, inclua o campo
performanceMonitoringUnit
.Por exemplo, para criar um modelo de instância global com a PMU ativada, faça uma solicitação
POST
da seguinte maneira:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates { "name": "INSTANCE_TEMPLATE_NAME", "properties": { "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "machineType": "MACHINE_TYPE", "networkInterfaces": [ { "network": "global/networks/default" } ], "advancedMachineFeatures": { "performanceMonitoringUnit": "PMU_TYPE" } } }
Substitua:
Para mais informações sobre como criar um modelo de instância, consulte Criar modelos de instância.
A seguir
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2024-11-21 UTC.
-