0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

DatabricksのUnity Catalogメタストアを作成してみた

Last updated at Posted at 2025-02-17

前提

・利用環境:Databricks、AWS

参考ヘルプ

目次

  1. メタストア用のS3を作成
  2. IAMロールを作成
  3. メタストアを作成

手順

1.メタストア用のS3を作成

1)AWS上で、S3を作成

image.png

2)「バケットを作成」をクリック

image.png

3)下記の内容を参考にバケットを作成

  • 例:
    • AWSリージョン:ap-northeast-1
    • バケットタイプ:汎用
    • バケット名:ho-db-uc-ms
    • その他:デフォルトのまま
      image.png

2.IAMロールを作成

1)AWS上で、IAMロールをクリック

image.png

2)「ロール」→「ロールを作成」をクリック

image.png

3)「カスタム信頼ポリシー」を選択し、カスタム信頼ポリシーに以下の内容を貼り付ける

  • 次の内容を置き換える
    • "0000":DatabricksのアカウントID
{
  "Version": "2012-10-17",
  "Statement": [{
    "Effect": "Allow",
    "Principal": {
      "AWS": [
        "arn:aws:iam::414351767826:role/unity-catalog-prod-UCMasterRole-14S5ZJVKOTYTL"
      ]
    },
    "Action": "sts:AssumeRole",
    "Condition": {
      "StringEquals": {
        "sts:ExternalId": "0000"
      }
    }
  }]
}

image.png

4)「次へ」→「次へ」→ロール名を入力し、「ロールを作成」をクリック

  • 例:
    • ロール名:ho-db-uc-role
    • 説明:ho-db-uc-role

5)作成したロールを開き、ARNをコピーする

6)「信頼関係」タブ→「信頼ポリシーを編集」をクリック

image.png

7)プリンシパルを追加の横の「追加」をクリック

image.png

8)「プリンシパルタイプ」から「IAM Roles」を選択し、コピーしたARNを貼り付ける

image.png

9)「プリンシパルを追加」をクリック

10)「ポリシーを更新」をクリック

11)「許可」タブ→「許可を追加」→「インラインポリシーを作成」をクリック

image.png

12)「JSON」タブをクリック

image.png

13)以下のポリシーを貼り付けし、下記を参考に置き換える

  • 次の内容を置き換える
    • <BUCKET>:上の手順で作成したバケット名
    • arn:aws:iam::<AWS-ACCOUNT-ID>:role/<AWS-IAM-ROLE-NAME>:上の手順で作成したIAMロールのARN
    • KMSの部分:暗号化キーを設定しない場合は、{}塊を削除する
{
  "Version": "2012-10-17",
  "Statement": [
      {
          "Action": [
              "s3:GetObject",
              "s3:PutObject",
              "s3:DeleteObject",
              "s3:ListBucket",
              "s3:GetBucketLocation"
          ],
          "Resource": [
              "arn:aws:s3:::<BUCKET>/*",
              "arn:aws:s3:::<BUCKET>"
          ],
          "Effect": "Allow"
      },
      {
          "Action": [
              "kms:Decrypt",
              "kms:Encrypt",
              "kms:GenerateDataKey*"
          ],
          "Resource": [
              "arn:aws:kms:<KMS-KEY>"
          ],
          "Effect": "Allow"
      },
      {
          "Action": [
              "sts:AssumeRole"
          ],
          "Resource": [
              "arn:aws:iam::<AWS-ACCOUNT-ID>:role/<AWS-IAM-ROLE-NAME>"
          ],
          "Effect": "Allow"
      }
    ]
}

14)「次へ」をクリック

15)ポリシー名を入力し、「ポリシーの作成」をクリック

    • ポリシー名:ho-db-uc-ms-policy
      image.png

3.メタストアを作成

1)Databricksの管理画面にサインインする

2)「カタログ」→「メタストアを作成する」をクリック

image.png

3)以下の内容を設定し、「作成」をクリック
    • 名前:ho-db-uc-ms
    • リージョン:Tokyo(ap-northeast-1)
    • S3バケットパス:s3://ho-db-uc-ms/
    • IAMロールARN:上の手順で作成したIAMロールのARN
      image.png
4)「IAMロールを設定する」画面で、「IAMロールが設定されました」をクリック
5)アタッチするワークスペースを割り当てる。(ない場合は、Skip)をクリック

image.png

6)「おめでとうございます」画面で、「閉じる」をクリック

以上

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?