Windows system >> Windowsの知識 >  >> Windows Serverシステムのチュートリアル >> サーバー2008 >> Windows 2008を解決してもスレッドの問題が発生しない

Windows 2008を解決してもスレッドの問題が発生しない

  

Windows 2008システムクラスタのインストール中に、ADドメイン制御を作成するときに作者が最後のエラーを出し、DNSを設定できなくなりました。調査後、システムはDNSスレッドの最大数が120であると厳密に指定していますが、DNSはCPUのコア数を制限していないため、120を超えるスレッドを作成するとエラーが報告されます。この問題を解決するには?

最近、著者は、Windows 2008のシステムクラスタをインストールし、インストール環境は2つのInspur Yingxin NF8560M2 +ストレージ+ 2ファイバスイッチです。

インストール手順は次のとおりです。

1.オペレーティングシステムをインストールします。

2.システムドライバをインストールします。

3.システムパッチをインストールします。

4.ストレージのマウントとストレージ領域の分割(調停+共有)。

5.ストレージ+ Windows独自のマルチパス(I /O)機能に保存されているクライアントプログラムをインストールします(サーバー管理→機能→新機能)。

6.ハードドライブのオンラインストレージ、ドライブレターの追加(調停と共有ドライブレターは通常XとYです。カスタマイズ可能です)。

7.クラスタ構成(インストールするデータベースに応じて特定の構成文書をオンラインで見つけることができます。焦点はハートビートネットワークカードの設定にあります)。

現象

インストールプロセス中にこのような問題が発生します。最後にADドメインコントロールが作成されると、DNSが設定できずRPCサーバーが使用できないことを示すエラーが報告されます。 [OK]と[完了]をクリックすると、DNSサーバーを作成できますが、DNSサービスは自動的に閉じられます。イベントログを表示して、DNSがスレッドを作成できないことを示します。

障害分析

現在のWindows 2008 R2 x 64およびWindows 2008またはWindows 2008 R2のDNSサービスコードでは、DNSスレッドの最大数は120に指定されています。ただし、DNSではCPUコアの数に制限がないため、120を超えるスレッドが作成されます。

具体的には、DNSサービスには2つの機能があり、スレッドの作成はCPUの数、DNS動的更新機能、およびUDP I /O ANDディスパッチプログラムによって決定されます。 64ビットマシンでは、64個のDNS動的スレッドと64個のUDP処理スレッドを作成します。したがって、64ビットCPUプラットフォームでは、スレッド数が制限を大幅に超え、ERROR_SERVICE_NO_THEADというエラーが報告されます。 32ビットプラットフォームでは、最大86のスレッドを作成するため、DNSサービスは正常に機能します。

オーサリングユニットが使用するサーバーは4-way 8-core CPUで構成されていますデフォルトではHyper-Threading Technologyが有効になっています実際の32-bitは64-bitにシミュレートできます

解決方法

これは現在Windows DNSサービスのバグですが、この問題はWindows 2008でのみ修正される可能性があります。したがって、現在の唯一の選択肢は、DNSサービスを提供するために48ビットCPU未満のプラットフォームを使用することです(ADの18の統合DNSゾーンを減らすことでスレッドの制限を満たすことができます)。もちろん、32ビットCPUだけを使用すれば、問題はありません。具体的な解決方法は次のとおりです。

1. [開始]オプションで、[開始]をクリックし、[実行]をクリックします。「msconfig」と入力し、[システム設定]ウィンドウをポップアップ表示します。 [詳細]タブをクリックし、CPUの数を変更して32に変更します。

2. [BIOS< Advanced→プロセス&クロック> Intel HTテクノロジ」を起動すると、デフォルトの[ここで有効にする]が[無効]に変更されます。

変更が完了したら、[タスクマネージャ - パフォーマンス]列で、CPUの数が32に調整され、問題が解決したことがわかります。

Copyright © Windowsの知識 All Rights Reserved