Depois de ativar a PMU em uma instância de computação e executar um software de monitoramento de desempenho nela, você pode fazer o seguinte:
Mudar o tipo de PMU ativado na instância de computação. Essa mudança é útil quando você quer rastrear diferentes tipos de eventos de CPU de baixo nível.
Desativar a PMU na instância de computação. Essa ação é útil quando você não precisa mais acessar os contadores de desempenho na PMU.
Este documento explica como mudar o tipo de unidade de monitoramento de desempenho (PMU) ativado em uma instância do Compute Engine ou desativá-lo. Para saber mais sobre a PMU, consulte Visão geral da PMU.
Antes de começar
-
Configure a autenticação, caso ainda não tenha feito isso.
Com isso, você confirma sua identidade para acesso a Cloud de Confiance by S3NS serviços e APIs do. Para executar
código ou amostras de um ambiente de desenvolvimento local, faça a autenticação no
Compute Engine com um destes métodos:
Selecione a guia para como planeja usar as amostras nesta página:
gcloud
-
Instale a Google Cloud CLI e faça login na CLI gcloud com sua identidade federada. Depois de fazer login, inicialize a Google Cloud CLI executando o seguinte comando:
gcloud init
-
- Defina uma região e uma zona padrão.
REST
Para usar as amostras da API REST desta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para a CLI gcloud.
Instale a Google Cloud CLI e faça login na CLI gcloud com sua identidade federada.
Saiba mais em Autenticar para usar REST na documentação de autenticação do Cloud de Confiance .
Funções exigidas
Para receber as permissões necessárias para mudar o tipo de PMU ativado em uma instância de computação ou desativá-lo, 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 mudar o tipo de PMU ativado em uma instância de computação ou desativá-lo. Para acessar as permissões exatas que são necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As permissões a seguir são necessárias para mudar o tipo de PMU ativado em uma instância de computação ou desativá-lo:
-
Para atualizar uma instância de computação:
compute.instances.updatena instância de computação
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Mudar o tipo de PMU em uma instância de computação
Antes de mudar o tipo de PMU para uma instância A4X, C4A, C4 ou M4, consulte os detalhes da instância de computação usando a Google Cloud CLI ou a API REST. Na saída do comando ou da solicitação de API, verifique o seguinte:
Para verificar se o tipo de PMU está ativado na instância de computação, confira o valor do campo
performanceMonitoringUnit. Se o campo estiver ausente, a PMU estará desativada.Se você quiser ativar o tipo de PMU aprimorada, verifique se a instância de computação usa um dos seguintes tipos de máquina conferindo o valor do campo
machineType:Um tipo de máquina C4 com 144 ou 288 vCPUs
Um dos seguintes tipos de máquina M4:
m4-megamem-112m4-megamem-224m4-ultramem-56m4-ultramem-112m4-ultramem-224
Se a instância de computação usar um tipo de máquina diferente, você precisará mudar o tipo de máquina usado pela instância de computação antes de poder monitorar tipos de PMU aprimorados.
Não é necessário interromper a instância de computação para mudar o tipo de PMU. No entanto, para que a mudança entre em vigor, você precisa reiniciar a instância de computação conforme descrito nesta seção.
Para mudar o tipo de PMU ativado em uma instância de computação atual, selecione uma das seguintes opções:
gcloud
Crie um arquivo YAML vazio.
Para exportar as propriedades de uma instância de computação para o arquivo YAML que você acabou de criar, use o
gcloud compute instances exportcomando:gcloud compute instances export INSTANCE_NAME \ --destination=YAML_FILE \ --zone=ZONESubstitua:
INSTANCE_NAME: o nome da instância de computação.YAML_FILE: o caminho para o arquivo YAML que você criou na etapa anterior.ZONE: a zona em que a instância de computação está.
No arquivo de configuração YAML, localize o campo
performanceMonitoringUnite mude o valor dele para especificar um tipo de PMU diferente:advancedMachineFeatures: performanceMonitoringUnit: PMU_TYPESubstitua
PMU_TYPEpor um dos seguintes valores:Tipo de PMU arquitetônica:
ARCHITECTURALTipo de PMU padrão:
STANDARDTipo de PMU aprimorada:
ENHANCED
Para atualizar e reiniciar a instância de computação, use o
gcloud compute instances update-from-filecomando com a--most-disruptive-allowed-actionflag definida comoRESTART:gcloud compute instances update-from-file INSTANCE_NAME \ --most-disruptive-allowed-action=RESTART \ --source=YAML_FILE \ --zone=ZONESubstitua:
INSTANCE_NAME: o nome da instância de computação.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 instância de computação está.
REST
Para conferir as propriedades de uma instância de computação atual, faça uma
GETsolicitação para oinstances.getmétodo:GET https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAMESubstitua:
PROJECT_ID: o ID do projeto em que a instância de computação está localizada.ZONE: a zona em que a instância de computação está.INSTANCE_NAME: o nome de uma instância de computação atual.
Para atualizar e reiniciar a instância de computação, faça uma
PUTsolicitação para oinstances.updatemétodo da seguinte maneira:No URL da solicitação, inclua o parâmetro de consulta
mostDisruptiveAllowedActiondefinido comoRESTART.Para o corpo da solicitação, use a saída da solicitação
GETda etapa anterior. No entanto, no campoadvancedMachineFeatures, você precisa mudar o valor do campoperformanceMonitoringUnitpara o tipo de PMU escolhido.
A solicitação
PUTé semelhante a esta:PUT https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME?mostDisruptiveAllowedAction=RESTART { "advancedMachineFeatures": { "performanceMonitoringUnit": "PMU_TYPE" }, ... }Substitua
PMU_TYPEpor um dos seguintes valores:Tipo de PMU arquitetônica:
ARCHITECTURALTipo de PMU padrão:
STANDARDTipo de PMU aprimorada:
ENHANCED
Para saber como atualizar as propriedades de uma instância de computação, consulte Atualizar as propriedades da instância.
Desativar a PMU em uma instância de computação
É possível desativar a PMU em uma instância de computação sem interrompê-la. No entanto, para que a mudança entre em vigor, você precisa reiniciar a instância de computação conforme descrito nesta seção.
Para desativar a PMU em uma instância de computação atual, selecione uma das seguintes opções:
gcloud
Crie um arquivo YAML vazio.
Para exportar as propriedades de uma instância de computação para o arquivo YAML que você acabou de criar, use o
gcloud compute instances exportcomando:gcloud compute instances export INSTANCE_NAME \ --destination=YAML_FILE \ --zone=ZONESubstitua:
INSTANCE_NAME: o nome da instância de computação.YAML_FILE: o caminho para o arquivo YAML que você criou na etapa anterior.ZONE: a zona em que a instância de computação está.
No arquivo de configuração YAML, remova o campo
performanceMonitoringUnit. Se o campoadvancedMachineFeaturesestiver vazio, remova-o também.advancedMachineFeatures: performanceMonitoringUnit: PMU_TYPEPara atualizar e reiniciar a instância de computação, use o
gcloud compute instances update-from-filecomando com a--most-disruptive-allowed-actionflag definida comoRESTART:gcloud compute instances update-from-file INSTANCE_NAME \ --most-disruptive-allowed-action=RESTART \ --source=YAML_FILE \ --zone=ZONESubstitua:
INSTANCE_NAME: o nome da instância de computação.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 instância de computação está.
REST
Para conferir as propriedades de uma instância de computação atual, faça uma
GETsolicitação para oinstances.getmétodo:GET https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAMESubstitua:
PROJECT_ID: o ID do projeto em que a instância de computação está.ZONE: a zona em que a instância de computação está.INSTANCE_NAME: o nome de uma instância de computação atual.
Para atualizar e reiniciar a instância de computação, faça uma
PUTsolicitação para oinstances.updatemétodo. Na solicitação, faça o seguinte:No URL da solicitação, inclua o parâmetro de consulta
mostDisruptiveAllowedActiondefinido comoRESTART.Para o corpo da solicitação, use a saída da solicitação
GETda etapa anterior. No entanto, você precisa remover o campoperformanceMonitoringUnite, se não houver outros campos no campoadvancedMachineFeatures, o campoadvancedMachineFeaturestambém.
A solicitação
PUTé semelhante a esta:PUT https://compute.s3nsapis.fr/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME?mostDisruptiveAllowedAction=RESTART { ~"advancedMachineFeatures": { ... }~, ... }
Para saber como atualizar as propriedades de uma instância de computação, consulte Atualizar as propriedades da instância.