この記事は更新から24ヶ月以上経過しているため、最新の情報を別途確認することを推奨いたします。
追記:2021/3/26
FSLogixの保存先としてStorage AccountのBlobを採用することはできる限り避けてください。Blob Storageの処理性能がボトルネックとなり、FSLogixが正常に動作しない場合がございます。
パーソルプロセス&テクノロジーの内田です。
VDI環境でユーザー プロファイル問題を解決する上で重宝するFSLogix。今回はFSLogixでCloud Cacheを構成する上での注意点をいくつかご紹介したいと思います。
Cloud Cache Locationsとは
内容に入っていく前に、まずはCloud Cache Locationsについて説明します。
FSLogixのProfile Solutionですが、これは次のように大きく2種類に分類されます。
- VHD Location
保存場所に指定できる数は1つです。SMBプロトコルを利用するため、Azure Storage AccountのBlobに保存することはできません。 - Cloud Cache Locations
保存場所に指定できる数は最大4つです。SMB以外にHTTPSプロトコルを利用することができるため、Blobに保存することも可能です。
可用性を高めたり、東西のリージョンそれぞれに保存したい場合などにCloud Cache Locationsを採用することになります。
Cloud Cacheの仕組みについて
書き込み処理は常に全てのCloud Cache Provider(以降、Provider)に対して行われます。そのため基本的にはどのProviderであっても、プロファイルは常に最新に保たれています。
しかし何らかの要因によりあるProviderが利用不可となってしまった場合を想定して、Cloud Cache利用時にはmetadataファイルが追加で作成されます。
そのため一部のProviderが利用不可となった場合であっても、サインイン時に最新のmetadataを探索してからプロファイルを読み込むため、不整合が発生しない仕組みになっています。
注意点について
- Premium Page Blobは使うべきではない
Cloud CacheではBlobを指定することができますが、ストレージ アカウントをPremium SKUで作成することは課金の観点からやめた方がいいでしょう。
Standard Page Blob(HDD)であれば、実際に保存した容量に応じて課金される仕組みになっていますが、Premium Page Blob(SSD)の場合はPage Blobの容量に対して課金される仕組みになっています。
Cloud Cacheでは .vhd(x)ファイルの他に.lock/.metaファイルがそれぞれ作成されるため、1ユーザーにつき3つのPage Blobが作成されます。またそれぞれのBlobのサイズは既定でP10(128GiB)であるため、1ユーザーあたり約7,600円(東日本リージョンの場合)かかることになります。
Blobを採用する際にはPremium Page Blobを採用しないように注意しましょう。 - 複数のProviderを利用する場合、リストア作業に気を付ける
スナップショットをあらかじめ取得し、何かあった際に数日前のスナップショットからユーザー プロファイルを復元するオペレーションがあります。
この時1つのProviderだけを過去の時点に戻したとしても、他のProviderのmetadataが最新であれば、過去のプロファイルが読み込まれることはありません。
metadataに注意しながらリストア作業を実施するようにしましょう。 - Blobコンテナ名の制約事項を意識する
Blobコンテナ名には数字、小文字、ハイフン(-)しか含めることができません。FSLogixではSIDDirNamePatternString, SIDDirNameMatchStringという2つの値を用いて、ユーザー プロファイルのフォルダ(コンテナ)を作成/探査しているのですが、これらの値は既定で「%sid%_%username%」となっています。アンダーバー(_)はBlobコンテナ名に対応していないため、設定と異なる形式でフォルダ(コンテナ)が作成されてしまいます。
※%username%に不適切な文字列が含まれているかについても、気を付ける必要がございます。
ProviderがBlobだけであれば問題はありませんが、SMBプロトコルを利用するプロバイダーを併用している場合、不整合が発生する可能性があるので注意しましょう。