記憶域スペースダイレクトが自動的にディスクを追加しないようにする方法はありますか?


8

ストレージスペースダイレクト(S2D)を使用するSQLフェールオーバークラスターインスタンス(FCI)をホストしている2016 Windows Serverフェールオーバークラスター(WSFC)で問題が発生しました。各サーバーで、最初の作成が成功した後、S2Dは、未使用のRAIDボリュームをストレージプールに自動的に追加しました(ただし、S2DはRAIDボリューム上に作成できず、レイドされていないディスクを要求します)。今、それは壊れています-私が理解できる限り-それは正確です。その結果、仮想ディスクがオフラインになり、クラスター全体が停止します。クラスタネットワークリソースが不足しているため、オンラインに戻りません。問題のディスクは廃止することはできますが、削除することはできません。仮想ディスクの修復が実行されず、クラスターの互換性テストで無効な構成が報告されています。

これは新しいセットアップです。そのため、仮想ディスク、クラスター、さらにはサーバーを削除して、最初からやり直すことができます。しかし、生産性を上げる前に、これを二度と起こさないことを確認する必要があります。サポートされていないディスクを不必要に誤って追加するだけで、仮想膝でシステム自体をクラッシュして停止させるシステムは、私たちが展開できるプラットフォームではありません。だから、私は主に、今それを修復するのではなく、これが起こらないようにする方法が必要です。私の推測では、S2Dセットアップが、作成されたディスクよりも多くのディスクを取得しないようにすると、うまくいくと思います。実際のディスク交換中に手動で操作する可能性のあるコストは、クラスターにとっては無視できるほどのものです...ここにあります。ただし、これまでにドキュメントを参照していたので、それを制御する方法はありません。私が何かを逃していない限り、Set-StoragePoolも、

ヘルプやヒントをいただければ幸いです。

上記の詳細は次のとおりです。2台のHPE DL380 Gen9サーバーマシンが、RDMA対応の10GBイーサネットと1GBを介してクライアントネットに二重に接続されています。それぞれにRAIDコントローラHPが搭載されています??? シンプルなHBAコントローラーHP ??? (S2Dが絶対に必要であり、直接接続されたレイドされていないディスクでのみ機能するため)。ストレージ構成は、RAIDコントローラーのOS-RAID、RAIDコントローラーのFiles-RAID、およびS2D用のHBAに直接接続されたディスクのセットで構成されます。

OS-RAIDに2つのWindows Servers 2016データセンターエディションをセットアップし、WSFC機能をインストールし、S2Dオプションを含むクラスター互換性テストを実行して合格し、ストレージなしでクラスターを作成し、ファイル共有監視(別のマシン上)を追加し、S2Dを有効にしましたレイドされていないすべてのディスクで自動的に構成されるストレージプール上で、そのプールの上にミラータイプの仮想ディスクを作成し、NTFSをファイルシステムとして使用しました。これは、これがSQL FCIの選択のFSであるためです。インストール。

次に、SQL 2016スタンダードエディションをFCIとしてそのクラスターにインストールし、データベースをインポートして、すべてテストしました。すべてが大丈夫でした。データベースはそこにあり、かつてないほど高速でした。自動フェイルオーバーだけでなく強制も簡単でした。すべてが良さそうでした。

翌日、残りのFiles-RAIDを利用しようとしました。事前構成が気に入らなかったため、最初にRAIDレベルを変更しました。事前構成されたRAIDボリュームを削除して新しいボリュームを(各サーバーで)構築した直後に、クラスターがダウンしていることが検出されました。私がこれまでに理解できたことから、その間に事前構成されたFiles-RAIDボリュームが自動的にプールに追加され、削除したばかりなので、プールから失われました。チェックしたところ、新しいFiles-RAIDが見つかりましたが、まだ作成されていて、プールの物理ドライブとして既に表示されています。そのため、プールには各サーバーに2つのRAIDボリュームが含まれ、そのうちの1つは存在しませんでした。これらのボリューム(ディスクではない)は、HBA上の実際の物理ディスクと共にGet-PhysicalDiskによって一覧表示されます。これが定期的かどうかはわかりません。

それらの物理ディスク(つまり、実際にはRAIDボリュームであるもの)を廃棄することができましたが、それらは廃棄済みとしてマークされています。しかし、それらはまだプールにあり、今すぐ削除することはできません。削除しようとしても失敗します。Repair-VirtualDiskは、残りのディスクだけで仮想ディスクを適切な状態に再構築する必要があります(私はこれを行った:https : //social.technet.microsoft.com/Forums/windows/en-US/dbbf317b-80d2-4992- b5a9-20b83526a9c2 / storage-spaces-remove-physical-disk?forum = winserver8gen)ですが、このジョブはすぐに終了し、「成功」します。もちろん、影響はありません。

仮想ディスクをオンラインに戻そうとすると、ネットワークに接続されたクラスターリソースが利用できないことを示して失敗します。私が理解している限り、不足しているディスクはクラスターリソースではないため、これは(利用可能な)ストレージプールのみを参照できます。プールには修正するエラーは表示されません。クラスター互換性テストを実行すると、クラスターに適していない構成が要求されます。

もう1インチぐらつく可能性のある部分が見つからないので、全体が行き詰まっているように見えます。実行中のWSFCがそのように機能しないようにする方法に関するアイデアはありますか?

特に啓蒙的なエラーメッセージは表示されませんでした。また、すべてを投稿してページを爆撃したくありませんでした。誰かが具体的な詳細を知りたければ、私に知らせてください。

皆さん、ありがとうございました!

カルステン

Raspberry氏の要求に応じて更新する ここに画像の説明を入力してください


3
ドライブとそのバスタイプのリストを教えてください。PoweShellコマンド:Get-PhysicalDisk -CanPool $true | Sort Model | ft FriendlyName, BusType, CanPool, OperationalStatus, HealthStatus, Usage, Sizeまた、S2Dドライブを新しいRAIDに割り当てるFile-RAIDを再構成するときに間違いをした可能性はありますか?
ラズベリー氏

2
S2D + SQL Serverのポイントは何ですか?何も実行する予定がない場合(実際には実行できない...)、ライセンスされた無制限のVMにお金をかけたいのはなぜですか?SQL Server 2016はStandardでもAlwaysOn Basic AGを実行でき、Windows Server Standard 2016を使用するだけで莫大な
us/sql/

@氏。ラズベリー:物理ディスクのリストでエントリを更新しました。「-CanPool $ true」はプールできないため、省略したことに注意してください。
KarstenKöpnick

3
@KarstenKöpnick:そうですね、SQL Server AlwaysOn FCI + StarWind Virtual SAN Freeについて検討することをお勧めします。この構成は、2ノードクラスターの場合、コストを抑えてより適切に機能し、そのような問題がなく、展開と管理がはるかに簡単です。starwindsoftware.com/...
氏ラズベリー

1
「S2Dはその方法のように思われた」まあ...それで頑張ってください:)
BaronSamedi1958

回答:


5

はい、自動プーリング動作を無効にすることができます。エクスペリエンスは素晴らしいものではありませんが、確かに実行可能でサポートされています。設定名とコマンドレット構文の例は、この公開ドキュメントの設定セクションにあります。

https://technet.microsoft.com/en-us/windows-server-docs/failover-clustering/health-service-overview

基本的に、これを管理者として実行します。

Get-StorageSubSystemクラスター* | Set-StorageHealthSetting -Name "System.Storage.PhysicalDisk.AutoPool.Enabled" -Value False

お役に立てれば!-Cosmos(@cosmosdarwin)、Microsoft PM


@CosmosDarvin:ありがとう!それはトリックを行うことができるように見えます。私はそれをさらに深く読んでその意味を理解する必要があります。それから私はそれを試して報告します。
KarstenKöpnick17年

@CosmosDarvin:ありがとうございます。ようやくこのトピックを深く掘り下げ、潜在的な影響について調べる機会がありました。私が知る限り、そのオプションを無効にすると、唯一の結果は、Add-PhysicalDiskコマンドを使用してディスクを手動でプールに追加する必要があることです。これは良いトレードオフです。他の合併症やデメリットの兆候は見当たりませんでしたので、試してみます。-交換の場合に手動でディスクを追加する必要性を文書化する必要があるだけです。-結果を報告します。
KarstenKöpnick2017年

結果の報告:このアプローチでは実際の経験を収集できなかったことを付け加えておきます。ディスクエンクロージャーを追加し、S2Dの代わりにそれを使用することが決定されました。そのサイズのRAIDでのディスクの交換は頻繁な作業であり、文書化されたものであっても、PowerShellの介入を実行するためにいつでも十分な専門知識を持つ誰かがPowerShellの介入を実行する必要があるため、簡単なディスクスワップが必要とされていました。そのようにそれを見て、私は完全に同意します。したがって、エンクロージャーを使用して再インストールし、それ以来問題はありませんでした。-親切で専門的なサポートをありがとうございました。
KarstenKöpnick2017年

2

この問題を見つけた回避策は、RAIDボリュームまたはディスクのバスタイプを、サポートされているタイプからサポートされていないタイプに変更することです。

デバイスマネージャーからコントローラードライバーを識別し、レジストリに移動して、以下の場所でドライバー名を見つける必要があります。

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ SmartPqi \ Parameters

私の場合、SASに対応するレジストリキーをRAIDに変更しました

«BusType»= 0x00000008(RAID)(0x0000000aの代わり)(SAS)

マシンを再起動します

この変更後、クラスター化された記憶域スペースではなく、Windows記憶域サブシステムに記憶域プールを配置できます。

このタイプの回避策を適用する場合は、検証済みのソリューションではなく、運用環境を高いリスクにさらす可能性があるため、注意してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.