ワークスペースデプロイ用のS3バケットを作成する

注:

これらの手順は、2023 年 11 月 8 日より前に作成されたアカウントに適用されます。 Databricks アカウントが 2023 年 11 月 8 日以降に作成された場合は、「 ワークスペースを手動で作成する (新しい Databricks アカウント)」を参照してください。

この記事では、カスタムDatabricksワークスペースデプロイメント用のルートストレージを作成および構成する方法について説明します。AWSクイックスタートテンプレートまたはDatabricks Terraformプロバイダーを使用してワークスペースをデプロイすることで、このステップとワークスペース作成全体を自動化することもできます。

要件

ルートストレージ作成のベストプラクティス

ワークスペースデプロイメントに使用するバケットは、ワークスペースのルートストレージと呼ばれます。ルートストレージは、本番環境の顧客データの保存には使用しないでください。ルートストレージを使用するのではなく、本番データ用に追加のS3バケットやその他のデータソースを作成し、任意でそれらのDBFSマウントポイントを作成してください。

また、S3バケットを作成する前に、以下のベストプラクティスを確認してください。

  • S3バケットは、Databricksワークスペースデプロイメントと同じAWSリージョンに存在する必要があります。

  • Databricksでは、他のリソースやサービスと共有されていないDatabricks専用のS3バケットを使用することをお勧めしています。

  • レガシーDatabricksワークスペースのバケットを再利用しないでください。たとえば、E2に移行する場合は、E2環境用に新しいAWSバケットを作成します。

ステップ1:ストレージ構成を作成し、バケットポリシーを生成する

  1. アカウントコンソールで、「クラウドリソース」をクリックします。

  2. ストレージ構成」をクリックします。

  3. ストレージ構成の追加」をクリックします。

  4. ストレージ構成名」フィールドに、人間にとってわかりやすい名称で、新しいストレージ構成の名前を入力します。

  5. バケット名」フィールドに、作成するS3バケットの名前を入力します。

    重要

    バケット名にドット表記(.)を含めることはできません。グローバルに一意である必要があり、スペースや大文字を含めることはできません。バケットの命名方法の詳細については、「AWSバケットの命名規則」を参照してください。

  6. ポリシーを生成」をクリックし、生成されたポリシーをコピーします。次のステップでは、このポリシーをAWSのS3バケット構成に追加します。

  7. 追加」をクリックします。

ステップ2:S3バケットを作成する

  1. 管理者権限を持つユーザーとしてAWSコンソールにログインし、S3サービスに移動します。

  2. バケットを作成」ボタンをクリックします。

  3. バケット名」に、手順1で作成したバケットの名前を入力します。

  4. Databricksワークスペースデプロイメントに使用するのものと同じAWSリージョンを選択します。

  5. バケットを作成」をクリックします。

  6. 権限」タブをクリックします。

  7. バケットポリシー」セクションで、「編集」をクリックします。

  8. お客様が生成し、Databricksからコピーしたバケットポリシーを貼り付けます。

  9. バケットを保存します。

検証エラーを解決する

バケットポリシーの権限が反映されるまでに数分かかる場合があります。権限が原因で検証に失敗した場合は、この手順をやり直してください。

正しい権限を確認する

バケットのストレージ構成を作成するときに、Databricks はバケットが正しいアクセス許可で設定されているかどうかを確認します。これらのチェックの 1 つは、バケットにファイルを書き込み、すぐに削除します。 ただし、削除オペレーションが失敗した場合、一時オブジェクトはバケットのルートに残ります。 オブジェクト名は databricks-verification-<uuid>で始まります。

このオブジェクトが表示された場合は、バケットポリシーの構成ミスが原因である可能性があります。DatabricksにはPUT権限がありますが、DELETE権限はありません。バケットポリシーを確認し、権限が正しく構成されていることを確認します。

ストレージ構成を削除する

ストレージ構成は、作成後に編集することはできません。構成に不正なデータが含まれている場合、またはそのデータが不要になった場合は、ストレージ構成を削除します。

  1. アカウントコンソール」で、「クラウドリソース」をクリックします。

  2. ストレージ構成」をクリックします。

  3. ストレージの構成行で、「アクション」メニューアイコンをクリックし、「削除」を選択します。

    ストレージ構成名をクリックし、ポップアップダイアログで「削除」をクリックすることもできます。

  4. 確認ダイアログで、「削除の確認」をクリックします。

顧客管理キーを使用してルートS3バケットを暗号化する(オプション)

カスタマーマネージドキーを使用してルート S3 バケットを暗号化できますが、 これにはアカウント API を使用する必要があります。

アカウント API を使用して新しいワークスペースを作成するときに暗号化キーを追加することも、後でキーを追加することもできます。 詳細については、 「ステップ 5: 顧客管理キー (オプション)および暗号化用の顧客管理キーを構成する」を参照してください。