Monitorize a utilização da GKM

Pode usar o Cloud Monitoring para monitorizar a ligação do seu gestor de chaves externo (EKM). As seguintes métricas podem ajudar a compreender a sua utilização da GCE:

  • cloudkms.googleapis.com/ekm/external/request_latencies
  • cloudkms.googleapis.com/ekm/external/request_count

Esta página mostra-lhe como criar um painel de controlo para acompanhar as métricas relacionadas com as suas chaves do Cloud EKM e a ligação ao gestor de chaves externo, como as contagens de pedidos e as latências. Para mais informações sobre estas métricas, consulte o artigo Métricas do cloudkms. Para mais informações sobre o processo de criação de painéis de controlo descrito nas secções seguintes, consulte o artigo Gerir painéis de controlo por API.

Antes de começar

Os passos nesta página pressupõem o seguinte:

Funções necessárias

Para receber as autorizações de que precisa para criar painéis de controlo através da CLI gcloud, peça ao seu administrador para lhe conceder as seguintes funções de IAM no seu projeto:

Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

Estas funções predefinidas contêm as autorizações necessárias para criar painéis de controlo através da CLI gcloud. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:

Autorizações necessárias

As seguintes autorizações são necessárias para criar painéis de controlo através da CLI gcloud:

  • monitoring.dashboards.create
  • monitoring.dashboards.delete
  • monitoring.dashboards.update
  • serviceusage.services.use

Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.

Crie um painel de controlo para monitorizar a sua GCE

Para monitorizar o estado do EKM, crie um painel de controlo que monitorize a contagem de pedidos e as latências:

  1. Transfira a configuração do painel de controlo: ekm-dashboard.json.

  2. Crie um painel de controlo personalizado com o ficheiro de configuração executando o seguinte comando:

    gcloud monitoring dashboards create \
    --config-from-file=ekm-dashboard.json

Veja o seu painel de controlo da GCE

  1. Na Google Cloud consola, aceda à página Monitorização ou use o seguinte botão:

    Aceder a Monitorização

  2. Selecione Recursos > Painéis de controlo e veja o painel de controlo denominado EKM do Cloud KMS.

Crie uma política de alertas para métricas da GCE

Conclua os seguintes passos através da CLI gcloud:

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

    • Para usar um canal de notificação existente, comece por ver os seus canais:

      gcloud beta monitoring channels list
      

      Escolha um canal na lista. Tome nota do ID do canal de notificação, pois vai precisar dele mais tarde.

    • Para usar um novo canal de notificação, crie o canal com um endereço de email:

      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 for bem-sucedido, este comando devolve o nome do novo canal. Tome nota do ID do canal de notificação. Vai precisar dele mais tarde. O resultado é semelhante ao seguinte:

      Created notification channel [projects/PROJECT_ID/notificationChannels/NOTIFICATION_CHANNEL_ID]
      
  2. Crie uma política de alerta com 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 o seguinte:

    • NOTIFICATION_CHANNEL_ID: o ID do canal de notificações.
    • LOCATION: a região para a qual quer receber alertas sobre esta métrica. Se quiser receber alertas independentemente da região, omita metric.labels.ekm_service_region.
    • LABEL_METHOD: a etiqueta method sobre a qual quer receber um alerta, por exemplo, wrap, unwrap, asymmetricSign, checkCryptoSpacePermissions, createKey, getInfo ou getPublicKey. Pode usar o Explorador de métricas para explorar etiquetas de métricas.

O que se segue?