Azure Stack HCI と Storage Spaces Direct を見て理解する
この記事の内容
- Windows Admin Center(WAC)を使ったAzure Stack HCIクラスターの追加・管理方法
- Storage Spaces Direct(S2D)のコマンド一発での有効化手順
- スケールアウト(ノード追加)の簡単さ
- クラウド監視(Cloud Witness)の構成方法
- ボリューム種別(3方向ミラー・Mirror Accelerated Parity)と耐障害性の実証
環境の概要
今回のデモ環境では、Windows Admin Center(WAC)をWebベースの管理ツールとして使用しています。ホストマシンはメモリ128GB・プロセッサ1基・32コアの構成で、Hyper-V上にさらにHyper-Vをネストして動作させています。
クラスターはStorage Spaces Directを実行していることが前提です。WACはAAD(Azure AD)と接続することで認証を行い、シングルサインオンにも対応しています。
Windows Admin CenterへのクラスターI追加
まず既存クラスターをWACに追加します。「接続の追加」からサーバー名を指定してクラスターを登録すると、WACがStorage Spaces Directを実行しているクラスターであることを自動で検出します。
追加後はダッシュボードで各サーバーの稼働状況、CPU・メモリ・IOPSレイテンシーなどをリアルタイムに確認できます。
Storage Spaces Direct の有効化
S2Dの有効化は驚くほどシンプルです。PowerShellで以下のコマンドを実行するだけです。
Enable-ClusterS2D
New-Volume -StoragePoolFriendlyName "S2D on <クラスター名>" -FriendlyName "S2DVolume" -FileSystem CSVFS_ReFS
このコマンドを実行すると、接続されているすべてのディスクを自動的に検出し、構成を最適化してストレージプールを作成します。複雑に見えるHyper-Converged Infrastructureの構成が、たった数行のコマンドで完了します。
スケールアウト(ノード追加)
Azure Stack HCIの大きな特長の一つがスケールアウトの容易さです。
WACの「クラスターにサーバーを追加」からサーバー名を指定するだけで、3台目のノードをクラスターに参加させられます。追加中も仮想マシンは稼働を継続し、ストレージも自動的にリバランスされます。
- 1クラスターあたり最大16ノードまで拡張可能
- 最大ディスク容量は4ペタバイト
- ダウンタイムなしで仮想マシンの再配置とストレージのリバランスが実施されます
クラウド監視(Cloud Witness)の構成
クラスターノードが偶数台の場合、クォーラムの観点から奇数台構成を推奨します。たとえば4ノード構成では、ノード同士が「2対2」で分断された際にどちらの側も過半数に達せず、両方が停止してしまう危険があります。
この解決策として**クラウド監視(Cloud Witness)**を追加します。Azureのストレージアカウントを使うことで、物理的な拠点を用意することなくクォーラムの票を1票追加できます。
Cloud Witnessの設定手順
1. Azureポータルでストレージアカウントを作成する
- 東日本リージョンなど任意の場所を選択
- レプリケーションはLRSで構いません
2. ストレージアカウントのアクセスキーを取得する
ポータルの「アクセスキー」ブレードからキーをコピーします。
3. WACでクラスターにCloud Witnessを設定する
WACの「クラスター設定」→「監視の設定」→「クラウド監視」を選択し、ストレージアカウント名とアクセスキーを入力して有効化します。
これにより、4ノード+クラウド監視の計5票構成となり、2ノードが同時に障害を起こしても過半数(3票)を確保できるようになります。
ボリューム構成
3方向ミラー
最も基本的なボリューム種別です。データを3コピー保持するため、同時に2台のノード障害まで耐えられます。
- 100GBのボリュームを作成する場合、実際にはディスク上で300GB消費されます
Mirror Accelerated Parity(MAP)
ミラーとパリティを組み合わせることで、容量効率とパフォーマンスのバランスを取れます。
| 設定 | ミラー | パリティ | 100GB利用時の必要容量 |
|---|---|---|---|
| 3方向ミラー | 100% | 0% | 300GB |
| MAPミラー30% | 30% | 70% | 130GB |
| MAPミラー10% | 10% | 90% | 110GB |
- ミラー比率を高くするとパフォーマンスが向上しますが、容量効率が下がります
- パリティ比率を高くすると容量効率が上がりますが、書き込みパフォーマンスが若干低下します
- MAPを使っても、2台同時障害まで耐えられる冗長性は維持されます
重複除去(Deduplication)の有効化
重複除去はWACから簡単に構成できます。クラスターを構成するすべてのノードに対してWindowsの「重複除去」機能を追加するだけです。
ノードごとに順番にインストールすることで、クラスター全体で重複除去が有効になります。
耐障害性の実証
実際に複数ノードを強制停止して、クラスターとストレージの挙動を確認しました。
ノード2台が障害(5票中3票が生存)
- ノード3とノード4を強制停止
- クラスターはノード1・2+クラウド監視の3票を確保(過半数)
- ディスクはオンライン状態を維持
- 仮想マシンも正常稼働を継続
さらにノード1台が障害(5票中2票のみ生存)
- ノード1をさらに停止(合計3ノードが停止)
- 残存はノード2のみ+クラウド監視の2票(過半数に届かず)
- クラスターは正しく停止(スプリットブレイン防止)
- WACのダッシュボードでは「ドライブ16台中12台が重要な状態」と正確に表示
この動作は意図した正しい挙動です。ストレージへのアクセスができなくなる前にクラスターが安全に停止し、データの整合性を保ちます。
まとめ
Azure Stack HCI と Storage Spaces Direct を組み合わせることで、以下のことが実現できます。
- Windows Admin Centerからの直感的な管理:クラスターの追加・監視・ボリューム作成がGUIで完結
- コマンド一発でS2D有効化:複雑なHCI構成が数行のPowerShellで完了
- 柔軟なスケールアウト:ダウンタイムなしでノードを追加でき、最大16ノード・4PBまで拡張可能
- Azure Storage Accountを使ったCloud Witness:物理拠点なしでクォーラムの冗長性を強化
- ノード数に応じたボリューム設計:3方向ミラーやMirror Accelerated Parityで容量とパフォーマンスを最適化
- 2台同時障害への耐性:ミラーボリュームとクラウド監視の組み合わせで高い可用性を実現
これだけの機能がWindows Serverの標準ライセンスで利用できます。すでにWindows Serverを使用している組織であれば、ぜひ導入を検討してみてください。