Looker(Google Cloud コア)インスタンスのメンテナンス ポリシーを管理する

Looker(Google Cloud コア)は、メンテナンス期間を月に 1 回スケジュールして、インスタンスのアップグレードを行います。メンテナンス期間中は、インスタンスが再起動され、一時的にインスタンスにアクセスできなくなります。インスタンスのメンテナンスの時間枠は、メンテナンスが行われる曜日と時間帯の形式で指定できます。優先メンテナンスの時間枠を指定しない場合は、新しい Looker(Google Cloud コア)バージョンのロールアウトから 2 週間以内にアップグレードが行われます。メンテナンス拒否期間 を指定して、指定した期間にメンテナンスが実行されないようにすることもできます。

Looker(Google Cloud コア)インスタンスが次のサポート対象の Looker バージョンにアップグレードされる期間に メンテナンス拒否期間 を指定すると、Looker(Google Cloud コア)インスタンスで使用できる機能が、 Google Cloud コンソールに表示されるアップグレード リリースで使用できる設定と異なる場合があります。

このドキュメント ページでは、定期メンテナンスに関する情報の確認、メンテナンスの優先時間枠の設定、メンテナンス拒否期間の指定、Looker(Google Cloud コア)インスタンスの今後のメンテナンス更新に関する通知の構成について説明します。

リリース チャンネルとメンテナンス ポリシー

Looker(Google Cloud コア)インスタンスがリリース チャンネルに登録されている場合、構成できるメンテナンス設定はインスタンスのリリース チャンネルによって異なります。

  • Rapid チャンネル: メンテナンスの時間枠とメンテナンス拒否期間は対象外です。Rapid チャンネルに登録すると、インスタンスに以前設定されていたメンテナンスの時間枠またはメンテナンス拒否期間は削除されます。
  • Regular チャンネル: 優先メンテナンスの時間枠とメンテナンス拒否期間を指定できます。
  • チャンネルなし: 優先メンテナンスの時間枠とメンテナンス拒否期間を指定できます。

必要なロール

Looker(Google Cloud コア)インスタンスのメンテナンス設定の構成に必要な権限を取得するには、インスタンスが作成されたプロジェクトでLooker 管理者 roles/looker.admin)の IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

メンテナンスの設定

Looker(Google Cloud コア)では、一連のメンテナンス設定を使用してメンテナンス更新を構成できます。

ダウンタイムを短くし、インスタンスへの影響を最小限に抑えるようにメンテナンスを構成できます。以下を構成できます。

  • メンテナンスの時間枠: Looker(Google Cloud コア)がメンテナンスをスケジュールする曜日と時間。メンテナンスの時間枠は 1 時間です。

  • メンテナンス拒否期間: Looker(Google Cloud コア)がメンテナンスをスケジュールしない日数のブロック。メンテナンス拒否期間は最長 60 日間まで設定できます。任意の 2 つのメンテナンス拒否期間の間に、メンテナンスを許可する日数を少なくとも 14 日間設定する必要があります。

メンテナンス ポリシーは、Looker(Google Cloud コア)インスタンスを作成するとき、または既存のインスタンスの構成を編集することで更新できます。

メンテナンスのための優先時間枠を設定する

Looker(Google Cloud コア)がメンテナンスをスケジュールする優先時間枠を指定するには、次のいずれかのオプションを選択します。

Console

  1. コンソール Google Cloud で、Looker(Google Cloud コア)インスタンスを作成するか、既存の Looker(Google Cloud コア)インスタンスの構成を編集します。

  2. [メンテナンスの時間枠] の [優先メンテナンス] セクションで、メンテナンスの時間枠として以下の設定を構成します。

    • 曜日: インスタンスが更新される曜日

    • 時間枠: インスタンスのメンテナンスが開始されるおおよその時間帯

  3. [保存] をクリックします。

インスタンスを Rapid リリース チャンネルに登録している場合、このオプションは Google Cloud コンソールで使用できません。

gcloud

インスタンスを作成する場合は gcloud looker instances create コマンドを使用し、インスタンスを更新する場合は gcloud looker instances update コマンドを使用し、次のパラメータを含めます。

--maintenance-window-day=MAINTENANCE_WINDOW_DAY
--maintenance-window-time=MAINTENANCE_WINDOW_TIME

次のように置き換えます。

  • MAINTENANCE_WINDOW_DAY: インスタンスが更新される曜日。fridaymondaysaturdaysundaythursdaytuesdaywednesday のいずれかである必要があります。
  • MAINTENANCE_WINDOW_TIME: メンテナンスの時間枠の開始時間(UTC 24 時間形式)(例: 13:0017:45)。

リリース チャンネルのプレビュー機能の Rapid チャンネルに Looker(Google Cloud コア)インスタンスを登録している場合、そのインスタンスのメンテナンスの時間枠を設定することはできません。

メンテナンスの時間枠を設定してから、設定の変更が有効になるまでに最長で 1 週間かかることがあります。

メンテナンス拒否期間を構成する

スケジュールされたメンテナンスを後で延期する場合は、インスタンスのメンテナンス拒否期間を変更できます。メンテナンス拒否期間は最長 60 日間まで設定できます。

任意の 2 つのメンテナンス拒否期間の間に、メンテナンスを許可する日数を少なくとも 14 日間設定する必要があります。

Looker(Google Cloud コア)がメンテナンスを行わない優先時間枠を指定するには、次のいずれかのオプションを選択します。

Console

  1. コンソールで、 Google Cloud Looker(Google Cloud コア)インスタンスを作成するか、既存の Looker(Google Cloud コア)インスタンスの構成を編集します

  2. [メンテナンス拒否期間] セクションで、メンテナンス拒否期間として次の設定を構成します。

  • 開始日: メンテナンスが行われない期間の開始日を選択します。

  • 終了日: メンテナンスが行われない期間の終了日を選択します。

  • [開始時刻/終了時刻]: [メンテナンス拒否期間] の開始日時([開始日] で指定した日付)から終了([終了日] に指定した日付)する時間を定義します。

  1. [保存] をクリックします。

インスタンスを Rapid リリース チャンネルに登録している場合、このオプションは Google Cloud コンソールで使用できません。

gcloud

インスタンスを作成する場合は gcloud looker instances create コマンドを使用し、インスタンスを更新する場合は gcloud looker instances update コマンドを使用し、次のパラメータを含めます。

--deny-maintenance-period-end-date=DENY_MAINTENANCE_PERIOD_END_DATE
      --deny-maintenance-period-start-date=DENY_MAINTENANCE_PERIOD_START_DATE
      --deny-maintenance-period-time=DENY_MAINTENANCE_PERIOD_TIME

次のように置き換えます。

  • DENY_MAINTENANCE_PERIOD_START_DATE: 拒否期間の開始日(YYYY-MM-DD 形式)。
  • DENY_MAINTENANCE_PERIOD_END_DATE: 拒否期間の終了日(YYYY-MM-DD 形式)。
  • DENY_MAINTENANCE_PERIOD_TIME: 開始時刻と終了時刻(UTC 24 時間形式)(例: 13:0017:45)。

リリース チャンネルのプレビュー機能の Rapid チャンネル に Looker(Google Cloud コア)インスタンスを登録している場合、そのインスタンスのメンテナンス拒否期間を設定することはできません。

メンテナンスの例

たとえば、本番環境インスタンスのメンテナンス設定を次のように設定できます。

  • メンテナンスの時間枠: 日曜午前 12 時~午前 1 時(米国東部時間)
  • メンテナンス拒否期間: 12 月 1 日午後 10 時~1 月 15 日午後 10 時

今後のメンテナンスに関する通知

メンテナンスが予定されている少なくとも 1 週間前に、今後のメンテナンスに関する通知をメールで受け取るよう設定できます。通知のメールフィルタを設定する場合、メールのタイトルは「[Looker (Google Cloud core) Advanced Maintenance Notification] になります。インスタンスはメンテナンスがスケジュール設定されています。インスタンスはメンテナンスの予定です。 」となります。

デフォルトでは、メンテナンス通知は送信されません。今後のメンテナンス更新に関する通知を受け取るには、次の両方の手順を完了する必要があります。

  1. メンテナンスの時間枠を設定します
  2. プロジェクト レベルで メンテナンス通知を有効にするか、ログベースのアラートを設定します
  3. スケジュールされたメンテナンスに関する通知を受け取るには、Looker(Google Cloud コア)インスタンスの次のスケジュールされたメンテナンス アップデートの 7 日前までに、両方の手順を完了する必要があります。

コンソール Google Cloud で構成された通知は、 Google アカウントに関連付けられているメールアドレスに送信されます。カスタムメール エイリアス(チームのメール エイリアスなど)を使用できます。

Looker(Google Cloud コア)インスタンスで認証に SAML または OpenID Connect(OIDC) を使用している場合、または Slack、PagerDuty、カスタム Webhook などのサードパーティの コミュニケーション チャネルに通知をルーティングする場合は、 ログベースのアラートを設定できます

特定のプロジェクトでメンテナンスの時間枠が設定されているすべての Looker(Google Cloud コア)インスタンスのメンテナンス通知を有効にできます。インスタンスごとに 1 つの通知が届きます。

メンテナンス通知をオプトインする

コンソール Google Cloud でメンテナンス通知をオンにする手順は次のとおりです。

  1. コンソールの Google Cloud [コミュニケーション] ページに移動します。

    通信

  2. [プロダクトに関する通知] タブを選択します。

  3. プルダウン メニューからプロジェクトを選択します。

  4. Looker(Google Cloud コア)の行で、メールの切り替えボタンを [オン] に設定します。

メンテナンス イベントのログベースのアラートを設定する

Workforce Identity 連携を使用して Google Cloud を認証する場合、 Google Cloud コンソールは連携アカウントにメンテナンス通知を送信できません。また、Slack、PagerDuty、カスタム Webhook などのサービスに通知をルーティングすることもできます。このようなシナリオで通知を受け取るには、Cloud Logging でログベースのアラート ポリシーを構成します。

Looker(Google Cloud コア)がメンテナンス更新をスケジュール、開始、完了、キャンセルすると、アクティビティ ログエントリが Logging に書き込まれます。 これらのログエントリに一致するアラート ポリシーを作成し、構成した通知チャネルに 通知を送信できます。

メンテナンス イベントのログベースのアラートを作成するには、ログ エクスプローラを使用してログベースのアラート ポリシーを作成するドキュメントの手順に沿ってアラート ポリシーを作成します。ポリシーで使用するクエリの例については、メンテナンス ログクエリをご覧ください。

メンテナンス ログクエリ

次のクエリを使用して、メンテナンス ライフサイクルのさまざまな段階でログベースのアラートを作成します。

LOOKER_INSTANCE_NAME は、Looker(Google Cloud コア)インスタンスの名前に置き換えます。

  • 事前通知(スケジュール済み): インスタンスのメンテナンスが スケジュールされると通知します。

    log_id("maintenance.googleapis.com/activity_log") AND
    resource.type = "gce_instance" AND
    labels.activity_type_name = "LookerRolloutAdvanced" AND
    labels.instance_id = "LOOKER_INSTANCE_NAME"
    
  • 開始通知: インスタンスでメンテナンスが開始されると通知します。

    log_id("maintenance.googleapis.com/activity_log") AND
    resource.type = "gce_instance" AND
    labels.activity_type_name = "LookerRolloutInProgress" AND
    labels.is_completed = "false" AND
    labels.is_failed = "false" AND
    labels.instance_id = "LOOKER_INSTANCE_NAME"
    
  • 完了通知(成功): メンテナンスが正常に完了すると通知します。

    log_id("maintenance.googleapis.com/activity_log") AND
    resource.type = "gce_instance" AND
    labels.activity_type_name = "LookerRolloutInProgress" AND
    labels.is_completed = "true" AND
    labels.is_failed = "false" AND
    labels.instance_id = "LOOKER_INSTANCE_NAME"
    
  • 失敗またはキャンセルされた通知: メンテナンスが失敗した場合、または キャンセルされた場合に通知します。

    log_id("maintenance.googleapis.com/activity_log") AND
    resource.type = "gce_instance" AND
    (labels.is_failed = "true" OR labels.activity_type_name = "LookerRolloutCanceled") AND
    labels.instance_id = "LOOKER_INSTANCE_NAME"
    

定期メンテナンスを確認する

インスタンスにメンテナンスがスケジュールされている場合は、次の手順でこれを表示できます。

  1. コンソールの Google Cloud [Looker(Google Cloud コア)] ページに移動します。

  2. 定期メンテナンスを表示するインスタンスの名前を選択します。

  3. インスタンスの構成の詳細を表示すると、[**詳細**] ページで以下の情報が表示されます。