Monitorar o uso do EKM

É possível usar o Cloud Monitoring para monitorar sua conexão com o gerenciador de chaves externas (EKM). 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 rastrear métricas relacionadas às suas chaves do Cloud EKM 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 nesta página pressupõem o seguinte:

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 seu projeto:

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 seguintes permissões 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 as latências:

  1. Faça o download da configuração do painel: ekm-dashboard.json.

  2. 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 do EKM

  1. No console Google Cloud , acesse a página Monitoring ou use o botão a seguir:

    Acessar Monitoring

  2. Selecione Recursos > Painéis e veja 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:

  1. Selecione um canal de notificação para receber alertas de métricas do EKM.

    • Para usar um canal de notificação, primeiro veja seus canais:

      gcloud beta monitoring channels list
      

      Escolha um canal na lista. Anote o ID do canal de notificação, porque você vai precisar dele mais tarde.

    • Para usar um novo canal de notificação, crie-o com 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, esse 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]
      
  2. 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 gerar um alerta sobre essa métrica. Se você quiser receber alertas independente da região, omita metric.labels.ekm_service_region.
    • LABEL_METHOD: o rótulo method que você quer alertar, por exemplo, wrap, unwrap, asymmetricSign, checkCryptoSpacePermissions, createKey, getInfo ou getPublicKey. Use o Metrics Explorer para analisar os rótulos de métricas.

A seguir