Dataproc Metastore サービスを作成する

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

このページでは、Dataproc Metastore サービスの作成方法について説明します。

メタストアを作成したら、メタデータをサービスにインポートし、次のいずれかを接続してサービスを Hive メタストアとして使用できます。

始める前に

考慮事項

  • VPC ピアリング。メタストアを作成する前に、組織のポリシーの制約を設定して VPC ピアリングを制限しないでください。制限しない場合、メタストアの作成に失敗します。正しい VPC 構成の設定の詳細については、VPC ピアリングの制限の制約によりサービスの作成に失敗するをご覧ください。

  • VPC ネットワーク。メタストアを作成すると、使用している VPC ネットワークが Dataproc Metastore サービスに必要な RFC 1918 アドレスが不足している可能性があります。この問題の解決方法の詳細については、割り振られた IP 範囲の不足をご覧ください。

必要なロール

Dataproc Metastore の作成に必要な権限を取得するには、最小権限の原則に基づいて、プロジェクトに対して次の IAM ロールを付与するよう管理者に依頼してください。

  • Dataproc Metastore リソースに対する完全な制御権限を付与します(roles/metastore.editor
  • IAM ポリシー管理(roles/metastore.admin)を含む、すべての Dataproc Metastore リソースに対する完全アクセス権を付与します

ロールの付与の詳細については、アクセスの管理をご覧ください。

この事前定義ロールには、Dataproc Metastore の作成に必要な metastore.services.create 権限が含まれています。カスタムロールや他の事前定義ロールを使用して、この権限を取得することもできます。

Dataproc Metastore の特定のロールと権限の詳細については、IAM による Dataproc アクセスの管理をご覧ください。

Dataproc Metastore サービスを作成する

Dataproc Metastore サービスを作成する方法を次の手順で示します。

Console

  1. Google Cloud コンソールで、Dataproc Metastore ページを開きます。

    Google Cloud Console で Dataproc Metastore を開く

  2. Dataproc Metastore ページの上部にある [作成] ボタンをクリックします。[Create service] ページが開きます。

    [Create service] ページ
  3. [サービス名] フィールドに、サービスに固有の名前を入力します。

    命名規則については、リソースの命名規則をご覧ください。

  4. [Data location] を選択します。

  5. Hive の [Metastore version] を選択します。

    指定しない場合、Hive バージョン 3.1.2 が使用されます。詳細については、バージョン ポリシーをご覧ください。

  6. リリース チャンネルを選択します。

    指定しない場合、Stable が使用されます。詳細については、リリース チャンネルをご覧ください。

  7. ポートを入力します。

    これは、Dataproc Metastore Thrift インターフェースが利用可能な TCP ポートです。指定しない場合、ポート番号 9083 が使用されます。

  8. サービスティアを選択します。

    これはサービスのキャパシティに影響します。Developer はデフォルトのティアです。スケーラビリティが制限され、フォールト トレランスが得られないため、低コストの概念実証に適しています。Enterprise 階層は、柔軟なスケーラビリティ、フォールト トレランス、マルチゾーンの高可用性を提供します。Dataproc Metastore の負荷の高いワークロードに対応できます。

  9. ネットワークを選択します。

    サービスは、他の Metastore クライアントにアクセスするために、Dataproc クラスタなどの他の Metastore クライアントがアタッチされているのと同じネットワークにアタッチされる必要があります。指定しない場合、default ネットワークが使用されます。

    1. 省略可: [共有 VPC ネットワークを使用する] をクリックして、共有 VPC ネットワークのプロジェクト IDVPC ネットワーク名を入力します。詳細については、Dataproc Metastore を使用した VPC Service Controls をご覧ください。

    2. 省略可: [複数の VPC サブネットワークでサービスにアクセスできるようにする] をクリックし、[サブネットワーク] を選択します。最大で 5 つのサブネットワークを指定できます。

    3. [完了] をクリックします。

  10. 省略可: Data Catalog の同期を有効にします。詳細については、Dataproc Metastore から Data Catalog への同期をご覧ください。

  11. 省略可: サービスのメンテナンスの時間枠の [曜日] と [時間帯] を選択します。詳細については、メンテナンスの時間枠をご覧ください。

  12. 省略可: Kerberos keytab ファイルを有効にします。

    1. 切り替えボタンをクリックして、Kerberos を有効にします。

    2. [Secret] のリソース ID を選択するか入力します。

    3. 最新の [Secret のバージョン] を使用するか、古いバージョンを選択して使用します。

    4. Kerberos プリンシパルを入力します。

      これは、この Dataproc Metastore サービスに割り当てられるプリンシパルです。

    5. [krb5 config] ファイルをブラウジングします。

  13. 省略可: 暗号化タイプを選択します。

    デフォルトでは、Google が管理する暗号鍵が選択されています。

    [顧客管理の暗号鍵(CMEK)を使用する] をクリックして、顧客管理の暗号鍵を選択します。詳細については、顧客管理の暗号鍵の使用をご覧ください。

  14. 省略可: Hive Metastoreにマッピングを適用するには、[+ オーバーライドを追加] をクリックします。

  15. (省略可)エンドポイント プロトコルを選択します。

    デフォルトでは [Apache Thrift] が選択されています。さまざまなエンドポイントの詳細については、エンドポイント プロトコルの選択をご覧ください。

  16. (省略可)データベースの種類を選択します。

    [データベースの種類] で [MySQL] または [Spanner] を選択します。MySQL はデフォルトのデータベース タイプです。

    特定のデータベース タイプの選択の詳細については、データベースのタイプをご覧ください。

  17. 省略可: メタストア サービス リソースに別のメタデータを追加するには、[+ ラベルを追加] をクリックします。

  18. サービスを作成して開始するには、[送信] ボタンをクリックします。

    [Dataproc Metastore] ページに戻り、新しいサービスがリストに表示されていることを確認します。

gcloud

  1. 次のgcloud metastore services createコマンドを実行してサービスを作成します。

    gcloud metastore services create SERVICE \
        --location=LOCATION \
        --labels=k1=v1,k2=v2,k3=v3 \
        --network=NETWORK \
        --port=PORT \
        --tier=TIER \
        --hive-metastore-version=HIVE_METASTORE_VERSION \
        --release-channel=RELEASE_CHANNEL \
        --consumer-subnetworks="projects/PROJECT_ID/regions/LOCATION/subnetworks/SUBNET1, projects/PROJECT_ID/regions/LOCATION/subnetworks/SUBNET2"
        --hive-metastore-configs=K1=V1,K2=V2 \
        --kerberos-principal=KERBEROS_PRINCIPAL \
        --krb5-config=KRB5_CONFIG \
        --keytab=CLOUD_SECRET
        --encryption-kms-key=KMS_KEY
    

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

    • SERVICE: 新規サービスの名前。
    • LOCATION: Google Cloud リージョンを指します。デフォルトのロケーションを設定することもできます。
    • k1=v1,k2=v2,k3=v3: 使用されるラベル。
    • NETWORK: サービスがアクセスできる VPC ネットワークの名前。別のサービスに属するプロジェクトに属している VPC ネットワークを使用する場合、projects/HOST_PROJECT/global/networks/NETWORK_ID のように相対的なリソース名全体を指定する必要があります。
    • PORT: メタストア Thrift インターフェースを使用可能な TCP ポート。デフォルト: 9083。
    • TIER: 新しいサービスの階層の容量。
    • HIVE_METASTORE_VERSION: このロケーションで新しいメタストア サービスを作成するときに使用できる Hive メタストアのバージョン。サーバーでは、リスト内の 1 つの HiveMetastoreVersion が必ず is_default に設定されることを保証されます。
    • RELEASE_CHANNEL: サービスのリリース チャンネル。
    • SUBNET1SUBNET2: 省略可。サービスにアクセスできるサブネットワークのリスト。サブネットワークの ID、完全修飾 URL、相対名を指定できます。--network が指定されている場合、--consumer-subnetworks は指定できません。
    • K1=V1,K2=V2: 省略可: 使用される Hive メタストア構成ファイル。
    • KERBEROS_PRINCIPAL: 省略可: keytab と KDC の両方に存在する Kerberos プリンシパル。一般的なプリンシパルは「primary/instance@REALM」の形式ですが、厳密な形式はありません。
    • KRB5_CONFIG: 省略可: krb5.config ファイルには、KDC と Kerberos レルムの情報を指定します。このファイルには、レルムと Kerberos アプリケーションの KDC のロケーションとデフォルトが含まれています。
    • CLOUD_SECRET: 省略可: Secret Manager のシークレット バージョンの相対的なリソース名。
    • KMS_KEY: 鍵のリソース ID を参照します。
  2. 正常に作成されたことを確認します。

REST

API Explorer を使用し、API の手順に従ってサービスを作成します。

次のステップ