Este documento explica como ativar a unidade de monitoramento de desempenho (PMU) em instâncias de máquina virtual (VM) novas ou atuais. Para saber mais sobre a PMU, consulte a visão geral da PMU.
Depois de ativar a PMU em uma VM C4A ou C4 e se conectar a ela, você pode executar e instalar um software de monitoramento de desempenho na VM para analisar e otimizar o desempenho do software executado nela. Essa abordagem é útil ao executar cargas de trabalho sensíveis ao desempenho, como computação de alto desempenho (HPC) ou cargas de trabalho 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 selecionando uma das seguintes opções:
Select the tab for how you plan to use the samples on this page:
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
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:
-
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
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 C4A ou C4, use um destes métodos:
- 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
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:
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 C4A ou C4.
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:
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
. Se o campoadvancedMachineFeatures
não existir, adicione-o também: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 conferir as propriedades de uma VM, 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
.No campo
advancedMachineFeatures
, adicione o campoperformanceMonitoringUnit
. Se o campoadvancedMachineFeatures
não existir, adicione-o também:{ "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
mostDisruptiveAllowedAction
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.
A solicitação é semelhante a esta:
PUT https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID /zones/ZONE /instances/VM_NAME ?mostDisruptiveAllowedAction=RESTART { "advancedMachineFeatures": { "performanceMonitoringUnit": "PMU_TYPE " }, ... }
Para mais informações sobre como atualizar as propriedades de uma VM, consulte Atualizar propriedades da instância.
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:
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:
VM_NAME
: o nome da VM.MACHINE_TYPE
: um tipo de máquina C4A ou 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.
Para criar uma VM com a PMU ativada, faça uma solicitação POST
para o
método instances.insert
.
No corpo da solicitação, inclua o campo performanceMonitoringUnit
:
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:
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 C4A ou 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
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:
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:
COUNT
: o número de VMs a serem criadas.MACHINE_TYPE
: um tipo de máquina C4A ou 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.
Para criar VMs em massa com a PMU ativada, faça uma solicitação POST
para o
método instances.bulkInsert
.
No corpo da solicitação, inclua o campo performanceMonitoringUnit
.
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://compute.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:
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 C4A ou 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
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:
Ative a PMU nas VMs de um grupo gerenciado de instâncias (MIG) fazendo o seguinte:
Para criar um modelo de instância com a PMU ativada, selecione uma das seguintes opções:
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
. Para criar um modelo de instância
regional, também é necessário incluir a flag --instance-template-region
.
Por exemplo, para criar um modelo de instância regional com a PMU ativada, execute o seguinte comando:
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--instance-template-region=REGION \
--machine-type=MACHINE_TYPE \
--performance-monitoring-unit=PMU_TYPE
Substitua:
INSTANCE_TEMPLATE_NAME
: o nome do modelo de instância.REGION
: a região em que o modelo de instância será criado.MACHINE_TYPE
: um tipo de máquina C4A ou 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 com a PMU ativada, faça uma solicitação POST
para um dos seguintes métodos:
Para criar um modelo de instância global: método
instanceTemplates.insert
.Para criar um modelo de instância regional: método
regionInstanceTemplates.insert
.
No corpo da solicitação, inclua o campo performanceMonitoringUnit
.
Por exemplo, para criar um modelo de instância regional com a PMU
ativada, faça uma solicitação POST
da seguinte maneira:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID /regions/REGION /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:
PROJECT_ID
: o ID do projeto em que o modelo de instância será criado.REGION
: a região 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 C4A ou 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 mais informações sobre como criar um modelo de instância, consulte Criar modelos de instância.