0%

HDFS HA 节点中都处于 standby 状态

Content here


前言

在执行 hbase 命令时,报错信息如下

1
2
Exception in thread "main" java.lang.RuntimeException: 
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.ipc.StandbyException): Operation category READ is not supported in state standby

初步判断是 HDFS 的 HA 节点异常

搜索引擎找到相应的错误Operation category READ is not supported in state standby 故障解决

手动执行命令失效Illegal argument: Unable to determine service address for namenode 'namenode1'

因为我的NameNode不叫namenode1, namenode2

HDFS查看异常:Operation category READ is not supported in state standby. Visit中了解到跟下方配置有关,
手动搜索hdfs-site.xml,注意有可能你的不叫.nameservice1,这个是自己设置的,你只需要搜索其前缀dfs.ha.namenodes.

1
2
3
4
<property>
<name>dfs.ha.namenodes.nameservice1</name>
<value>namenode223,namenode47</value>
</property>

结果我在hdfs-site.xml中未找到, 在Operation category READ/WRITE is not supported in state standby解决案例
看到其使用 nn1, nn2 ,随手试试发现可行

1
2
3
4
$ hdfs haadmin -getServiceState nn1                                                                                                                                                                
standby
$ hdfs haadmin -getServiceState nn2
standby

两个 namenode 节点均处于 standby 状态,随后执行

强行手工将 namenode1 状态转换为 active

1
hdfs haadmin -transitionToActive --forcemanual nn1

手动执行hbase命令,工作正常,故障解决