您可以使用 Cloud Monitoring 监控外部密钥管理器 (EKM) 连接。以下指标可帮助您了解 EKM 用量:
cloudkms.googleapis.com/ekm/external/request_latencies
cloudkms.googleapis.com/ekm/external/request_count
本页介绍了如何创建信息中心,以跟踪与 Cloud EKM 密钥和外部密钥管理器连接相关的指标,例如请求数和延迟时间。如需详细了解这些指标,请参阅 cloudkms 指标。如需详细了解以下部分中介绍的信息中心创建流程,请参阅通过 API 管理信息中心。
准备工作
本页中的步骤假定:
所需的角色
如需获得使用 gcloud CLI 创建信息中心所需的权限,请让管理员向您授予项目的以下 IAM 角色:
-
Monitoring Dashboard Configuration Editor (
roles/monitoring.dashboardEditor
) -
Service Usage Consumer (
roles/serviceusage.serviceUsageConsumer
)
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
这些预定义角色包含使用 gcloud CLI 创建信息中心所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
如需使用 gcloud CLI 创建信息中心,您需要拥有以下权限:
-
monitoring.dashboards.create
-
monitoring.dashboards.delete
-
monitoring.dashboards.update
-
serviceusage.services.use
创建信息中心以监控 EKM
如需监控 EKM 的状态,请创建一个用于监控请求数和延迟时间的信息中心:
下载信息中心配置:
ekm-dashboard.json
。运行以下命令,使用配置文件创建自定义信息中心:
gcloud monitoring dashboards create \ --config-from-file=ekm-dashboard.json
查看您的 EKM 信息中心
在 Google Cloud 控制台中,前往 Monitoring 页面,或使用以下按钮:
选择资源 > 信息中心,然后查看名为 Cloud KMS EKM 的信息中心。
为 EKM 指标创建提醒政策
使用 gcloud CLI 完成以下步骤:
选择一个通知渠道,以接收 EKM 指标提醒。
如需使用现有通知渠道,请先查看您的渠道:
gcloud beta monitoring channels list
从列表中选择一个频道。记下通知渠道 ID;您稍后需要用到它。
如需使用新的通知渠道,请使用电子邮件地址创建渠道:
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
如果成功,此命令将返回新渠道的名称。记下通知渠道 ID;您稍后需要用到它。输出内容类似如下:
Created notification channel [projects/PROJECT_ID/notificationChannels/NOTIFICATION_CHANNEL_ID]
使用
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'
替换以下内容:
- NOTIFICATION_CHANNEL_ID:通知渠道的 ID。
- LOCATION:您要针对此指标设置提醒的区域。如果您希望无论区域如何都发送提醒,请省略
metric.labels.ekm_service_region
。 - LABEL_METHOD:您要针对哪个
method
标签发出提醒,例如wrap
、unwrap
、asymmetricSign
、checkCryptoSpacePermissions
、createKey
、getInfo
或getPublicKey
。您可以使用 Metrics Explorer 探索指标标签。