ワークスペースのデプロイ用の S3 バケットを作成する
この記事では、カスタム Databricks ワークスペース デプロイのルート ストレージを作成および構成する方法について説明します。 また、 AWS クイックスタートテンプレート または Databricks Terraform プロバイダー を使用してワークスペースをデプロイすることで、この手順とワークスペース全体の作成を自動化することもできます。
必要条件
- Databricks アカウント管理者である必要があります。
ルートストレージ作成のベストプラクティス
ワークスペースのデプロイに使用するバケットは、ワークスペースのルートストレージと呼ばれます。 ルートストレージを使用して本番運用 顧客データを保存しないでください。 代わりに、本番運用データ用に追加の S3 バケットまたはその他のデータソースを作成し、必要に応じてそれらのDBFSマウントポイントを作成します。
また、S3バケットを作成する前に、以下のベストプラクティスを確認してください。
- S3バケットは、Databricksワークスペースデプロイメントと同じAWSリージョンに存在する必要があります。
- Databricksでは、他のリソースやサービスと共有されていないDatabricks専用のS3バケットを使用することをお勧めしています。
- レガシーDatabricksワークスペースのバケットを再利用しないでください。たとえば、E2に移行する場合は、E2環境用に新しいAWSバケットを作成します。
ステップ 1: ストレージ設定を作成し、バケットポリシーを生成する
-
アカウントコンソールで、「 クラウドリソース 」をクリックします。
-
「 ストレージ構成 」をクリックします。
-
「 ストレージ構成の追加 」をクリックします。
-
「 ストレージ構成名 」フィールドに、人間にとってわかりやすい名称で、新しいストレージ構成の名前を入力します。
-
「 バケット名 」フィールドに、作成するS3バケットの名前を入力します。
バケット名にドット表記(.
)を含めることはできません。グローバルに一意である必要があり、スペースや大文字を含めることはできません。バケットの命名ガイドの詳細については、AWSバケットの命名規則を参照してください。
-
「 ポリシーを生成 」をクリックし、生成されたポリシーをコピーします。次のステップでは、このポリシーをAWSのS3バケット構成に追加します。
-
[ 追加 ] をクリックします。
ステップ 2: S3 バケットを作成する
- 管理者権限を持つユーザーとしてAWSコンソールにログインし、 S3 サービスに移動します。
- 「 バケットを作成 」ボタンをクリックします。
- 「 バケット名 」に、手順1で作成したバケットの名前を入力します。
- Databricksワークスペースデプロイメントに使用するのものと同じAWSリージョンを選択します。
- 「 バケットを作成 」をクリックします。
- 「 権限 」タブをクリックします。
- 「 バケットポリシー 」セクションで、「 編集 」をクリックします。
- お客様が生成し、Databricksからコピーしたバケットポリシーを貼り付けます。
- バケットを保存します。
オブジェクトレベルのイベントログを有効にする (推奨)
Databricksでは、ルートストレージバケットについて、S3オブジェクトレベルのロギングを有効にすることを強くお勧めしています。これにより、発生する可能性のある問題を迅速に調査できます。 S3オブジェクトレベルのロギングにより、AWSの使用コストが増加する可能性があることに注意してください。
手順については、S3バケットとオブジェクトのCloudTrailイベントロギングに関するAWSのドキュメントを参照してください。
検証エラーの解決
バケットポリシーの権限が反映されるまでに数分かかる場合があります。権限が原因で検証に失敗した場合は、この手順をやり直してください。
正しい権限を確認する
バケットのストレージ設定を作成するとき、Databricks はバケットが正しい権限で設定されているかどうかを確認します。これらのチェックの 1 つは、バケットにファイルを書き込み、すぐに削除します。 ただし、削除オペレーションが失敗した場合、一時オブジェクトはバケットのルートに残ります。 オブジェクト名は databricks-verification-<uuid>
で始まります。
このオブジェクトが表示された場合は、バケットポリシーの構成ミスが原因である可能性があります。DatabricksにはPUT権限がありますが、DELETE権限はありません。バケットポリシーを確認し、権限が正しく構成されていることを確認します。
ストレージ設定の削除
ストレージ構成は、作成後に編集することはできません。構成に不正なデータが含まれている場合、またはそのデータが不要になった場合は、ストレージ構成を削除します。
-
「アカウントコンソール」で、「 クラウドリソース 」をクリックします。
-
「 ストレージ構成 」をクリックします。
-
ストレージの構成行で、「アクション」メニューアイコンをクリックし、「 削除 」を選択します。
ストレージ構成名をクリックし、ポップアップダイアログで「 削除 」をクリックすることもできます。
-
確認ダイアログで、「 削除の確認 」をクリックします。
顧客管理のキーを使用してルート S3 バケットを暗号化する(オプション)
ルートS3バケットは、顧客管理のキーを使用して暗号化できますが、これにはアカウント APIを使用する必要があります。
暗号化キーは、アカウント API を使用して新しいワークスペースを作成するときに追加することも、後でキーを追加することもできます。 詳細については、「 ステップ 5: 顧客管理キー (オプション)」 および 「暗号化用に顧客管理キーを設定する」を参照してください。