简介
从HyperFlex 4.0(2a)开始,有一项新的监视程序服务将监控ESXi和SCVM主机名的可分辨性。如果HX无法解析主机名或访问DNS服务器,则监视程序进程会使用show dns命令来发出警报/事件。本文档将介绍CSCvt13947的解决方法 — 在HX连接上,一个或多个DNS服务器未响应,以从运行状况监控中发出DNS警报。
先决条件
解决此问题的先决条件是Hyperflex数据平台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服务器未配置。此输出中的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将显示已解析的地址,状态将被解析:
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)中,默认情况下禁用此功能。建议在进一步通知之前将其禁用。