記憶域スペースダイレクト(S2D)をスイッチ無しで3ノードで構成
今日はLenovoさん(Lenovo Enterprise Solutionsさん)のラボと機材をお借りして、Azure Stack HCI、別の言い方をするとS2D(Storage Spaces Direct = 記憶域スペースダイレクト)のスイッチなしでの3ノード構成の構築、テストをさせてもらいました。いつもありがとうございます! S2Dは2ノードから構成できる、さらにスイッチが無しでも直接サーバー同士を接続することで構成ができるということで非常に小さくはじめられる素敵なHCIです。もちろんスイッチ経由で接続すれば2ノードから16ノードまで構成できるわけなのですが、コストを抑えつつもノード数も増やしたい!という声に答えて(※筆者の予想)、正式に3ノード構成をスイッチ無しで構成することもサポートされました。 2ノードであれば直接クロスさせるのだろうなと直感的にわかりますが、3ノードだとどうやって接続するのでしょうね?それに対する非常にわかりやすいガイドがLenovoさんから出ています。 - [Microsoft Storage Spaces Direct (S2D) Deployment Guide](https://lenovopress.com/lp0064.pdf) Microsoft Storage Spaces Direct (S2D) Deployment Guideより引用 上記の図のように2ノードでスイッチ無しの場合にはストレージ用のネットワークを独立させて直結させます。 以前のガイドではこのときにストレージ用のNICをSETでチーミングすべきなのか、すべきではないのか、しないとすればセグメントは分けるべきなのか、同じでいいのか?など曖昧な書き方だったのですが、ガイドもバージョンが上がってこの点明確になっています。 - ノード間を直結させる場合にはストレージ用のNICはSETを組まない - 2対のNICのネットワークセグメントは同じでも異なっても良い ということが明記されています。 Microsoft Storage Spaces Direct (S2D) Deployment Guideより引用 そして、このコンセプトは3ノードでも同じです。あとは単純に結線の仕方が違うだけです。 Microsoft Storage Spaces Direct (S2D) Deployment Guideより引用 Node1, Node2, Node3がそれぞれ直接繋がる形になっているわけですね。実際に実機でやってみましたよ! かなりわかりにくいですが、3台のサーバーそれぞれを直接接続してます。これで3ノードのS2Dがスイッチ無しで組めます。 pic.twitter.com/8CAGnKPKmo — Masahiko Ebisuda (@ebi) January 7, 2020 https://platform.twitter.com/widgets.js で、繰り返しになりますがこのガイドではこのときにNode1-Node2, Node1-Node3, Node2-Node3のそれぞれの接続に対して同じネットワークに構成すべきなのか異なるネットワークにすべきなのかの指定はありません。どうやってもうまく動いちゃうからなんですね。 よく考えると、上の図でCorpNetと書かれている方でもサーバー同士は繋がっています。複数のNICがあり、複数の接続パターンがある状況で適切にすべてのパスを使っていい感じに帯域を稼いでくれる「SMBマルチチャネル」という仕組みがあって、全部いい感じに自動でしてくれちゃいます。 - [簡略化された SMB マルチチャネルと複数 NIC のクラスター ネットワーク | Microsoft Docs](https://docs.microsoft.com/ja-jp/windows-server/failover-clustering/smb-multichannel) この機能かなり昔からあるのですが、いまいち活用されてなかったような気がしていたのですが、クラスタ周りでは大活躍です。 ...