Looker(Google Cloud コア)インスタンスのスケジュールされたエクスポート ジョブを作成する

Looker(Google Cloud コア)インスタンスのスケジュールされたエクスポート ジョブを構成して、データ、構成、コンテンツを定期的にバックアップできます。スケジュールされたエクスポートは、設定した開始時刻から 24 時間ごとに実行され、エクスポートされたデータを Cloud Storage バケットに保存します。このプロセス中に Looker(Google Cloud コア)インスタンスのダウンタイムは発生しません。

スケジュールされたエクスポートには、インスタンスのすべてのデータ、構成、コンテンツが含まれます。ただし、次の例外があります。

  • BigQuery データはエクスポートされません。
  • Secret Manager データはエクスポートされません。

  • Data Studio レポートはエクスポートされません。

  • コンソール設定 Google Cloud はエクスポートされません。コンソール設定は、インスタンスごとに Google Cloud コンソールで行う必要があります。ただし、Looker(Google Cloud コア)アプリケーション内の Looker [管理者] パネルの設定はエクスポートされます。

  • インスタンスに保存されている OAuth トークンはエクスポートされません。OAuth が個々のデータベース接続に使用されている場合、インポート後に各ユーザーは再度ログインし、OAuth を使用するデータベース接続のトークンを更新する必要があります。

  • エクスポートを作成したインスタンスとは異なるネットワーク設定を使用する Looker(Google Cloud コア)インスタンスにエクスポートしてインポートする場合は、外部サービスへの接続を異なる方法で構成する必要がある場合があります。

  • プロジェクトのインスタンスからのエクスポートが別のプロジェクトのインスタンスに移動された場合は、ユーザーにインスタンスへのアクセス権を付与するための IAM 権限 を新しいプロジェクトで設定する必要があります。 Google Cloud

スケジュールされたエクスポート プロセスは、インスタンスのサイズに応じて数分から数時間かかります。スケジュールされたエクスポート プロセスが実行されている間は、インポート オペレーション1 回限りの エクスポートは使用できません。

スケジュールされたエクスポート ジョブを設定したら、エクスポートされたデータを毎日バックアップ インスタンスにインポートするスクリプトを設定できます。

必要なロール

Looker(Google Cloud コア)のスケジュールされたエクスポート ジョブを作成するために必要な権限を取得するには、インスタンスが作成されたプロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

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

始める前に

  1. エクスポート アーティファクトを 保存する Cloud Storage バケットを作成します。
  2. Cloud Key Management Service で 顧客管理の暗号鍵(CMEK)を作成します。インスタンスで CMEK を使用していない場合でも、スケジュールされたエクスポートのデータを暗号化するために必要です。CMEK 鍵は、Looker(Google Cloud コア)インスタンスとは異なるリージョンに配置するか、グローバル鍵にする必要があります。
  3. Looker(Google Cloud コア)インスタンスのサービス アカウントを 特定します。
  4. インスタンスのサービス アカウントに、次の必須の Identity and Access Management(IAM)ロールと権限を付与します。
    • エクスポートを保存する Cloud Storage バケットに対するroles/storage.objectAdmin roleを付与します。
    • データの暗号化に使用する CMEK 鍵に対する roles/cloudkms.cryptoKeyEncrypterDecrypter ロール を付与します。
    • または、次の権限を持つカスタムロールを作成することもできます。
      • storage.objects.create
      • storage.objects.delete
      • cloudkms.cryptoKeyVersions.useToEncrypt
      • cloudkms.cryptoKeyVersions.useToDecrypt

スケジュールされたエクスポート ジョブを構成する

スケジュールされたエクスポート ジョブは、 Google Cloud コンソールまたは gcloudを使用して構成できます。

Console

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

    [Looker インスタンス] に移動

  2. エクスポート ジョブをスケジュールするインスタンスの名前をクリックします。

  3. [エクスポート] タブをクリックします。

  4. [スケジュール エクスポート ジョブ] セクションを開き、次の情報を入力します。

    1. 開始時間: 毎日の エクスポートを実行する時刻(ローカル時間(HH:MM))。
    2. Cloud Storage バケット: Cloud Storage バケットの URI( 例: gs://bucket-name/export-path)。
    3. Cloud KMS 鍵: インスタンス データの暗号化に使用する Cloud Key Management Service 鍵を選択します。
  5. [スケジュールを設定] をクリックします。

gcloud

  1. 定期的なエクスポートを構成するには、次の gcloud コマンドを実行します。
gcloud looker instances update INSTANCE_NAME \
    --project=PROJECT_ID \
    --region=REGION \
    --periodic-export-gcs-uri="gs://BUCKET_NAME/EXPORT_PATH" \
    --periodic-export-kms-key="KMS_KEY_NAME" \
    --periodic-export-start-time="TIME"

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

  • INSTANCE_NAME: Looker(Google Cloud コア)インスタンスの名前。
  • PROJECT_ID:実際の Google Cloud プロジェクト ID
  • REGION: インスタンスが配置されているリージョン。
  • BUCKET_NAME: Cloud Storage バケットの名前。
  • EXPORT_PATH: エクスポート アーティファクトのバケット内のパス。
  • KMS_KEY_NAME: CMEK 鍵の完全なリソース名
  • TIME: 毎日のエクスポートを実行する時刻(UTC(HH:MM))。

エクスポート構成を確認する

スケジュールを設定すると、[インスタンスの詳細] ページでスケジュールされたエクスポート ジョブの構成を表示できます。

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

    [Looker インスタンス] に移動

  2. インスタンスの名前をクリックします。

  3. [インスタンスの詳細] ページで、[エクスポート スケジュール] 構成を確認します。これには、毎日スケジュールされた開始時刻(ローカル時間)が含まれます。開始時刻には、インスタンスの [エクスポート] ページへのリンクが含まれています。

定期的なエクスポートを停止する

定期的なエクスポートを停止するには、構成フィールドをクリアします。

Console

  1. コンソール Google Cloud で [インスタンス] ページに移動します。

    [Looker インスタンス] に移動

  2. インスタンスの名前をクリックします。

  3. [エクスポート] タブをクリックします。

  4. [定期的なエクスポートのスケジュールを設定] セクションで、 [Cloud Storage バケット]、[顧客管理の暗号鍵]、 および [時間] フィールドの値をクリアします。

  5. [スケジュールをクリア] をクリックします。

gcloud

  1. 定期的なエクスポートを停止するには、次の gcloud コマンドを実行します。
gcloud looker instances update INSTANCE_NAME \
    --project=PROJECT_ID \
    --region=REGION \
    --clear-periodic-export-config

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

  • INSTANCE_NAME: Looker(Google Cloud コア)インスタンスの名前。
  • PROJECT_ID:実際の Google Cloud プロジェクト ID
  • REGION: インスタンスが配置されているリージョン。

次のステップ