内容纲要
概要描述
经常遇到客户有磁盘故障排查/磁盘更换的问题,需要确认某个磁盘被TDH哪些服务的配置参数所使用。
详细说明
比如,我们需要确认 kv1节点,磁盘 /mnt/disk2 的服务使用情况。
方法一:Manager数据库查询
参考 连接Manager数据库方式 登录manager数据库,执行如下查询:
use transwarp_manager;
SELECT
serviceName,
configName,
hostname,
value,
recommendedValue,
src_table,
CASE
WHEN value LIKE '%disk1%' THEN 'value_match'
ELSE 'recommendedValue_match'
END AS hit_source
FROM (
-- 第一部分:service_config_node_entry
SELECT
t3.name AS serviceName,
t1.name AS configName,
t2.hostname,
t1.value,
t1.recommendedValue,
'service_config_node_entry' AS src_table
FROM service_config_node_entry t1
LEFT JOIN node t2 ON t1.nodeId = t2.id
LEFT JOIN service t3 ON t1.serviceId = t3.id
UNION ALL
-- 第二部分:role_config_node_entry****
SELECT
t3.name AS serviceName,
t1.name AS configName,
t4.hostname,
t1.value,
t1.recommendedValue,
'role_config_node_entry' AS src_table
FROM role_config_node_entry t1
LEFT JOIN role t2 ON t1.roleId = t2.id
LEFT JOIN service t3 ON t1.serviceId = t3.id
LEFT JOIN node t4 ON t2.nodeId = t4.id
) AS tmp
WHERE hostname = 'kv2'
AND COALESCE(value, recommendedValue) LIKE '%disk1%'
ORDER BY serviceName, configName;
结果中,value 字段 非null则用 value,为null则用 recommendedValue
需要注意的是,某些集群通过上述sql虽然能够查询到配置信息,但是实际上该节点已经不存在这个服务角色了,是因为manager数据库因为某些历史原因残留了垃圾数据,所以需要结合组件真实部署情况进一步判断!
方法二:Manager页面节点-磁盘信息
Manager 9.3.3 版本开始,支持查看节点-磁盘信息,从节点页面,选择对应的节点进入,点击磁盘,即可以看到所有的磁盘列表信息。

角色列表,会以 角色-配置名-值的方式,展示所有配置信息,关于该磁盘的配置会以 黑色高亮 的形式突出,其他磁盘 置灰。
