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?

More than 1 year has passed since last update.

Databricks からAzure Data Lake Storageへの接続手順 (SAS認証)

Last updated at Posted at 2021-12-23

# 概要

DatabricksからAzure Data Lake Storage (ADLS gen2) へのアクセス手順についてまとめたいと思います。

1. Azure上での認証方式の選択

ストレージアクセスの際の認証方式をまずは決めます。主に以下の3つがあります。

どの認証方式を利用するべきか、簡単な比較を作ってみました。(個人的主観が含まれます)

認証方式 設定対象範囲 設定の容易さ お勧め用途 概要
ストレージアカウントキー ストレージアカウント全体 個人利用・検証環境 ストレージアカウントに発行されるキーを利用
SAS Token コンテナ 検証環境・小規模環境 コンテナあるいはストレージアカウント毎に発行ができ、有効期限も設定できるため検証環境での利用が便利
サービスプリンシパル コンテナ 本番環境 設定は少し複雑だが、アプリケーションに権限ロールを付与して運用するため、複数コンテナの管理などが可能

今回はSAS認証を利用した設定手順をご紹介します。

2. Azure Data Lake Storage の作成

まずは、オブジェクトストレージを作成します。
作成手順については、こちらをご覧ください。
ADLS gen2 Storageの作成

3. SAS Token の取得

次にSAS Tokenを取得します。SASは、コンテナ単位でも作成でき、さらに一時トークンとして有効期限やパーミッション設定も細かく設定できます。ただしトークン期限切れにはご注意ください。

image.png

必要に応じて、アクセス許可設定を変更してください。有効期限 にもご注意ください。
image.png

生成されたSASトークンをこの後利用します。

4. Databricksからのアクセス方法

Databricksからのアクセス方法としては、DBFS経由とDirect Accessの2つのアクセス方法があります。

またDirectAccessの場合、ノートブック上のセッション資格とクラスターに設定するクラスター資格の2つの設定方法があります。それぞれの特徴は以下の通りです。

|アクセス方法|資格|設定箇所|有効期間|アクセスユーザー対象範囲|
|:--------------------+---+---+-------+---+----------:|
|DBFS経由||Notebook(一度誰かがすればOK)|umountするまで永続|ワークスペース内の全ユーザー|
|Direct|セッション資格|Notebook(毎回実行)|Notebookセッション中|ノートブック利用者|
|Direct|クラスター資格|Cluster設定|Cluster起動中|Cluster利用者|

また、設定時にはSAS Token がそのまま見えないように、シークレット設定することが可能です。これによりTokenを安全に管理することができます。シークレット設定をする場合は、追加でシークレットスコープ設定が必要になります。詳細はこちらの手順をご覧ください

5. サンプルノートブック

DBFS経由でのアクセス設定

DBFS経由でアクセスさせる場合は、DBFSの /mnt 配下にストレージがマウントされます。これによりワークスペース利用者は誰でもこのストレージにアクセスすることが可能になります。また一度設定すれば umount しない限りノートブックを閉じても、クラスターが切り替わってもアクセスすることができるため、全員で利用するストレージを設定する際にお勧めな方法です。

サンプルノートブック

Directアクセス(セッション資格)設定

DBFSを利用せずに、Directアクセスさせることも勿論可能です。この場合2つの方法があり、ノートブック上で認証設定を行いアクセスするセッション資格設定と、クラスター上で設定することでクラスター利用者全員が利用できるようにするクラスター資格設定です。

サンプルノートブック

Directアクセス(クラスター資格)設定

SAS Token をクラスター上のSpark Configにて設定することで、クラスターを利用するユーザーは簡単にストレージにアクセスできるようになります。この場合クラスターのアクセス権限にてユーザーのパーミッション管理を行えます。

サンプルノートブック

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?