ストレージ Wiki
Unsolved
Closed
2 Intern
•
127 Posts
0
450
April 18th, 2023 19:00
[Unity]UnityからWasabiへクラウドティアリング!!
皆様、こんにちは!
ネットワールドストレージ担当です!
以前のブログでPowerScaleからS3互換のクラウドストレージであるWasabi Hot Cloud StorageにCloudPoolsの機能を使用してファイルのアーカイブしました。
こちらの記事がなかなかに反響があったので、Unityでも同じことができないかと調べていたのですが、残念ながらUnity単体でクラウドにアーカイブするといった機能がありません。
そこで皆さん!Cloud Tiering Applianceというツールをご存じでしょうか?
こちらのツールではUnityやVNXなどをソースとしてクラウド(ECS、GCP、COS、Azure、AmazonS3)へのアーカイブやティアリングができるツールです。
今回はこちらを使ってUnityからWasabiにティアリングしてみたいと思います!
※WasabiはS3互換の製品ですが、現時点ではティアリング先としてはサポートされていません。
ただ手順としてはAmazonS3にティアリングする場合と同様なので参考にしていただければ幸いです。
Cloud Tiering Appliance(以下CTA)についてですが、
ユーザーが設定したポリシーに基づいてUnityからクラウドへデータを自動的に移動することが出来ます。
またクライアントからクラウド上のファイルデータの呼び出しする際もCTAを通して行われます。
ファイル、ブロックのアーカイブなども可能ですが、今回はファイルのティアリングをしていこうと思います。
では早速検証していきます!
今回は仮想版のCTAを使うのでvSphere上にOVAを展開します。
(OVAはサポートサイトからダウンロード可能です。)
展開したCTA仮想マシンを起動したらRemoteConsoleなどでアクセスします。
デフォルトのユーザー/パスワードがroot/rainになっているので、そちらでログインでするとSetupToolが立ち上がります!
こちらでCTAの初期設定をして行きます。
■初期設定
設定項目としては以下の通りです。
・時刻設定
タイムゾーンと同期するNTPを設定します。
※Unityと同じNTPと同期することが推奨です。
・インターフェイスのIP
※IPアドレスを設定後、UPさせる必要があります。
・DNSの設定
またSetupToolのトップメニューで[ Exit Command Line Interface [!] ]を選択することで、CTAのCLIに入ることがで来ます。以下のコマンドで今回接続するUnityのシリアルナンバーをロードします。
※UnityのシリアルはUnityのGUIから確認可能
rffm setEmcSerialNumber
ここまで設定するとインターフェイスに設定したIPアドレスでWebブラウザからGUIにアクセスすることが出来ます。
初期のユーザー/パスワードはadmin/rainになっているので、そちらでログインするとCTAのダッシュボードを見ることが出来ます。
一応日本語にも言語変更できます!(精度は高いとはいえませんが、、、)
■アクセスキー、シークレットキーの取得
ここからはクラウドへのティアリングのタスクを作成するため準備をして行きます。
まずデスティネーションになるクラウドを登録していくのですが、
その時にクラウドのアクセスキー、シークレットキーが必要になるので先にWasabiのコンソールからそれらを取得します。
■クラウドサーバー登録
[ Configuration ] → [ Server ]からWasabiをCTAに登録していきます。
WasabiはS3互換のクラウドストレージなのでS3を選択します。
CTAへの登録名を入力し、先程取得したアクセスキー、シークレットキーバケットなどを入力していきます。
バケットを作成したリージョンのURLを入力します。WasabiのURLについてはこちらのサイトから確認可能です。
■CommonAPI設定
次に[ Configuration ] → [ Common API Settings ]から今回接続するUnityの認証情報を入れていきます。
[ Management Credentials ]にUnityのadminに設定した認証情報を入力しします。
[ DHSM Credentials ]のUsernameはdhsmで固定されているので、任意のパスワードを設定します。
※こちらのパスワードは後程UnityへのDHSM設定で必要になります
■名前解決設定
次に名前解決設定をしてきます。
CTAでUnityからクラウドにティアリングするには、各コンポ―ネントを正引き逆引きで名前解決できる必要がありますので、利用する環境のDNSに以下のレコードを登録します。
・ソースとなるUnityのNASサーバー名
・CTAのホスト名(初期設定時に設定した名前)
・ACD(Atmos Callback Daemon)のホスト名
※IPアドレスはCTAと同一ですが、CTAのホスト名と異なるACDのホスト名の登録が必要
ただ私の検証環境ではDNSでの名前解決ができなかったので、今回はCTAのHostsファイルに記入しました。HostsファイルはCTAのCLIから更新できます。
■UnityのNASサーバー作成
次にソースとなるUnityのNASサーバーを[ Configuration ] → [ Server ]から登録します。
[ IP Address ]と[ Management IP Address ]にはそれぞれNASサーバーのIPアドレス、Unityの管理IPアドレスを入力し、[ UPDATE ]をクリックします
※ここで名前解決できないとエラーが出てしまいます!
[ ACD DNS Name ]にはHostsに記載したACDホスト名をFQDNで入力します。
■DHSM設定
次にUnityのGUIからDHSMを有効化します。
本来ティアリングスケジュールを作成した際に自動的に有効化されるそうなのですが、手動でやった方がいいとの記載も見つけたので、今回はUnityのGUIにアクセスして、対象のNASサーバーのプロパティから手動で有効化します。
Username/PasswordはCommonAPI設定の時に設定したものです。
※Enforce HTTP Secureは非推奨です。
■ポリシー作成
ここまででティアリングするための下準備をしてきました。
ここからは実際にティアリングするためのスケージュールやポリシーを設定していきます。
まずは[ Policies ] → [ Policy ]からポリシーを作成します。
今回はサイズが15KB以上のファイルをWasabiにクラウド上にアーカイブするポリシーを作成します!
サイズ以外にもアクセス時間やファイル名などでもポリシーを作成することが可能です。
基本的にウイザードに従って情報を入力していきます。
ただ注意点としてはクラウドをディスティネーションとして使用する場合は[ Delay Period ]と[ Retention Period ]は0にして下さい。
■スケジュール作成
次に[ Schedule ]からアーカイブのスケジュールを作成していきます。
ここでアーカイブやマルチティアリングなどを選択することが出来ます。
ポリシー選択のところで先程作成したポリシーを選択します。
またアーカイブするタイミング(毎日、毎週など)もこちらで選択します。
今回は結果を早く確認したいので[ Now ]を選択しました。
■アーカイブ実行結果
これでアーカイブののタスクが実行されたので結果を見ていきましょう!
まずCTAのGUIから結果を確認することが出来ます。
お![ Success ]が3になってるので、3つのファイルがクラウド側に送られたことがわかります!
■WasabiGUI
次にクラウド側であるWasabiのGUIを見ていきましょう!
しっかり3つのファイルがバケットに保存されてますね~!
■エクスプローラー
Windowsのエクスプローラーからもどのようになってるか確認してみましょう!
サイズ違いのダミーファイルを用意して検証してみました。
Afterのファイルのアイコンをよく見ると15KB以上のファイルにはマークがついていることが分かります!
これはStubファイルといって、アーカイブ対象のファイルを8~16KBのメタデータファイルに置き換えたファイルです。
このオリジナルファイルはクラウド上にありますが、Stubファイルをクリックすることでオリジナルファイルに素早くにアクセスすることが出来ます。
以上になります。いかがだったでしょうか?
ユーザーから見るとアーカイブされたファイルもクラウド上にあることを意識せずに使える点も嬉しいですね!
またセットアップ自体も比較的簡単にできるので、Unityからクラウドにティアリングしたい時に使ってみてはいかがでしょうか!
Responses(0)