databricks公式ドキュメントやってみた~Secure access to S3 buckets using instance profiles(後編)~
はじめに
公式ドキュメントやってみたシリーズ第2弾です。
今回のテーマは
「Secure access to S3 buckets using instance profiles」です。
インスタンスプロファイルを使用してセキュアにS3バケットにアクセスする方法をdatabricks公式ドキュメントの手順に従ってやってみたいと思います。
今回の作業内容
今回行う作業は以下の8項目です。
※0.ターゲットS3バケットの作成
S3バケットにアクセスするためのインスタンスプロファイルを作成
ターゲットのS3バケットのバケットポリシーの作成
databricks on AWSデプロイ時のIAMロールの確認
ターゲットS3バケットにアクセスするためのIAMロールをEC2に付与
インスタンスプロファイルをdatabricksにアタッチ
インスタンスプロファイルを使用してクラスタを立ち上げる
ノートブックから今回設定したS3へのアクセスを確認する
作業自体がやや長いのと、
細かいロールやポリシーの設定があるため
- 前編(0~3)→AWS側の設定
- 後編(4~7)→databricks側の設定
に分けてやっていきたいと思います。
本題
では、本題に入っていきましょう。
5. インスタンスプロファイルをdatabricksにアタッチ
前編.1で作成したIAMロールを選択し、インスタンスプロファイルARNをコピーします。
databricksにログインして
右側の人間マークからdatabricks adminコンソールに入る、
Instance Profile ARNに先ほどコピーしたIAMロールインスタンスプロファイルARNを貼り付けてAddをクリック。
その下の2つの項目に関しては今回はチェックしないで進めたいと思います。
6. インスタンスプロファイルを使用してクラスタを立ち上げる
先ほど作成したインスタンスプロファイルを使用してクラスターの立ち上げを行います。
すでに作成済みもしくは新しいクラスタのページに移動します。
Advanced Optionsをクリックして項目を表示させると、一番下にInstance Profileを記入する欄がありますのでクリック
先ほど設定したInstance Profileがあると思うので、それを設定してクラスターを立ち上げます。
7. ノートブックから今回設定したS3へのアクセスを確認する
新しくノートブックを開きます。
名前はなんでもOKで、言語はPython、クラスタはインスタンスプロファイルを設定したものを選択してください。
ノートブックの画面を開いたら下記を実行します。s3-bucket-nameは今回のターゲットS3バケット名を記入します。
dbutils.fs.ls("s3a://s3-bucket-name/")
このようにターゲットS3バケットの中身が表示されたら無事今回の作業がうまくいっていることになります。
(この例ではターゲットS3バケット内にsampleとsample2という2つのフォルダを入れているのでこのような結果表示になっています。)
注)ターゲットS3バケットが空の状態でスクリプトを実行すると対象のディレクトリがありませんという内容のエラーを吐くので、必ずフォルダもしくはファイルを最低1つ入れた状態にしてください。
終わりに
以上がdatabricks公式ドキュメントやってみた~Secure access to S3 buckets using instance profiles(後編)~でした。
今回の内容を活用して、ぜひご自身の目的に合ったセキュアなdatabricks環境構築に取り組んでみてください。
最後までお読みいただきありがとうございました。
本記事がどなたかのお役に立てていれば幸いです。
※本内容はこちらの公式ドキュメントを参考にしております。
https://docs.databricks.com/administration-guide/cloud-configurations/aws/instance-profiles.html
Author And Source
この問題について(databricks公式ドキュメントやってみた~Secure access to S3 buckets using instance profiles(後編)~), 我々は、より多くの情報をここで見つけました https://qiita.com/d_e_n/items/e52a23ea6f0fdcdf8844著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .