Microsoft Azure Fileへの接続永続化

仮想マシンを再起動した後も、Azure Fleへの共有接続を永続化させる方法を説明します。

Windows IaaS 仮想マシン

通常、Windowsは再起動した後、SMB共有接続を永続化させようとします。
しかし、Azure Fileの場合、接続認証があるため、再起動後のAzure Fileへの再接続が失敗します。Azure Fileへの接続を永続化させるために、Azure Fileへの認証情報をいくつかの方法で永続化させる必要があります。

CmdKey

ストレージアカウントの認証情報をCmdKyeコマンドラインツールを使用して保存してしまうことが、永続化させるのにもっとも簡単な方法です。次のコマンド例が、仮想マシンにストレージアカウントの認証情報を永続化させた例です。

C:\>cmdkey /add:.file.core.windows.net /user: /pass:

Note: yourstorageaccountname is not your live id but the name in the endpoint.

また、次のコマンドで格納した認証情報を一覧表示できます。

C:\>cmdkey /list

Currently stored credentials:

Target: Domain:target=filedemo.file.core.windows.net 
Type: Domain Password 
User: filedemo

認証情報を永続化させてしまえば、認証情報を指定することなく接続できるようになります。

C:\>net use * \\filedemo.file.core.windows.net\demo1

Drive Z: is now connected to \\filedemo.file.core.windows.net\demo1.

The command completed successfully.

ユーザーコンテキスト

CmdKeyによる資格情報の永続化はユーザーで独立しています。
登録コマンドを実行したユーザーと別のユーザーでログインしている場合は、認証情報が永続化されていません。

管理者コンテキスト

Administratorsグループに入っているユーザーの場合、資格情報が共有されます。

資格情報の管理

資格情報の管理(コントロールパネル→ユーザーアカウントの配下)を使用して、ストレージアカウントへの資格情報を永続化させることができます。

image

Windows PaaS Role

新しいインスタンスが起動したときに、自動的に接続できるようにコードを書くことができます。
WNetAddConnection2を使用してPaaSロールで、ドライブレターをマッピングします。

コード例は、元記事を参照

Linux 仮想マシン

/etc/fstab にAzure File共有へのマウントを記載することで、スタートアップ時に自動的にマウントさせることができます。

//.file.core.windows.net/demo1 /home/azureuser/smb cifs vers=2.1,dir_mode=0777,file_mode=0777,username=,password=Persisting connections to Microsoft Azure Files