February 7, 2016
Linux on Azureでファイル共有する方法
ファイル共有、あまりおすすめしないです いきなりタイトルを否定しました。ロック。
さて、これからクラウド、というお客様に、よく聞かれる質問があります。それは「NFSとかの、ファイル共有使える?」です。頻出です。クラウド頻出質問選手権では、西東京予選で毎年ベスト8入りするレベルの強豪校です。
ですが個人的にはあまりおすすめしません。クラウドはなるべく共有部分を減らして、スケーラブルに、かつ障害の影響範囲を局所化するべき、と考えるからです。特にストレージはボトルネックや広範囲な障害の要因になりやすい。障害事例が物語ってます。その代わりにオブジェクトストレージなど、クラウド向きの機能がおすすめです。
でも、否定はしません。アプリの作りを変えられないケースもあるかと思います。
そこで、もしAzureでファイル共有が必要であれば、Azure File Storageを検討してみてください。Azureのマネージドサービスなので、わざわざ自分でサーバたてて運用する必要がありません。楽。
対応プロトコルは、SMB2.1 or 3.0。LinuxからはNFSじゃなくSMBでつついてください。
使い方は公式ドキュメントを。
“Azure Storage での Azure CLI の使用”
“Linux で Azure File Storage を使用する方法”
もうちょっと情報欲しいですね。補足のためにわたしも流します。
Azure CLIでストレージアカウントを作成し、ファイル共有を設定 ストレージアカウントを作ります。fspocは事前に作っておいたリソースグループです。
local$ azure storage account create tomakabefspoc -l "Japan East" --type LRS -g fspoc
ストレージアカウントの接続情報を確認します。必要なのはdata: connectionstring:の行にあるAccountKey=以降の文字列です。このキーを使ってshareの作成、VMからのマウントを行うので、控えておいてください。
local$ azure storage account connectionstring show tomakabefspoc -g fspoc
info: Executing command storage account connectionstring show
+ Getting storage account keys
data: connectionstring: DefaultEndpointsProtocol=https;AccountName=tomakabefspoc;AccountKey=qwertyuiopasdfghjklzxcvbnm==
info: storage account connectionstring show command OK
shareを作成します。share名はfspocshareとしました。
Read more