Este documento explica como monitorar o consumo de reservas de recursos zonais do Compute Engine usando o Cloud Monitoring.
O monitoramento coleta e armazena informações de desempenho de Google Cloud serviços como o Compute Engine. As informações de desempenho são chamadas de métricas e séries temporais . Você pode acessar as métricas e as séries temporais das suas reservas do Compute Engine para fazer o seguinte:
Mostre como suas reservas estão sendo consumidas usando painéis de monitoramento .
Receba notificações oportunas quando o consumo de suas reservas estiver em um estado específico usando políticas de alertas do Monitoring .
Esses métodos podem, por exemplo, ajudá-lo a verificar se suas reservas estão sendo consumidas conforme planejado ou agir em tempo hábil para evitar custos desnecessários de recursos desperdiçados ou reservas não utilizadas.
Antes de começar
- Revise os requisitos e restrições para reservas.
-
Enable the Monitoring API.
- Se ainda não o fez, configure a autenticação. Autenticação é o processo pelo qual sua identidade é verificada para acesso a Google Cloud serviços e APIs. Para executar códigos ou amostras em um ambiente de desenvolvimento local, você pode se autenticar no Compute Engine selecionando uma das seguintes opções:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.
Funções obrigatórias
Para obter as permissões necessárias para criar painéis de monitoramento ou políticas de alerta para monitorar o consumo de reservas, peça ao administrador para conceder a você a função do IAM Administrador de monitoramento (
roles/monitoring.admin
) no projeto. Para obter mais informações sobre a concessão de funções, consulte Gerenciar acesso a projetos, pastas e organizações .Essa função predefinida contém as permissões necessárias para criar painéis de monitoramento ou políticas de alerta para monitorar o consumo de reservas. Para ver as permissões exatas necessárias, expanda a seção Permissões necessárias :
Permissões necessárias
As seguintes permissões são necessárias para criar painéis de monitoramento ou políticas de alerta para monitorar o consumo de reservas:
- Para criar painéis:
monitoring.dashboards.create
no projeto - Para criar alertas de política:
monitoring.alertPolicies.create
no projeto
Você também poderá obter essas permissões com funções personalizadas ou outras funções predefinidas .
Restrições
Ao utilizar o Monitoring para acessar e visualizar a série temporal de uma reserva, aplicam-se as seguintes restrições:
Depois de criar uma reserva, sua série temporal fica disponível em 30 minutos.
Depois que uma série temporal fica disponível, o Monitoring começa a atualizá-la pelo menos uma vez a cada 30 minutos.
Se você excluir uma reserva, sua série temporal também será excluída e não poderá ser recuperada.
Você só pode acessar e visualizar a série temporal de uma reserva que foi criada no projeto atual.
Para obter mais informações sobre restrições do Monitoring, consulte Cotas e limites do Cloud Monitoring .
Métricas de reservas
Ao criar painéis de monitoramento ou políticas de alertas, você deve primeiro selecionar a opção Google Cloud métrica para medir como o Google Cloud serviço está sendo executado. Para reservas, você pode selecionar as seguintes métricas do Compute Engine:
Reservado : o número de instâncias de máquina virtual (VM) reservadas em cada reserva no projeto atual.
Usado : o número de VMs consumidas em cada reserva no projeto atual.
Depois de selecionar uma métrica, você poderá filtrar ou agrupar ainda mais as medidas da métrica de reservas. Para mais informações sobre os filtros disponíveis para reservas, consulte Filtros de reservas neste documento.
Filtros de reservas
Você pode usar filtros do Monitoring para agrupar ou filtrar os dados de série temporal associados a uma ou mais reservas. Especificamente, ao criar painéis de monitoramento ou políticas de alertas, você pode limitar os dados de série temporal que eles usam especificando um ou mais dos seguintes rótulos:
Seletor Nome da etiqueta Descrição metadata.system
machine_type
O tipo de máquina especificado nas VMs reservadas para uma reserva. metadata.system
name
O nome de uma reserva. metadata.system
state
O estado de uma reserva. Você só pode monitorar reservas no estado ACTIVE
, que é quando existe uma reserva.metric
reserved_resource_type
O tipo de recursos zonais reservados por uma reserva. Você só pode monitorar o tipo de instance
, que é uma instância de VM.metric
service_name
Ao selecionar a métrica Usado no console do Google Cloud, você pode ver quais Google Cloud produto consome a reserva. O valor pode ser um dos seguintes:
-
COMPUTE_ENGINE
: VMs no Compute Engine -
VERTEX_ONLINE_PREDICTION
: VMs em jobs de previsão da Vertex AI -
VERTEX_TRAINING
: VMs em jobs de treinamento personalizados da Vertex AI
Se você consumir reservas no Compute Engine e no Vertex AI, crie um filtro para cada valor anterior.
resource
location
A zona onde uma reserva está localizada. resource
reservation_id
O identificador (ID) de uma reserva. resource
resource_container
O número do projeto onde existe uma reserva. Você só pode monitorar as reservas que foram criadas no seu projeto. Ao criar um filtro, você deve especificar o seletor e o nome do rótulo, seguido por um operador de comparação e, em seguida, o valor a ser filtrado. Por exemplo, se você quiser que sua consulta filtre suas reservas por zona
us-central1-a
, use o seguinte filtro:resource.location = "us-central1-a"
Para garantir que o valor especificado em um filtro corresponda ao valor do campo de uma reserva, visualize os detalhes da reserva .
Monitorar o consumo de reservas
Para monitorar o consumo de suas reservas, selecione um dos seguintes métodos especificados neste documento:
Crie um painel — crie painéis de monitoramento e adicione widgets às áreas do gráfico para exibir os dados de série temporal vinculados ao consumo de suas reservas.
Este método é útil quando, por exemplo, você deseja verificar se uma VM está consumindo corretamente uma reserva ou comparar a tendência de consumo de múltiplas reservas.
Crie políticas de alertas — crie políticas de alertas para enviar alertas quando os dados de série temporal vinculados ao consumo de suas reservas atingirem um limite definido.
Este método é útil quando, por exemplo, você deseja ser notificado quando o número de VMs usadas no projeto atual estiver abaixo de uma proporção específica ou quando uma reserva permanecer não utilizada por um período específico.
Crie um painel
Você pode criar painéis do Monitoring e visualizar as séries temporais vinculadas ao consumo de suas reservas usando o console do Google Cloud (recomendado) e a API Monitoring.
Ao definir como exibir os dados de série temporal de um filtro do Monitoring, você deve usar um dos seguintes métodos:
Consulta Básica : este método é útil para configurar rapidamente os dados de série temporal para um widget de painel.
Por exemplo, você pode usar a Consulta Básica para exibir rapidamente qual de suas reservas em uma zona específica ainda não foi totalmente consumida.
MQL : este método é útil para recuperar, filtrar e manipular dados de série temporal para criar configurações mais complexas para um widget de painel.
Por exemplo, você pode usar o Monitoring Query Language (MQL) para exibir a proporção de VMs consumidas e VMs reservadas em suas reservas.
Consulta Básica
O exemplo a seguir descreve como criar um painel de monitoramento com um widget de gráfico de linhas para exibir suas reservas consumidas na zona
us-central1-a
.Console
Para criar um painel de monitoramento usando Consulta Básica, siga estas etapas:
No console do Google Cloud, acesse Painéis .
Clique em
Criar painel .A página Novo painel é aberta.
Clique em
Adicionar widget .O painel Adicionar widget é exibido.
Clique em um dos widgets disponíveis. Por exemplo, clique no widget Linha .
O painel Configurar widget é exibido.
Clique em Selecionar uma métrica .
Na janela Selecionar uma métrica , faça o seguinte:
Insira
Reservation
e selecione Reserva .Na lista Categorias de métricas ativas , selecione Reserva novamente.
Na lista Métricas ativas , selecione uma das métricas disponíveis. Por exemplo, selecione Usado .
Clique em Aplicar .
Para filtrar suas reservas por uma zona específica, faça o seguinte:
Na lista Adicionar filtro , selecione um dos filtros disponíveis para reservas . Para este exemplo, selecione location .
Na lista Comparador , selecione um dos operadores disponíveis. Para este exemplo, selecione = (igual) (padrão).
Na lista Valor , selecione a zona que deseja usar para filtrar suas reservas. Para este exemplo, selecione us-central1-a .
Clique em Aplicar .
Para obter mais opções de personalização de painéis do Monitoring usando o console do Google Cloud, consulte Criar e gerenciar painéis personalizados .
DESCANSAR
Para criar um dashboard do Monitoring usando Consulta Básica, faça uma solicitação
POST
para o métododashboards.create
.POST https://monitoring.googleapis.com/v1/projects/PROJECT_ID/dashboards { "displayName": "Consumed reservations in zone us-central1-a", "mosaicLayout": { "columns": 12, "tiles": [ { "height": 4, "widget": { "title": "Reservation - Used for us-central1-a [MEAN]", "xyChart": { "chartOptions": { "mode": "COLOR" }, "dataSets": [ { "minAlignmentPeriod": "60s", "plotType": "LINE", "targetAxis": "Y1", "timeSeriesQuery": { "timeSeriesFilter": { "aggregation": { "alignmentPeriod": "60s", "perSeriesAligner": "ALIGN_MEAN" }, "filter": "FILTER", "secondaryAggregation": { "alignmentPeriod": "60s", "perSeriesAligner": "ALIGN_NONE" } } } } ], "timeshiftDuration": "0s", "yAxis": { "scale": "LINEAR" } } }, "width": 6 } ] } }
Substitua o seguinte:
PROJECT_ID
: o ID do projeto atual.FILTER
: o filtro de monitoramento a ser usado em seu painel. Por exemplo, para monitorar as reservas consumidas na zonaus-central1-a
, especifique o seguinte:resource.type = 'compute.googleapis.com/Reservation' AND metric.type = 'compute.googleapis.com/reservation/used' AND resource.location = 'us-central1-a'
Para obter mais opções de personalização de painéis do Monitoring usando a API do Monitoring, consulte Criar e gerenciar painéis usando a API .
MQL
O exemplo a seguir descreve como criar um painel do Monitoring com um widget de gráfico de linhas para exibir a proporção de VMs usadas e VMs reservadas em suas reservas.
Console
Para criar um painel de monitoramento usando MQL, siga estas etapas:
No console do Google Cloud, acesse Painéis .
Clique em
Criar painel .A página Novo painel é aberta.
Clique em
Adicionar widget .O painel Adicionar widget é exibido.
Clique em um dos widgets disponíveis. Por exemplo, clique no widget Linha .
O painel Configurar widget é exibido.
Clique no
MQL .No editor de consultas, insira uma consulta MQL. Por exemplo, para visualizar a proporção de VMs usadas e VMs reservadas em suas reservas, especifique o seguinte:
fetch compute.googleapis.com/Reservation | { metric compute.googleapis.com/reservation/used | group_by [metadata.system.name], sliding(1m), max(value.used) ; metric compute.googleapis.com/reservation/reserved | group_by [metadata.system.name], sliding(1m), max(value.reserved) } | ratio
Clique em Executar consulta .
Clique em Aplicar .
Para obter mais opções de personalização de painéis do Monitoring usando o console do Google Cloud, consulte Criar e gerenciar painéis personalizados .
DESCANSAR
Para criar um painel de monitoramento usando MQL, faça uma solicitação
POST
para o métododashboards.create
.POST https://monitoring.googleapis.com/v1/projects/PROJECT_ID/dashboards { "displayName": "Consumed reservations in zone us-central1-a", "mosaicLayout": { "columns": 12, "tiles": [ { "height": 4, "widget": { "title": "Reservation - Used for us-central1-a [MEAN]", "xyChart": { "chartOptions": { "mode": "COLOR" }, "dataSets": [ { "plotType": "LINE", "targetAxis": "Y1", "timeSeriesQuery": { "timeSeriesQueryLanguage": "MQL_QUERY" } } ], "timeshiftDuration": "0s", "yAxis": { "scale": "LINEAR" } } }, "width": 6, "xPos": 6 } ] } }
Substitua o seguinte:
PROJECT_ID
: o ID do projeto atual.MQL_QUERY
: a consulta MQL a ser usada para o widget de gráfico de linhas. Por exemplo, para visualizar a proporção de VMs usadas e VMs reservadas em suas reservas, especifique o seguinte:fetch compute.googleapis.com/Reservation | { metric compute.googleapis.com/reservation/used | group_by [metadata.system.name], sliding(1m), max(value.used) ; metric compute.googleapis.com/reservation/reserved | group_by [metadata.system.name], sliding(1m), max(value.reserved) } | ratio
Para obter mais opções de personalização de painéis do Monitoring usando a API do Monitoring, consulte Criar e gerenciar painéis usando a API .
Crie políticas de alertas
Você pode criar políticas de alertas do Monitoring para receber notificações sobre o consumo de reservas no projeto atual usando o console do Google Cloud e a API Monitoring.
Ao definir uma condição de alerta para uma política de alertas, você deve usar um dos seguintes métodos:
Consulta Básica : este método é útil para criar condições de alerta simples.
Por exemplo, você pode usar a Consulta Básica para criar uma condição de alerta que é acionada sempre que uma reserva é consumida pela primeira vez.
MQL : este método é útil para recuperar, filtrar e manipular dados de séries temporais para criar condições de alerta mais complexas.
Por exemplo, você pode usar o Monitoring Query Language (MQL) para criar uma condição de alerta que é acionada quando a proporção de VMs reservadas para VMs consumidas atinge um limite específico.
Consulta Básica
O exemplo a seguir cria uma política de alertas que envia uma notificação de alerta quando uma reserva é consumida pela primeira vez. Especificamente, o alerta é acionado sempre que o número de VMs consumidas numa reserva é superior a
0
.Console
Para criar uma política de alertas do Monitoring usando Consulta Básica, siga estas etapas:
No console do Google Cloud, acesse Alertas .
Clique em
Criar política .A página Criar política de alertas é aberta.
Clique em
Selecione uma métrica .A janela Selecionar uma métrica é exibida.
Na janela Selecionar uma métrica , faça o seguinte:
No campo Filtrar por recurso ou nome de métrica , insira
Reservation
.Se a métrica Reserva aparecer na lista Recursos ativos , selecione-a. Caso contrário, faça o seguinte:
Desmarque Mostrar apenas recursos e métricas ativos .
A lista de recursos inativos é exibida.
Na lista Recursos inativos , selecione Reserva .
Na lista Categorias de métricas ativas , selecione Reserva novamente.
A lista de métricas ativas é exibida.
Na lista Métricas ativas , selecione uma das métricas disponíveis.
Por exemplo, selecione Usado .
Clique em Aplicar .
Clique em
Adicionar filtro .A seção Adicionar filtro é exibida.
Na seção Adicionar filtro , faça o seguinte:
Na lista Etiqueta , selecione um dos filtros disponíveis para reservas especificadas neste documento.
Por exemplo, para filtrar suas reservas por nome, selecione name .
Na lista Comparação , selecione um dos operadores disponíveis.
Por exemplo, selecione = (igual) (padrão).
Na lista Valor , selecione o nome da reserva que você deseja monitorar.
Clique em Concluído .
Clique em Avançar .
O painel Configurar acionador de alerta é exibido.
Na seção Tipos de condição , selecione uma das seguintes opções:
Para acionar a condição se uma série temporal ficar acima ou abaixo de um valor específico, selecione Limite .
Para acionar a condição se uma série temporal não tiver dados para um horário específico, selecione Ausência de métrica .
Para acionar a condição se uma série temporal for projetada para ultrapassar o limite em um futuro próximo, selecione Previsão .
Por exemplo, selecione Limite (padrão).
Na lista Acionador de alerta , selecione a condição que aciona o alerta.
Por exemplo, selecione Qualquer violação de série temporal (padrão).
Na lista Posição limite , selecione quando a condição é acionada.
Por exemplo, selecione Acima do limite .
No campo Valor limite , insira um valor para a condição.
Por exemplo, insira
0
.No campo Nome da condição , insira um nome para sua condição.
Por exemplo, insira
Reservation RESERVATION_NAME consumed.
Onde RESERVATION_NAME é o nome da reserva que você especificou nas etapas anteriores.
Clique em Avançar .
O painel Configurar notificações e finalizar alerta é exibido.
Clique em Usar canais de notificação .
No campo Canais de notificação , selecione os canais nos quais deseja ser notificado sobre o incidente.
Se você não tiver canais de notificação disponíveis, clique em Gerenciar canais de notificação e siga as etapas para criar canais de notificação. Para obter mais informações, consulte Criar e gerenciar canais de notificação .
No campo Duração do fechamento automático do incidente , selecione uma duração após a qual um incidente será fechado automaticamente.
Por exemplo, selecione 3 dias .
No campo Nome da política de alertas , insira um nome para a política de alertas.
Por exemplo, digite
Alert: you started consuming reservation RESERVATION_NAME !
Onde RESERVATION_NAME é o nome da reserva que você especificou nas etapas anteriores.
Clique em Avançar .
A página de revisão da sua condição de alerta é aberta.
Clique em Criar política .
A criação da política de alertas pode levar alguns segundos para ser concluída. Esta ação redireciona você para a página Criar política de alertas .
Para obter mais informações sobre as opções disponíveis ao criar políticas de alertas usando o console do Google Cloud e a consulta básica, consulte Criar políticas de alerta baseadas em métricas .
DESCANSAR
Para criar uma política de alertas do Monitoring usando Consulta Básica, faça uma solicitação
POST
para o métodoprojects.alertPolicies.create
.POST https://monitoring.googleapis.com/v3/projects/PROJECT_ID/alertPolicies { "displayName": "Alert: you started consuming reservation RESERVATION_NAME!", "conditions": [ { "displayName": "Reservation RESERVATION_NAME consumed.", "conditionThreshold": { "filter": "FILTER", "aggregations": [ { "alignmentPeriod": "300s", "crossSeriesReducer": "REDUCE_NONE", "perSeriesAligner": "ALIGN_MEAN" } ], "comparison": "COMPARISON_GT", "duration": "0s", "trigger": { "count": 1 }, "thresholdValue": 0 } } ], "alertStrategy": { "autoClose": "AUTO_CLOSE_TIME" }, "combiner": "OR", "enabled": true, "notificationChannels": [ "projects/PROJECT_ID/notificationChannels/NOTIFICATION_CHANNEL" ] }
Substitua o seguinte:
PROJECT_ID
: o ID do projeto atual.RESERVATION_NAME
: o nome de uma reserva existente localizada no projeto atual.FILTER
: o filtro de monitoramento a ser usado para sua política de alertas. Por exemplo, para monitorar a métricaused
para a reserva RESERVATION_NAME , especifique o seguinte:resource.type = 'compute.googleapis.com/Reservation' AND metric.type = 'compute.googleapis.com/reservation/used' AND metadata.system.name = 'RESERVATION_NAME'
AUTO_CLOSE_TIME
: o tempo em segundos antes que um incidente seja fechado automaticamente. O valor deve estar entre0s
e604800s
(7 dias). Por exemplo, insira259200s
(3 dias).NOTIFICATION_CHANNEL
: o nome de um canal de notificação existente. Para configurar um canal de notificação, consulte Criar e gerenciar canais de notificação .
Para obter mais informações sobre as opções que você tem ao criar políticas de alertas usando a API Monitoring e a Consulta Básica, consulte Criar políticas de alertas usando a API .
MQL
O exemplo a seguir cria uma política de alertas que envia uma notificação de alerta sempre que a porcentagem de VMs usadas para VMs reservadas em suas reservas estiver acima de 90%.
Console
Para criar uma política de alertas do Monitoring usando MQL, siga estas etapas:
No console do Google Cloud, acesse Alertas .
Clique em
Criar política .A página Criar política de alertas é aberta.
Na barra de ferramentas, clique em MQL .
O painel Editar consulta é exibido.
No painel Editar consulta , insira uma consulta MQL.
Por exemplo, para criar uma consulta que agrupe suas reservas por nome e acione uma condição de alerta quando mais de 90% de suas reservas forem consumidas, insira a seguinte consulta:
fetch compute.googleapis.com/Reservation | { metric compute.googleapis.com/reservation/used | group_by [metadata.system.name], sliding(1m), max(value.used) ; metric compute.googleapis.com/reservation/reserved | group_by [metadata.system.name], sliding(1m), max(value.reserved) } | ratio | every 1m | condition gt(val(), 0.9)
Para executar a consulta que você acabou de inserir, clique em Executar consulta .
Clique em Avançar .
O painel Configurar acionador de alerta é exibido.
Se for Condition name , insira um nome para sua condição.
Por exemplo, insira
Over 90% of your reservations are consumed.
Clique em Avançar novamente.
O painel Configurar notificações e finalizar alerta é exibido.
Clique em Usar canais de notificação .
No campo Canais de notificação , selecione os canais nos quais deseja ser notificado sobre o incidente.
Se você não tiver canais de notificação disponíveis, clique em Gerenciar canais de notificação e siga as etapas para criar canais de notificação. Para obter mais informações, consulte Criar e gerenciar canais de notificação .
No campo Duração do fechamento automático do incidente , selecione uma duração após a qual um incidente será fechado automaticamente.
Por exemplo, selecione 3 dias .
No campo Nome da política de alertas , insira um nome para a política de alertas.
Por exemplo, insira
Alert: over 90% of your reservations are consumed.
Clique em Avançar .
A página de revisão da sua condição de alerta é aberta.
Clique em Criar política .
A criação da política de alertas pode levar alguns segundos para ser concluída. Esta ação redireciona você para a página Criar política de alertas .
Para obter mais informações sobre como criar políticas de alertas usando o console do Google Cloud e MQL, consulte Criar políticas de alertas MQL (console) .
DESCANSAR
Para criar uma política de alertas do Monitoring usando MQL, faça uma solicitação
POST
para o métodoprojects.alertPolicies.create
.POST https://monitoring.googleapis.com/v3/projects/PROJECT_ID/alertPolicies { "displayName": "Alert: over 90% of your reservations are consumed.", "conditions": [ { "displayName": "Over 90% of your reservations are consumed.", "conditionMonitoringQueryLanguage": { "duration": "0s", "trigger": { "count": 1 }, "query": "MQL_QUERY" } } ], "alertStrategy": { "autoClose": "AUTO_CLOSE_TIME" }, "combiner": "OR", "enabled": true, "notificationChannels": [ "projects/PROJECT_ID/notificationChannels/NOTIFICATION_CHANNEL" ] }
Substitua o seguinte:
PROJECT_ID
: o ID do projeto atual.MQL_QUERY
: uma consulta MQL a ser usada para a política de alertas. Por exemplo, para criar uma consulta que rastreie quando a porcentagem de VMs usadas para VMs reservadas está acima de 90% nas reservas do projeto atual, especifique o seguinte:fetch compute.googleapis.com/Reservation | { metric compute.googleapis.com/reservation/used | group_by [metadata.system.name], sliding(1m), max(value.used) ; metric compute.googleapis.com/reservation/reserved | group_by [metadata.system.name], sliding(1m), max(value.reserved) } | ratio | every 1m | condition gt(val(), 0.9)
AUTO_CLOSE_TIME
: o tempo em segundos antes que um incidente seja fechado automaticamente. O valor deve estar entre0s
e604800s
(7 dias). Por exemplo, insira259200s
(3 dias).NOTIFICATION_CHANNEL
: o nome de um canal de notificação existente. Para configurar um canal de notificação, consulte Criar e gerenciar canais de notificação .
Para obter mais informações sobre como criar políticas de alertas usando a API Monitoring e MQL, consulte Criar políticas de alertas (API) MQL .
Solucionar problemas
Saiba como solucionar problemas com o monitoramento de reservas .
O que vem a seguir
Aprenda como consumir reservas .
Saiba como anexar reservas a compromissos .
Saiba como modificar reservas .
Saiba como excluir reservas .
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 2025-04-21 UTC.
- Para criar painéis: