Cloud Monitoring を使用してリソースをモニタリングする

Cloud Monitoring を使用すると、Certificate Authority Service のリソースに対して実行されるオペレーションをモニタリングできます。

準備

まだ設定していない場合は、Certificate Authority Service API が有効になっている Google Cloud プロジェクトを設定します。 詳細については、環境を準備するをご覧ください。

Cloud Monitoring で指標を表示する

Console

Metrics Explorer を使用してモニタリング対象リソースの指標を表示するには、次の操作を行います。

  1. Google Cloud コンソールで、[Metrics Explorer] ページに移動します。

    Metrics Explorer に移動

    検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] の結果を選択します。

  2. [指標] 要素の [指標を選択] メニューを開いてフィルタバーに「Certificate Authority」と入力し、サブメニューを使用して特定のリソースタイプと指標を選択します。
    1. [有効なリソース] メニューで、[認証局] を選択します。
    2. 指標を選択するには、[有効な指標カテゴリ] メニューと [有効な指標] メニューを使用します。指標のリストについては、privateca 指標をご覧ください。
    3. [適用] をクリックします。
  3. 表示から時系列を削除するには、[フィルタ] 要素を使用します。

  4. 時系列を結合するには、[集計] 要素のメニューを使用します。たとえば、ゾーンに基づいて VM の CPU 使用率を表示するには、最初のメニューを [平均] に設定し、2 番目のメニューを [ゾーン] に設定します。

    [集計] 要素の最初のメニューが [未集計] に設定されている場合は、すべての時系列が表示されます。[集計] 要素のデフォルト設定は、選択した指標タイプによって決まります。

  5. 割り当てと、1 日に 1 つのサンプルを報告するその他の指標については、次の操作を行います。
    1. [表示] ペインで、[ウィジェット タイプ] を [積み上げ棒グラフ] に設定します。
    2. 期間は少なくとも 1 週間に設定します。

CA Service の指標

指標のリストは、Cloud Monitoring のドキュメントで確認できます。

モニタリング対象リソースのドキュメントについては、モニタリング対象リソースをご覧ください。

推奨アラートを有効にするには、次の手順を行います。

Console

  1. Google Cloud コンソール の CA Service の概要ページに移動します。

    Certificate Authority Service

  2. [概要] ページの右上にある [+ 5 個の推奨アラート] をクリックします。

  3. アラートの説明を読み、各アラートを有効または無効にします。

    • 一部のアラートはカスタムしきい値をサポートしています。たとえば、有効期限が切れる CA 証明書に関するアラートを受信するタイミングや、証明書作成の失敗率が高い場合のエラー率を指定できます。
    • すべてのアラートが通知チャンネルをサポートしています。
  4. 選択したアラートをすべて有効にしたら、[送信] をクリックします。

アラート ポリシーを作成する

Console

アラート ポリシーを作成して指標の値をモニタリングすると、指標が条件に違反した場合に通知できます。

  1. Google Cloud コンソールで、[アラート] ページに移動します。

    [アラート] に移動

    検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。

  2. 通知チャンネルを作成せずに通知を受け取る場合は、[EDIT NOTIFICATION CHANNELS] をクリックして、通知チャンネルを追加します。チャンネルを追加したら、[アラート] ページに戻ります。
  3. [アラート] ページで、[CREATE POLICY] をクリックします。
  4. 指標を選択するには、[指標を選択] メニューを開き、次の操作を行います。
    1. メニューを関連するエントリに限定するには、フィルタバーに「Certificate Authority」と入力します。結果が表示されない場合は、[Show only active resources & metrics] をオフに切り替えます。
    2. [リソースの種類] で [認証局] を選択します。
    3. [指標カテゴリ] で [Ca] を選択します。
    4. [指標] には、[privateca の指標リスト]から指標を選択します。
    5. [適用] を選択します。
  5. [次へ] をクリックします。
  6. [Configure alert trigger] ページの設定によって、アラートがトリガーされるタイミングが決まります。条件タイプを選択し、必要に応じてしきい値を指定します。詳細については、指標しきい値のアラート ポリシーを作成するをご覧ください。
  7. [次へ] をクリックします。
  8. (省略可)アラート ポリシーに通知を追加するには、[通知チャネル] をクリックします。ダイアログで、メニューから 1 つ以上の通知チャンネルを選択し、[OK] をクリックします。
  9. (省略可)インシデントの自動クローズ期間を更新します。このフィールドは、指標データがない場合に Monitoring がインシデントを閉じるタイミングを決定します。
  10. (省略可)[Documentation] をクリックして、通知メッセージに追加する情報を入力します。
  11. [アラート名] をクリックして、アラート ポリシーの名前を入力します。
  12. [Create Policy] をクリックします。
詳細については、アラート ポリシーをご覧ください。

Pub/Sub 通知チャンネルを作成する

Pub/Sub にイベントを公開する通知チャンネルは、こちらの手順に沿って設定できます。

サンプル アラート ポリシー

CA Service モニタリングの一般的なユースケースでは、次のサンプル アラート ポリシーを使用できます。

アラート ポリシーの詳細については、ドキュメントをご覧ください。

CA の有効期限が 30 日後に切れる

このアラート ポリシーは、マネージド CA の期限切れの 30 日前に通知します。このポリシーは、Google Cloud コンソールのプロジェクト選択ツールで選択された Google Cloud プロジェクトに対して指標が表示される、すべてのプロジェクトのすべてのマネージド CA のアラート通知を作成します。指標の可視性については、指標のスコープについてをご覧ください。

Console

アラート ポリシーを作成して指標の値をモニタリングすると、指標が条件に違反した場合に通知できます。

  1. Google Cloud コンソールで、[アラート] ページに移動します。

    [アラート] に移動

    検索バーを使用してこのページを検索する場合は、小見出しが [Monitoring] である結果を選択します。

  2. 通知チャンネルを作成せずに通知を受け取る場合は、[EDIT NOTIFICATION CHANNELS] をクリックして、通知チャンネルを追加します。チャンネルを追加したら、[アラート] ページに戻ります。
  3. [アラート] ページで、[CREATE POLICY] をクリックします。
  4. 指標を選択するには、[指標を選択] メニューを開き、次の操作を行います。
    1. メニューを関連するエントリに限定するには、フィルタバーに「Certificate Authority」と入力します。結果が表示されない場合は、[Show only active resources & metrics] をオフに切り替えます。
    2. [リソースの種類] で [認証局] を選択します。
    3. [指標カテゴリ] で [Ca] を選択します。
    4. [指標] で [ca/cert_expiration] を選択します。
    5. [適用] を選択します。
  5. [次へ] をクリックします。
  6. [Configure alert trigger] ページの設定によって、アラートがトリガーされるタイミングが決まります。次のテーブルの設定を使用して、このページに入力します。
    [Configure alert trigger] ページ
    フィールド

    Condition type Threshold
    Alert trigger Any time series violates
    Threshold position Below threshold
    Threshold value 2592000000 ms
    Advanced Options: Retest window No retest
  7. [次へ] をクリックします。
  8. (省略可)アラート ポリシーに通知を追加するには、[通知チャネル] をクリックします。ダイアログで、メニューから 1 つ以上の通知チャンネルを選択し、[OK] をクリックします。
  9. (省略可)インシデントの自動クローズ期間を更新します。このフィールドは、指標データがない場合に Monitoring がインシデントを閉じるタイミングを決定します。
  10. (省略可)[Documentation] をクリックして、通知メッセージに追加する情報を入力します。
  11. [アラート名] をクリックして、アラート ポリシーの名前を入力します。
  12. [Create Policy] をクリックします。
詳細については、アラート ポリシーをご覧ください。

gcloud

次のポリシーを ca-expiration-policy.yaml という名前のファイルに貼り付けます。

combiner: OR
conditions:
- conditionThreshold:
    aggregations:
    - alignmentPeriod: 60s
      perSeriesAligner: ALIGN_MEAN
    comparison: COMPARISON_LT
    duration: 0s
    filter: metric.type="privateca.googleapis.com/ca/cert_expiration" resource.type="privateca.googleapis.com/CertificateAuthority"
    thresholdValue: 2592000.0
    trigger:
      count: 1
  displayName: CA certificate expiration
displayName: CA expiring in 30 days
enabled: true

次のコマンドを使用してアラート ポリシーを作成します。

gcloud alpha monitoring policies create --policy-from-file ca-expiration-policy.yaml

アラート ポリシーを作成したら、通知チャンネルの管理の手順に沿って、必要に応じて既存の通知チャンネルを作成または更新します。既存のアラート ポリシーに通知チャンネルを追加するには、ポリシー内の通知チャンネルの更新に従います。

証明書作成の失敗率が高い

このアラート ポリシーは、CA ポリシーまたは検証エラーが原因で証明書作成エラーの割合が 0.2 のしきい値を超えたときに通知します。このポリシーは、Google Cloud コンソールのプロジェクト選択ツールで選択された Google Cloud プロジェクトに対して指標が表示される、すべてのプロジェクトのすべてのマネージド CA のアラート通知を作成します。指標の可視性については、指標のスコープについてをご覧ください。

gcloud

次のポリシーを cert-create-failure.yaml という名前のファイルに貼り付けます。

displayName: High rate of certificate creation failures
enabled: true
combiner: OR
conditions:
- conditionThreshold:
    filter: metric.type="privateca.googleapis.com/ca/cert/create_failure_count" resource.type="privateca.googleapis.com/CertificateAuthority"
    aggregations:
    - alignmentPeriod: 300s
      crossSeriesReducer: REDUCE_SUM
      groupByFields:
      - resource.label.resource_container
      - resource.label.location
      - resource.label.certificate_authority_id
      perSeriesAligner: ALIGN_DELTA
    denominatorFilter: metric.type="privateca.googleapis.com/ca/cert/create_request_count"
      resource.type="privateca.googleapis.com/CertificateAuthority"
    denominatorAggregations:
    - alignmentPeriod: 300s
      perSeriesAligner: ALIGN_DELTA
    comparison: COMPARISON_GT
    duration: 0s
    thresholdValue: 0.2
    trigger:
      count: 1
  displayName: 'Ratio: Certificate creation CA policy error count / Total certificate creation request count'

次のコマンドを使用してアラート ポリシーを作成します。

gcloud alpha monitoring policies create --policy-from-file cert-create-failure.yaml

アラート ポリシーを作成したら、通知チャンネルの管理の手順に沿って、必要に応じて既存の通知チャンネルを作成または更新します。既存のアラート ポリシーに通知チャンネルを追加するには、ポリシー内の通知チャンネルの更新に従います。

このポリシーの機能

このポリシーは、合計リクエストに対する失敗の割合を計算します。ポリシーは、5 分間のアライメント期間を超えて、比率が 20%を超えると(つまり、比率が 0.2 よりも大きくなると)、アラート通知をトリガーします。

条件のフィルタは、証明書作成の失敗数(比率の分子)を選択します。この指標には追加のラベルがあるため、分子は、プロジェクト、ロケーション、CA リソース ID ごとに集計されます。条件の分母フィルタは、証明書作成リクエストの数を選択します。

条件の許容期間が 0 秒であるため、しきい値に達すると、ポリシーはアラート通知をすぐにトリガーします。このポリシーはトリガー カウント 1 を使用します。これは、アラート通知をトリガーする条件に違反する必要のある時系列の数です。

ゲージ指標のモニタリング

ゲージ指標は、特定の時点での値を測定します。たとえば、privateca.googleapis.com/ca/resource_stateprivateca.googleapis.com/kms/key_issue はゲージ指標です。これらの指標はブール値を使用しつつ、ラベルを使用して追加情報を提供します。たとえば、privateca.googleapis.com/ca/resource_state は、CA の状態が有効かどうかに対してブール値を使用しますが、実際のリソースの状態にはラベル state を使用します。

ブール値を使用するゲージ指標をモニタリングする場合は、COUNT アグリゲータを使用してアラートしきい値を作成することをおすすめします。SUM アグリゲータはブール値のみを合計するのに対し、COUNT アグリゲータは時系列の数を合計します。たとえば、DISABLED 状態にある CA の数を決定する場合、state=DISABLED のフィルタを作成する必要があります。COUNT アグリゲータを使用して、この条件に一致する CA の数を特定します。

Cloud Monitoring の費用

CA Service のモニタリングに費用は発生しません。

次のステップ