概要
HyperFlex 4.0(2a)以降、ESXiおよびSCVMホスト名の解決可能を監視する新しいウォッチドッグサービスが導入されています。HXがホスト名を解決できないか、DNSサーバに到達できない場合は、ウォッチドッグプロセスによってアラーム/イベントを発生させるためにshow dnsコマンドが使用されます。このドキュメントでは、CSCvt13947の回避策について説明します - 1つ以上のDNSサーバがヘルスモニタリングからHX Connect for DNSアラートに応答しない。
前提条件
この問題に該当する前提条件は、Hyperflex Data Platform 4.0(2a)です。
背景説明
この新しいフレームワークでは、このイベントトリガーを使用しないようにするには、esxiホスト名とscvmホスト名をDNSに含める必要があります。
{
"message": "HX Controller VM {HOSTNAME} one or more configured DNS servers not responding",
"type": "NODE",
"name": "DnsServerOfflineEvent",
"severity": "warning"
},
DNS周辺にもアラームがあります。
{
"name": "HXA-NOD-0009",
"description": "Triggered when one or more configured DNS servers on controller VM cannot be reached.",
"category": "warning",
"message": "One or more DNS servers configured on HX controller VM {HOSTNAME} not responding",
"triggeringEvents" : ["DnsServerOfflineEvent"],
"resetEvents" : ["DnsServerOnlineEvent"]
}
HX Connectに表示される障害の例を次に示します。
対応するshow dns出力を次に示します。
root@SpringpathController3G4ZKOQ6SE:~# show dns
+------------------------------------------+------------------+--------------+---------------------------+
| DNS Name | Resolved Address | status | error |
+-------------------------------------------+------------------+--------------+---------------------------+
| HX01.rchs.local | None | Not Resolved | No DNS servers configured |
| HX04.rchs.local | None | Not Resolved | No DNS servers configured |
| HX03.rchs.local | None | Not Resolved | No DNS servers configured |
| HX02.rchs.local | None | Not Resolved | No DNS servers configured |
| SpringpathController3G4ZKOQ6SE.rchs.local | None | Not Resolved | No DNS servers configured |
| SpringpathController5DCAL5X6C2.rchs.local | None | Not Resolved | No DNS servers configured |
| SpringpathControllerWZ2X6H20SF.rchs.local | None | Not Resolved | No DNS servers configured |
| SpringpathControllerGR57QZVDED.rchs.local | None | Not Resolved | No DNS servers configured |
+-------------------------------------------+------------------+--------------+---------------------------+
Name Servers: ['172.16.199.101'], Search Domains: - rchs.local
ご覧のように、それぞれのステータスは[Not Resolved]で、エラーは[No DNS servers configured]です。この出力のDNSサーバは172.16.199.101です。
nslookupを実行すると、ホスト名SpringpathController3G4ZKOQ6SEが解決しないことがわかります。
root@SpringpathController5DCAL5X6C2:~# nslookup SpringpathController3G4ZKOQ6SE
Server: 172.16.199.101
Address: 172.16.199.101#53
** server can't find SpringpathController3G4ZKOQ6SE: SERVFAIL
show dnsコマンドのホスト名がDNSに追加されると、show DNSは解決されたアドレスを表示し、ステータスは[Resolved]になります。
root@SpringpathController3G4ZKOQ6SE:~# show dns
+-------------------------------------------+------------------+--------------+---------------------------+
| DNS Name | Resolved Address | status | error |
+-------------------------------------------+------------------+--------------+---------------------------+
| HX01.rchs.local | 172.16.10.45 | Resolved | - |
| HX04.rchs.local | 172.16.10.48 | Resolved | - |
| HX03.rchs.local | 172.16.10.47 | Resolved | - |
| HX02.rchs.local | 172.16.10.46 | Resolved | - |
| SpringpathController3G4ZKOQ6SE.rchs.local | 172.16.10.41 | Resolved | - |
| SpringpathController5DCAL5X6C2.rchs.local | 172.16.10.44 | Resolved | - |
| SpringpathControllerWZ2X6H20SF.rchs.local | 172.16.10.43 | Resolved | - |
| SpringpathControllerGR57QZVDED.rchs.local | 172.16.10.42 | Resolved | - |
+-------------------------------------------+------------------+--------------+---------------------------+
Name Servers: ['172.16.199.101'], Search Domains: - rchs.local
回避策
回避策は、次のコマンドを使用してモニタリング機能を無効にすることです。
root@hx-02-scvm-01:~# grep -i "monitor_dns_servers" /opt/springpath/hx-diag-tools/watchdog_config.json && sed -ie 's/"monitor_dns_servers": true/"monitor_dns_servers": false/' /opt/springpath/hx-diag-tools/watchdog_config.json && grep -i "monitor_dns_servers" /opt/springpath/hx-diag-tools/watchdog_config.json && restart watchdog
"monitor_dns_servers": true,
"monitor_dns_servers": false,
watchdog start/running, process 6350
root@hx-02-scvm-01:~#
このコマンドは、/opt/springpath/hx-diag-tools/watchdog_config.jsonで「monitor_dns_servers」をfalseに設定し、ウォッチドッグサービスを再起動します。
変更を元に戻すには、各ストレージコントローラVMで次のコマンドを実行します。
root@hx-02-scvm-01:~# grep -i "monitor_dns_servers" /opt/springpath/hx-diag-tools/watchdog_config.json && sed -ie 's/"monitor_dns_servers": false/"monitor_dns_servers": true/' /opt/springpath/hx-diag-tools/watchdog_config.json && grep -i "monitor_dns_servers" /opt/springpath/hx-diag-tools/watchdog_config.json && restart watchdog
"monitor_dns_servers": false,
"monitor_dns_servers": true,
watchdog start/running, process 9473
root@hx-02-scvm-01:~#
Hyperflex 4.0(2b)では、この機能はデフォルトで無効になります。この機能は、次の通知まで無効のままにすることをお勧めします。