É possível usar o Cloud Monitoring para monitorar a conexão do gerenciador de chaves externo (EKM, na sigla em inglês). As métricas a seguir podem ajudar você a entender o uso do EKM:
cloudkms.googleapis.com/ekm/external/request_latencies
cloudkms.googleapis.com/ekm/external/request_count
Nesta página, mostramos como criar um painel para acompanhar métricas relacionadas às suas chaves do EKM do Cloud e à conexão do gerenciador de chaves externo, como contagens de solicitações e latências. Para mais informações sobre essas métricas, consulte Métricas do Cloud KMS. Para mais informações sobre o processo de criação de painéis descrito nas seções a seguir, consulte Como gerenciar painéis por API.
Antes de começar
As etapas desta página pressupõem o seguinte:
- Você já tem o Cloud EKM configurado em um projeto, incluindo uma conexão EKM e uma ou mais chaves externas.
Funções exigidas
Para receber as permissões necessárias para criar painéis usando a CLI gcloud, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:
-
Editor de configuração de painel do Monitoring (
roles/monitoring.dashboardEditor
) -
Consumidor do Service Usage (
roles/serviceusage.serviceUsageConsumer
)
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esses papéis predefinidos contêm as permissões necessárias para criar painéis usando a CLI gcloud. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As permissões a seguir são necessárias para criar painéis usando a CLI gcloud:
-
monitoring.dashboards.create
-
monitoring.dashboards.delete
-
monitoring.dashboards.update
-
serviceusage.services.use
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Criar um painel para monitorar o EKM
Para monitorar o status do EKM, crie um painel que monitore a contagem de solicitações e latências:
Faça o download da configuração do painel:
ekm-dashboard.json
.Crie um painel personalizado com o arquivo de configuração executando o seguinte comando:
gcloud monitoring dashboards create \ --config-from-file=ekm-dashboard.json
Acessar o painel da EKM
No console do Google Cloud, acesse a página Monitoring ou use o seguinte botão:
Selecione Recursos > Painéis e acesse o painel chamado EKM do Cloud KMS.
Criar uma política de alertas para métricas do EKM
Conclua as etapas a seguir usando a CLI gcloud:
Selecione um canal de notificação para receber alertas de métricas do EKM.
Para usar um canal de notificação existente, primeiro confira seus canais:
gcloud beta monitoring channels list
Escolha um canal na lista. Anote o ID do canal de notificação. Ele será necessário mais tarde.
Para usar um novo canal de notificação, crie-o usando um endereço de e-mail:
gcloud beta monitoring channels create \ --display-name="Notification channel for EKM latency alert" \ --description="This notification channel receives EKM latency metric alerts" \ --type=email \ --channel-labels=email_address=NOTIFICATION_EMAIL
Se bem-sucedido, este comando vai retornar o nome do novo canal. Anote o ID do canal de notificação. Ele será necessário mais tarde. A resposta será parecida com esta:
Created notification channel [projects/PROJECT_ID/notificationChannels/NOTIFICATION_CHANNEL_ID]
Crie uma política de alertas usando o comando
monitoring policies create
:gcloud alpha monitoring policies create \ --notification-channels=NOTIFICATION_CHANNEL_ID \ --aggregation=' {"alignmentPeriod": "60s","perSeriesAligner": "ALIGN_PERCENTILE_99"}' \ --condition-display-name="EKM Request Latency > 150ms" \ --condition-filter='resource.type="cloudkms.googleapis.com/Project" metric.type="cloudkms.googleapis.com/ekm/external/request_latencies" metric.labels.ekm_service_region="LOCATION" metric.labels.method="LABEL_METHOD"' \ --duration="0s" \ --if="> 150" \ --display-name="EKM metric latency alert" \ --trigger-count=1 \ --combiner='AND'
Substitua:
- NOTIFICATION_CHANNEL_ID: o ID do canal de notificação.
- LOCATION: a região para a qual você quer enviar um alerta sobre essa métrica. Se você quiser enviar um alerta independente da região, omita
metric.labels.ekm_service_region
. - LABEL_METHOD: o rótulo
method
para o qual você quer receber um alerta. Por exemplo,wrap
,unwrap
,asymmetricSign
,checkCryptoSpacePermissions
,createKey
,getInfo
ougetPublicKey
. Use o Metrics Explorer para conferir os rótulos das métricas.
A seguir
- Analise seus dados em várias dimensões de métricas usando o Metrics Explorer.
- Opcional: crie políticas de alertas.