5.2. 监控环境
在本节中,我们专注于在测试期间监控环境。本节仅涵盖查看更改所需的 monitor。建议从专用终端运行这些监控器。为了能够在测试期间检测更改,建议在开始测试前启动监控。
在 Useful Commands 部分中,会显示更多示例。
5.2.1. 发现主节点
您需要发现主节点来监控故障转移,或运行某些命令,它们仅在主节点上执行时提供有关复制状态的信息。
要发现主节点,您可以以 < sid>adm
用户身份运行以下命令:
clusternode1:rh2adm> watch -n 5 'hdbnsutil -sr_stateConfiguration | egrep -e "primary masters|^mode"'
输出示例,当 clusternode2 是主数据库时:
mode: syncmem primary masters: clusternode2
在运行主数据库的节点上的输出是:
mode: primary
5.2.2. 检查 Replication 状态
复制状态显示主数据库节点和次要数据库节点与复制的当前状态之间的关系。
要发现复制状态,您可以以 < sid>adm
用户身份运行:
clusternode1:rh2adm> hdbnsutil -sr_stateConfiguration
如果要永久监控系统复制状态的变化,请运行以下命令:
clusternode1:rh2adm> watch -n 5 'python /usr/sap/${SAPSYSTEMNAME}/HDB${TINSTANCE}/exe/python_support/systemReplicationStatus.py ; echo Status $?'
这个示例还决定了当前的返回代码。
只要返回代码(状态)为 15,复制状态就正常。其他返回代码包括:
- 10: NoHSR
- 11: error
- 12: unknown
- 13: 初始化
- 14: 同步
- 15: active
如果注册了新的次要设备,您可以在主节点上的单独窗口中运行它,您会看到复制的进度。如果要监控故障转移,您可以在旧主以及新的主数据库服务器上并行运行它。如需更多信息,请参阅 检查 SAP HANA 系统复制状态。
5.2.3. 检查 /var/log/messages
条目
Pacemaker 将大量信息写入 /var/log/messages
文件中。在故障转移过程中,大量信息会被写入这个消息文件中。要根据 SAP HANA 资源代理只遵循重要的消息,过滤 pacemaker SAP 资源的详细活动非常有用。足以检查单个集群节点上的消息文件。
例如,您可以使用这个别名:
[root@clusternode1]# tmsl='tail -1000f /var/log/messages | egrep -s "Setting master-rsc_SAPHana_$SAPSYSTEMNAME_HDB${TINSTANCE}|sr_register|WAITING4LPA|PROMOTED|DEMOTED|UNDEFINED|master_walk|SWAIT|WaitforStopped|FAILED|LPT"'
在单独的窗口中运行 tmsl
来监控测试的进度。还要检查 monitor 故障切换和同步状态的示例。
5.2.4. 集群状态
有几种方法可以检查集群状态。
检查集群是否正在运行:
-
pcs cluster status
-
检查集群和所有资源:
-
pcs status
-
检查集群、所有资源和所有节点属性:
-
pcs status --full
-
仅检查资源:
-
pcs resource
-
pcs status --full
命令将为您提供所有必要的信息。要监控更改,您可以与 watch 一起运行这个命令:
[root@clusternode1]# watch pcs status --full
可以在 Check cluster status 中找到输出示例和更多选项。
5.2.5. 发现左侧
为确保您的环境准备好运行下一个测试,需要修复或删除之前测试中的左侧。
stonith
用于隔离集群中的节点:-
detect:
[root@clusternode1]# pcs stonith history
-
Fix:
[root@clusternode1]# pcs stonith cleanup
-
detect:
多个主数据库:
detect:
clusternode1:rh2adm> hdbnsutil -sr_stateConfiguration | grep -i primary
需要识别具有相同主的所有节点。
-
fix: 使用
--force_full_replica
选项重新注册错误的主
移动导致的位置限制:
detect:
[root@clusternode1]# pcs constraint location
检查警告部分。
-
Fix:
[root@clusternode1]# pcs resource clear <clone-resource-which was moved>
二级复制关系:
-
detect: on the primary database run
clusternode1:rh2adm> python $DIR_EXECUTABLE/python_support/systemReplicationStatus.py
- 修复:取消注册并重新注册辅助数据库。
-
detect: on the primary database run
检查 siteReplicationMode (所有 SAP HANA 节点上的相同输出)
-
clusternode1:rh2adm> hdbnsutil -sr_state --sapcontrol=1 |grep site prerequisitesMode
-
pcs 属性:
-
detect:
[root@clusternode1]# pcs property config
-
Fix:
[root@clusternode1]# pcs property set <key=value>
-
detect:
清除
maintenance-mode
。-
[root@clusternode1]# pcs property set maintenance-mode=false
-
log_mode :
detect:
clusternode1:rh2adm> python systemReplicationStatus.py
将响应
log_mode
通常需要的复制状态。可以检测到log_mode
,如 使用 hdbsql 检查 Inifile 内容 中所述。-
fix :将
log_mode
更改为 normal,然后重新启动主数据库。
CIB 条目:
detect: 集群信息基础中的 SFAIL 条目。
请参阅 检查集群一致性,以查找和删除 CIB 条目。
cleanup/clear:
detect:
[root@clusternode1]# pcs status --full
有时它会显示错误或警告。您可以清理/清理/清理资源,如果一切正常,则不会发生。在运行下一个测试前,您可以清理您的环境。
修复示例:
[root@clusternode1]# pcs resource clear <name-of-the-clone-resource>
[root@clusternode1]# pcs resource cleanup <name-of-the-clone-resource>
如果要检查现有环境中是否有问题,这也很有用。
如需更多信息,请参阅 用法 命令。