ワークロードバランシングのトラブルシューティング
ワークロードバランシングは通常スムーズに動作しますが、この一連のセクションでは、問題が発生した場合に備えてガイダンスを提供します。
注記:
- Workload Balancingは、XenServer® Premium Editionのお客様にご利用いただけます。XenServer ライセンスの詳細については、ライセンスを参照してください。アップグレードまたはXenServerライセンスの取得には、 XenServer Webサイトにアクセスしてください。
- ワークロードバランシング 8.4.1 は、XenServer 8.4 および XenServer 9 と互換性があります。
ワークロードバランシング仮想アプライアンスのステータスを確認する
systemctl status workloadbalancingコマンドを実行します。詳細については、
Workload Balancing commandsを参照してください。
一般的なトラブルシューティングのヒント
-
トラブルシューティングを開始するには、Workload Balancingのログファイル (
LogFile.logおよびwlb_install_log.log) を確認してください。 これらのログは、Workload Balancing仮想アプライアンスの次の場所(デフォルト)にあります。/var/log/wlbこれらのログファイルの詳細レベルは、
wlb.confファイルを使用して構成できます。詳細については、 Workload Balancingログの詳細レベルを上げるを参照してください。 -
詳細については、XenCenter® の 通知 > イベント ビューでログを確認してください。
-
Workload Balancing仮想アプライアンスのビルド番号を確認するには、仮想アプライアンスが監視するプール内のホストで 次のコマンドを実行します。
xe pool-retrieve-wlb-diagnostics | more <!--NeedCopy-->ワークロードバランシングのバージョン番号は、出力の先頭に表示されます。
-
Workload Balancing仮想アプライアンスはCentOSオペレーティングシステムに基づいています。CPU、メモリ、または ディスク関連の問題が仮想アプライアンスで発生した場合は、
/var/log/*の標準Linuxログを使用して 問題を分析できます。 -
標準のLinuxデバッグおよびパフォーマンスチューニングコマンドを使用して、仮想アプライアンスの動作を理解します。例えば、
top、ps、free、sar、およびnetstat。
エラーメッセージ
Workload Balancingは、ダイアログボックスとして画面にエラーを表示し、XenCenterの通知 > イベント ビューにエラーメッセージを表示します。
エラーメッセージが表示された場合は、XenCenterイベントログで追加情報を確認してください。詳細については、 XenCenter製品ドキュメントを参照してください。
Workload Balancingの資格情報の入力に関する問題
WLBサーバーに接続ダイアログの設定中に仮想アプライアンスのユーザーアカウントとパスワードを正常に入力できない場合は、 以下を試してください。
-
Workload Balancing仮想アプライアンスが正しくインポートおよび構成されており、そのすべての サービスが実行されていることを確認してください。
-
正しい資格情報を入力していることを確認してください。WLBサーバーに接続ダイアログでは、2種類の 異なる資格情報が求められます。
-
WLBサーバー資格情報: XenServerは、Workload Balancingと通信するためにこのアカウントを使用します。このアカウントは、
Workload Balancing構成中にWorkload Balancing仮想アプライアンスで作成しました。デフォルトでは、
このアカウントのユーザー名は
wlbuserです。 -
XenServer資格情報: このアカウントは、Workload Balancing仮想アプライアンスがXenServerプールに接続するために使用します。
このアカウントはXenServerプールコーディネーターで作成され、
pool-adminまたはpool-operatorの役割を持ちます。
-
WLBサーバー資格情報: XenServerは、Workload Balancingと通信するためにこのアカウントを使用します。このアカウントは、
Workload Balancing構成中にWorkload Balancing仮想アプライアンスで作成しました。デフォルトでは、
このアカウントのユーザー名は
-
アドレスボックスにWorkload Balancing仮想アプライアンスのホスト名またはFQDNを入力できますが、この アドレスはXenCenterを実行するWindowsシステムが解決およびアクセスできるものである必要があります。ホスト名 アプライアンスをホストしている物理サーバーのホスト名を入力しないでください。FQDNのDNSエントリがない場合は、接続には Workload BalancingアプライアンスのIPアドレスを使用する必要があります。
-
ホストが正しいDNSサーバーを使用しており、XenServerホストがWorkload Balancing サーバーにFQDNを使用して接続できることを確認してください。この確認を行うには、XenServer ホストからWorkload BalancingアプライアンスのFQDNを使用してpingを実行します。例えば、XenServerホストコンソールで次のように入力します。
ping wlb-vpx-1.mydomain.net <!--NeedCopy-->
証明書に関する問題
XenServer 8.4以降では、証明書の検証がデフォルトで有効になっています。Workload Balancing仮想 アプライアンスをXenServerに接続するには、Workload Balancing証明書をXenServerプールにインポートする必要があります。
プールがWorkload Balancingに接続できない場合は、Workload Balancingの証明書チェックを無効にすることで、 証明書構成が原因であるかどうかを確認してください。
-
プールUUIDを取得します。
xe pool-list <!--NeedCopy--> -
証明書の検証を無効にします。
xe pool-param-set wlb-verify-cert=false uuid=<uuid_of_pool> <!--NeedCopy-->
プールが証明書の検証をオフにした状態でWorkload Balancingに接続できる場合、問題は 証明書の設定にあります。接続できない場合、問題はWorkload Balancingの資格情報または ネットワーク接続のいずれかにあります。詳細については、サポートに問い合わせるか、Workload Balancingのトラブルシューティング を参照してください。
問題のトラブルシューティング後、証明書チェックを再度有効にしてください。
-
プールUUIDを取得します。
xe pool-list <!--NeedCopy--> -
証明書の検証を有効にします。
xe pool-param-set wlb-verify-cert=true uuid=<uuid_of_pool> <!--NeedCopy-->
ファイアウォールの問題
Workload Balancing仮想アプライアンスがハードウェアファイアウォールの背後にあり、適切なファイアウォール設定を構成していない場合、次のエラーが表示されます。 「Workload Balancingサーバーへの接続中にエラーが発生しました: <pool name> WLBの初期化をクリックして接続設定を再初期化してください。」このエラーは、 Workload Balancingアプライアンスがその他の理由で到達不能な場合にも表示されることがあります。
Workload Balancing仮想アプライアンスがファイアウォールの背後にある場合は、ポート8012を開いてください。
同様に、XenServerがWorkload Balancingに接続するために使用するポート(デフォルトでは8012)は、 Workload Balancing構成ウィザードを実行したときに指定したポート番号と一致している必要があります。
Workload Balancing接続エラー
Workload Balancingを構成して接続した後に接続エラーが発生した場合、資格情報が無効になっている可能性があります。 この問題を特定するには:
-
WLBサーバーに接続ダイアログボックスに入力した資格情報が正しいことを確認してください。詳細については、 シナリオ1および2を参照してください。
-
WLBサーバーに接続ダイアログボックスに入力したWorkload Balancing仮想アプライアンスのIPアドレスまたはFQDNが 正しいことを確認してください。
-
Workload Balancingの構成中に作成したユーザー名が、WLBサーバーに接続ダイアログボックスに入力した資格情報と 一致することを確認してください。
-
「WLB」タブのWorkload Balancingステータス行に接続エラーが表示された場合は、そのプールでWorkload Balancingを 再構成する必要があるかもしれません。「WLB」タブの「接続」ボタンをクリックし、ホストの 資格情報を再入力してください。
XenCenterからWorkload Balancing仮想アプライアンスへの接続を確立しようとすると、以下のいずれかのシナリオに 遭遇する可能性があります。
シナリオ 1

これは、「WLBサーバーに接続」ダイアログボックスの「XenServer資格情報」フィールドに入力された資格情報が 正しくないことを意味します。これを修正するには、資格情報を再確認するか、「現在のXenCenter資格情報を使用する」 チェックボックスをオンにしてください。
シナリオ 2

これは、Workload Balancing仮想アプライアンスへの接続を試行する際に、「WLBサーバーに接続」ダイアログボックスの 「WLBサーバー資格情報」フィールドに入力された資格情報に問題があることを意味します(ユーザー名または パスワードのいずれかが正しくありません)。ただし、Workload Balancingサービスが実行されていないか、 データベース構成ファイルに問題がある可能性もあります。
資格情報の問題を修正するには、正しいユーザー名とパスワードを使用していることを確認してください。「WLBサーバー資格情報」
フィールドのデフォルトのユーザー名はwlbuserです(rootではありません)。rootはデフォルトの管理者ユーザー名です。
wlbuserはアプライアンスにログオン権限を持つ実際のユーザーではなく(/etc/passwdの下には存在しません)、
したがってこれらの資格情報はWorkload Balancing自体に接続するためにのみ使用されます。そのため、
wlbconfigコマンドを実行することで簡単にリセットできます。資格情報を変更するには、
Workload Balancingの資格情報を変更するを参照してください。
wlbconfigコマンドを実行するには、rootとしてアプライアンスにログインできる必要があります。rootパスワードが不明な場合は、
通常のCentOS/RHELパスワード回復手順を使用してリセットできます。
資格情報をリセットしてもエラーが解消しない場合は、次のことを確認してください。
-
systemctl status workloadbalancingコマンドを使用して、Workload Balancingプロセスが実行されているか確認してください。 - このコマンドを実行して、
wlb.confファイルが存在し、正しいディレクトリにあることを確認してください。cat /opt/vpx/wlb/wlb.conf
シナリオ 3

これは、XenCenterからWorkload Balancingに接続する際に、サーバーアドレスオプションで指定されたポートへの接続に 問題があることを示しています(誤ったポートが入力されたか、ポートがリッスンしていません)。 これをトラブルシューティングするには:
- ターゲットアプライアンスが稼働していることを確認してください。
- Workload Balancing接続詳細ウィンドウに入力されたポート(デフォルトは8012)を再確認してください。
- このポートがアプライアンスで有効になっており、リッスンしていることを確認してください。ポートがリッスンしているか、またはトラフィックが拒否されているかを判断するには、
telnet <host> <port>やiptables -Lのようなコマンドを使用してください。
シナリオ 4

このエラーは、stunnelに問題がある場合(実行されていないか、証明書/キーペアが 正しくない場合)に発生します。これをトラブルシューティングするには、まず証明書とキーを確認してください。
-
次のコマンドを実行して、証明書の有効期限が切れていないことを確認してください。
openssl x509 -dates -in $(grep cert\ = /etc/stunnel/stunnel.conf |cut -d '=' -f2) -noout <!--NeedCopy--> -
次の2つのコマンドの出力の16進数を比較してください。出力が一致しない場合、誤ったキーが 使用されています。
openssl x509 -modulus -in $(grep cert\ = /etc/stunnel/stunnel.conf |cut -d '=' -f2) -noout | openssl md5 <!--NeedCopy-->および
openssl rsa -modulus -in $(grep key\ = /etc/stunnel/stunnel.conf | cut -d '=' -f2) -noout | openssl md5 <!--NeedCopy-->
証明書とキーに問題がない場合は、stunnelが実行されており、ポート8012(または 設定されたポート)にバインドされていることを確認してください。
-
WLBアプライアンスのCLIで次のコマンドを実行してください。
netstat -tulpn <!--NeedCopy-->出力では、8012(またはカスタムポート)が
status: LISTENと表示されるはずです。 -
アプライアンスの容量が不足した場合、stunnelは実行されません。アプライアンスに十分な空き容量があるかどうかを確認するには、
df -hやdu -hs /*のようなコマンドを使用して、 アプライアンスに十分な空き容量があるかを確認してください。ディスク容量を増やすには、 仮想アプライアンスのディスクを拡張するを参照してください。
シナリオ 5

このエラーは、stunnelプロセスが終了したために発生する可能性があります。プロセスを再起動しても同じ結果になる場合は、 Workload Balancing仮想アプライアンスを再起動してください。
その他のエラー
Workload Balancingへの接続を試行中にその他のエラーが発生した場合、またはさらにサポートが必要な場合は、
上記の手順を実行する上で、Workload Balancingアプライアンスの/var/log/wlbディレクトリにあるWorkload Balancingログを
収集してください。
詳細については、サポートにお問い合わせください。
Workload Balancingが動作しなくなる
Workload Balancingが動作しない場合(たとえば、設定の変更を保存できない場合など)、Workload Balancingログファイルで次のエラーメッセージを確認してください。
dwmdatacolsvc.exe: Don't have a valid pool. Trying again in 10 minutes.
<!--NeedCopy-->
このエラーは通常、1つ以上の問題のあるVMを持つプールで発生します。 VMに問題がある場合、次の動作が見られることがあります。
- Windows。Windows VMが停止エラー(「ブルースクリーン」)によりクラッシュします。
- Linux。Linux VMがコンソールで応答しなくなり、通常はシャットダウンしません。
この問題を回避するには:
-
VMを強制的にシャットダウンします。これを行うには、問題のあるVMがあるホストで次のいずれかを実行します。
- XenCenterでVMを選択し、VMメニューから強制シャットダウンをクリックします。
-
vm-shutdownxeコマンドを、forceパラメーターをtrueに設定して実行します。例:xe vm-shutdown force=true uuid=vm_uuid <!--NeedCopy-->ホストのUUIDは、そのホストの(XenCenterの)全般タブで確認するか、
host-listxeコマンドを実行して確認できます。VMのUUIDは、VMの全般タブで確認するか、vm-listxeコマンドを実行して確認できます。 詳細については、「コマンドラインインターフェイス」を参照してください。
-
クラッシュしたVMを提供しているXenServerの
xsconsoleまたはXenCenterで、すべてのVMを別のホストに移行し、xe-toolstack-restartコマンドを実行します。(HAが有効な間はツールスタックを再起動しないでください。可能であれば、 ツールスタックを再起動する前に一時的にHAを無効にしてください。)
ワークロードバランシングサーバーの変更に関する問題
ワークロードバランシングから切断せずにプールを別のワークロードバランシングサーバーに接続した場合、古い ワークロードバランシングサーバーと新しいワークロードバランシングサーバーの両方がプールを監視します。
この問題を解決するには、次のいずれかの操作を実行できます。
- 古いワークロードバランシング仮想アプライアンスをシャットダウンして削除します。
- ワークロードバランシングサービスを手動で停止します。これらのサービスは、分析、データコレクター、Webサービスです。
注:
ワークロードバランシング仮想アプライアンスからプールを切断するために
pool-deconfigure-wlbxe コマンドを使用したり、 別の仮想アプライアンスを指定するためにpool-initialize-wlbxe コマンドを使用したりしないでください。