こんにちは。SBクラウドのKSです。 Alibaba Cloudでストレージといえば一番に思いつくのはOSSという方も多いと思いますが、実はNetwork Attached Storage(略称NAS)というプロダクトもリリースされています。 テックブログでもOSSに関しての投稿は多いですが、NASについては1つもなかったため、今回はそんな忘れられがちなNASをご紹介したいと思います。
はじめに
現在、AlibabaCloudで提供しているストレージは大きく分けると以下の3つがあります。
- CloudDisk(ECSにアタッチして使うブロックストレージ)
- OSS(オブジェクトストレージ)
- NAS(共有ストレージ)
それぞれ用途が違いますが、例えば複数のECSで共有して使いたい場合は、CloudDiskは1つのECSにしかアタッチできないため、OSSかNASを選択することになります。
OSSをマウントして使う場合はWindowsではできず、Linuxのみとなりますが、NASでは両方ともマウント可能です。
また、NASは同一リージョンのECSにマウントしないとアクセスできず、OSSのようにインターネットから使うことはできません。 (ここはセキュリティ面に関しては◯ですが、利便性は△といったところでしょうか)
CloudDisk | OSS | NAS | |
---|---|---|---|
概要 | ・ブロックストレージ | ・オブジェクトストレージ | ・ファイルストレージ |
最大容量 | ・32768GB | ・無制限 | ・1~10PB |
料金体系 | (ECSの料金体系により) ・従量課金 ・サブスクリプション | ・従量課金 | ・従量課金(現在未対応) ・サブスクリプション |
その他 | ・単一ECSにアタッチ | ・ブラウザ(要ツールインストール)やAlibabaコンソールから操作が可能 ・Linuxではマウントも可能 | ・複数のECS(Windows、Linux)にマウント可能 ・NFSかSMBを選ぶ必要がある |
NASを使ってみる
さっそくNASを購入してみたいと思いますが、2018年9月現在で以下の注意点があります。
- 中国5リージョンとシンガポールリージョンでのみ利用可能
- サブスクリプションのみ提供
NASの使用手順としては事前にECSを準備しておくことで、以下の3ステップで使えるようになります。
- ストレージパッケージ購入
- マウントポイント追加
- ECSからマウント
今回は北京リージョンのNASを購入して、北京リージョン内の異なるVPCにあるECS2台(WindowsとLinux)からアクセスしてみたいと思います。
NASの購入
まずはストレージパッケージを購入します。
ここで重要なのはプロトコルタイプです。NFSかSMBを選択するのですが、こちらは簡単にいうとNFS→Linux用、SMB→Windows用と考えてください。 今回はNFSでLinuxとWindowsから試してみたいと思います。
次にマウントポイントを追加します。 マウントさせたいECSが所属しているVPCを選択します。
コンソールから購入したNASの詳細画面で赤枠のマウントポイント(ECSでマウントする際に指定します)を確認できます。
これでコンソールでのNASの設定は完了しましたので、次にECSからマウントさせます。
Windowsバージョン
Windowsのマウント方法はこちらに詳細が記載されています。
今回はNFSタイプのNASを使うので、WindowsではサーバーマネージャーからNFSサーバーとNFSクライアントをインストールします。そしてマウントのロックオプションを無効にします。 その後、下記のコマンドでNASをマウントします。
>mount -o nolock \\194c04b182-ekp57.cn-beijing.nas.aliyuncs.com\\ F: F: は \\194c04b182-ekp57.cn-beijing.nas.aliyuncs.com\\ に正常に接続しました コマンドは正常に終了しました。
Linuxバージョン
Linixのマウントはこちらを参照しています。
インストール # sudo yum install nfs-utils マウント # sudo mount -t nfs -o vers=4.0 194c04b182-qtb94.cn-beijing.nas.aliyuncs.com:/ /mnt
確認
マウントしてNASがきちんと使えるかをみてみたいと思いますが、今回の注意点としてNFSは基本的にLinuxなどのUNIX用のタイプのため、Windowsからのデフォルトの権限は読み取りと実行のみで書き込みは含まれていません。
そのため、Windowsから書き込みを実施したい場合はchmodコマンドで権限を付与する必要があります。
まずはLinuxでテストファイルを作成します。(/mntはマウントポイント)
# mkdir /mnt/test # vi /mnt/test/test1.txt test # chmod -R 777 /mnt/test # ls /mnt -l drwxrwxrwx 2 root root 4096 Aug 8 09:41 test
Windowsから確認してさらに追記します。
LinuxからWindowsの追記内容を確認します。
# cat /mnt/test/test1.txt test postscript from windows
このようにLinuxとWindowsで共有してストレージを使うことができます。
また、権限グループでWindowsのIPを指定して読み取り専用に設定することで、Windowsからは書き込みができなくなりました。 このように共有ストレージでも権限を絞って使うことができます。
またレスポンスに関して、OSSをマウントした場合とOSSのコマンドラインツールでのアップロードの所用時間を比較してみます。 timeコマンドでtest.log(1GB)のcpの処理時間をみたのが下記になります。 (/ossmountはOSSへのマウントポイント)
NAS # time cp test.log /mnt/test real 0m10.783s user 0m0.004s sys 0m0.800s OSS(マウント) # time cp ./test.log ./ossmount/ real 0m27.702s user 0m0.015s sys 0m1.355s OSS(ossutil) # time ossutil cp ./test.log バケット名 real 0m17.077s user 0m2.052s sys 0m1.497s
さいごに
ストレージは複数のECSで共有する場合はOSSかNASを選ぶことになり、NASの方がレスポンスは良いというメリットはあります。 現在NASは日本リージョンでは残念ながら使えないのですが、中国リージョンで共有ストレージとして使ってみてください!! (同一アカウントで中国リージョンにプロダクトを手軽に購入できることもAlibaba Cloudの利点の1つだったりします)
また、日本リージョンで使えるようになって有効な活用事例がありましたら、別途ご紹介させていただきます。 以上、簡単にですがNASのご紹介でした。
参考サイト Alibaba Cloud ドキュメントセンター NFSのプロトコルなどのサポート情報は以下をご参照下さい。 ・NFSプロトコル