【环境】
sdb 1.12.4
【故障描述】
在sdb中新增数据节点,在start 时,报告 -128 错误,Catalog authentication failed
【备注】
db = new Sdb("sdb5", 11810)
rg = db.getRG("dg4")
node = rg.getNode("sdb5", 11050)
node.start()
(nofile):0 uncaught exception: -128
Catalog authentication failed
在coord 中执行 listReplicaGroup, 发现 sdb5:11050 存在 dg4 组
直连 catalog master node
》 dc = new Sdb("sdb5", 11800)
》 dc.SYSCAT.SYSNODES.find()
也发现 sdb5:11050 在 dg4 组中,
查看 coord 的配置
svcname=11810
dbpath=/sdb/app/database/coord/11810
role=coord
catalogaddr=sdb3:11803,sdb4:11803,sdb5:11803
查看 catalog 日志,报告说
Failed to get node-info:{ "Role": 0, "HostName": "localhost.localdomain", "Service": [ { "Type": 1, "Name": "11051" }, { "Type": 2, "Name": "11052" } ], "IP": [ "10.151.65.246", "127.0.0.1", "localhost" ] } (rc=-155)
node 不存在
【更多说明】
节点在第一次建立时,启动不成功,删除后再次新建节点
【解决方法】
查看 /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.151.65.242 sdb1
10.151.65.243 sdb2
10.151.65.244 sdb3
10.151.65.245 sdb4
10.151.65.246 sdb5
执行 hostname , 发现 出现异常的机器没有配置 hostname, 导致catalog 无法通过验证,配置好hostname 后, 问题解决
【参考链接】
错误码
常见错误处理指南