きそくただしいせいかつ

日々の生活のペースセッター

Oracle Linux Storage Appliance を使ってみる

Oracle Cloud Infrastructure (OCI) の File Storage Service (FSS) は NFSv3 なので、 Windows からもマウントできるといえばできるのですが、 CIFS 環境を用意したい場面もあるかと思います。

そんな需要に対して Oracle では Oracle Linux Storage Appliance という、Linux ベースの SAMBA サーバのイメージを提供しており、 Web UI 等もあるため、簡単に利用することができます。

最近まで OCI の画面からデプロイする方法がなく、若干めんどくさかったのですが、めでたく Oracle Provided Image としてプロビジョニングできるようになりましたので、試してみました。 ドキュメントは以下です。 Oracle® Linux Storage Applianceデプロイメントおよびユーザー・ガイド

Oracle Linux Storage Appliance インスタンスの作成

Oracle Linux Storage Appliance は、 Compute の Instance として立てます。 VM でも BM でも構成可能で、 BM で内蔵の NVMe ストレージがある場合はそちらが Volume として使われ、 NVMe がない場合は Block Storage をアタッチして使います。

Compute インスタンスを立てる
Compute インスタンスを立てる

OS イメージとして Linux Storage Appliance を選択する必要があります。

Change Image Source で OS イメージを変更
Change Image Source で OS イメージを変更

Oracle Images の中にあります。 (あっ、 EM のイメージもある…知らなかった)

Oracle Image として提供
Oracle Image として提供
その他の設定は普通に Compute インスタンスを立てるときと同じです。適宜ご設定ください。あとで ssh ログインするので key も設定しておいてください。

インスタンスが出来上がるまで待つ
インスタンスが出来上がるまで待つ

Oracle Linux Storage Appliance インスタンスへのアクセス

インスタンスができ、アクセスできるようになったら opc ユーザで ssh ログインしてください。

ssh アクセス
ssh アクセス

Web UI にアクセスするために、ローカルに ssh ポートフォワーディング設定をします。ターミナルソフトによって設定が違うかと思いますので、適宜設定ください (Tera Term でやっています)。

ssh ポートフォワーディング
ssh ポートフォワーディング

Web UI は 443 ポート (HTTPS) で公開されていますので、 443 をローカルの 8443 ポートにフォワードします。

リモートの 443 をローカルの 8443 にフォワード
リモートの 443 をローカルの 8443 にフォワード

ローカルのブラウザで 8443 ポートにアクセスします。最初に admin ユーザのパスワードを設定します。 大文字・小文字・特殊文字・数字の組み合わせが求められます。

admin のパスワードを設定
admin のパスワードを設定

設定したらログインします。

admin ユーザでログイン
admin ユーザでログイン

Block Volume のアタッチと Storage Pool 作成

が、インスタンスを立てただけだと、ストレージがないと怒られます。

f:id:k_kane:20190302112433p:plain
ストレージがない、と怒られる

ので、 Block Volume を作ってアタッチします。

Block Volume を作る
Block Volume を作る

インスタンスと同じ AD に構成します。

Block Volume を作る
Block Volume を作る

インスタンスの画面に戻り、 Attache Block Volume します。

Block Volume を Attach
Block Volume を Attach

Block Volume を Attach
Block Volume を Attach

Attach すると自動的に認識するので、Web UI から Storage Pool を作ります。(認識しない場合はブラウザを再起動して、ログインし直していただくとよいかもです)

Storage Pool を作る
Storage Pool を作る

Volume をチェックして、 Add すると、自動的に Pool が作られます。 (Linux インスタンスで見てみると、このタイミングで LVM 作って、 XFS 作っているみたいです)

Storage Pool を作る
Storage Pool を作る

Pool ができると Dashboard で確認できるようになります。

Dashboard
Dashboard
画面上、いろいろと簡易な NAS っぽい画面が確認できると思うので、見てみていただけると雰囲気がつかめるかと思います。 Administration の画面に細かい設定は乗っています。
Administration の画面
Administration の画面

SMB での公開

SMB での公開は Storage の画面から可能です。 Add を押します。

Storage の画面
Storage の画面

公開設定は Share という呼ばれ方をしており、 Share の名前、サイズ、 SMB でアクセスするときのパスなどを設定します。 AD 連携等も設定可能なようですが、今回は Guest アクセスを許容します。

Share を作る
Share を作る

Oracle Linux Storage Appliance のインスタンス内で見てみると、/.lsa というパスに lsa.conf という設定ファイルがあります。 Share を作ると /shares/シェア名 というパスで公開されます。

[opc@kokane-lsa-01 smb]$ lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sdb             8:16   0    1T  0 disk
|-lsa-smbtest 252:1    0  200G  0 lvm  /shares/smbtest
`-lsa-__lsa   252:0    0   64M  0 lvm  /.lsa
sda             8:0    0 46.6G  0 disk
|-sda2          8:2    0    8G  0 part [SWAP]
|-sda3          8:3    0 38.4G  0 part /
`-sda1          8:1    0  200M  0 part /boot/efi
[opc@kokane-lsa-01 .lsa]$ ls /.lsa/etc/smb
lsa.conf  lsa.conf.bak
[opc@kokane-lsa-01 .lsa]$ more /.lsa/etc/smb/lsa.conf
[smbtest]
guest ok = False
strict sync = False
sync always = False
browsable = False
read only = False
path = /shares/smbtest
directory mask = 0770
create mask = 0770

Share の Actions のボタンから、各種設定が可能です。今回は Mount Information を確認します。

Share の確認
Share の確認

アクセスに必要な情報が表示されるので、 SMB File Explorer URL をコピーしておきます。

SMB / NFS のマウント情報
SMB / NFS のマウント情報

Windows Server 2016 からのアクセス

OCI 上に立てた Windows Server 2016 から Storage Appliance にアクセスしてみます。事前に VCN の Security List は適切に設定しておく必要があります。

先程コピーしたパスを Explorer でペーストすると、難なくアクセスできました。

Windows からのアクセス
Windows からのアクセス

当然ですが、ファイルもかけました。

test ファイルを書く
test ファイルを書く

まとめ

今回 Linux Storage Appliance を設定してみましたが、 OCI Console からプロビジョニングできるので簡単な印象を受けました。 AD 連携や Object Storage へのバックアップもできるようなので、簡易な CIFS 領域を用意したい場合には選択肢の一つになるかなと思います。ただし、マネージドサービスではないのでインスタンスの監視や管理は運用として考慮する必要があります。