hadoop2.x ha 不能切换 active standby (高可用的两个大坑)

原因1 

在使用sshfence的情况下,没有linux没有安装 psmisc

原因2

因为linux系统之间需要免密登陆 ,在dsa加密情况下,正常。但在rsa下,会出错。

原因是因为:

原加密代码:ssh-keygen -t rsa   这种不支持,所以不能切换

修改后:ssh-keygen -t rsa -m PEM  这种可以,(亲测)

2021-11-02 10:18:20,313 WARN org.apache.hadoop.ha.SshFenceByTcpPort: Unable to create SSH session
com.jcraft.jsch.JSchException: invalid privatekey: [B@433d45bc
	at com.jcraft.jsch.KeyPair.load(KeyPair.java:664)
	at com.jcraft.jsch.KeyPair.load(KeyPair.java:561)
	at com.jcraft.jsch.IdentityFile.newInstance(IdentityFile.java:40)
	at com.jcraft.jsch.JSch.addIdentity(JSch.java:406)
	at com.jcraft.jsch.JSch.addIdentity(JSch.java:366)
	at org.apache.hadoop.ha.SshFenceByTcpPort.createSession(SshFenceByTcpPort.java:121)
	at org.apache.hadoop.ha.SshFenceByTcpPort.tryFence(SshFenceByTcpPort.java:90)
	at org.apache.hadoop.ha.NodeFencer.fence(NodeFencer.java:113)
	at org.apache.hadoop.ha.NodeFencer.fence(NodeFencer.java:92)
	at org.apache.hadoop.ha.ZKFailoverController.doFence(ZKFailoverController.java:547)
	at org.apache.hadoop.ha.ZKFailoverController.fenceOldActive(ZKFailoverController.java:520)
	at org.apache.hadoop.ha.ZKFailoverController.access$1100(ZKFailoverController.java:62)
	at org.apache.hadoop.ha.ZKFailoverController$ElectorCallbacks.fenceOldActive(ZKFailoverController.java:943)
	at org.apache.hadoop.ha.ActiveStandbyElector.fenceOldActive(ActiveStandbyElector.java:991)
	at org.apache.hadoop.ha.ActiveStandbyElector.becomeActive(ActiveStandbyElector.java:888)
	at org.apache.hadoop.ha.ActiveStandbyElector.processResult(ActiveStandbyElector.java:473)
	at org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:610)
	at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:508)
2021-11-02 10:18:20,314 WARN org.apache.hadoop.ha.NodeFencer: Fencing method org.apache.hadoop.ha.SshFenceByTcpPort(null) was unsuccessful.
2021-11-02 10:18:20,314 ERROR org.apache.hadoop.ha.NodeFencer: Unable to fence service by any configured method.
2021-11-02 10:18:20,314 WARN org.apache.hadoop.ha.ActiveStandbyElector: Exception handling the winning of election
java.lang.RuntimeException: Unable to fence NameNode at hdp-datanode-1/10.211.55.40:8020
	at org.apache.hadoop.ha.ZKFailoverController.doFence(ZKFailoverController.java:548)
	at org.apache.hadoop.ha.ZKFailoverController.fenceOldActive(ZKFailoverController.java:520)
	at org.apache.hadoop.ha.ZKFailoverController.access$1100(ZKFailoverController.java:62)
	at org.apache.hadoop.ha.ZKFailoverController$ElectorCallbacks.fenceOldActive(ZKFailoverController.java:943)
	at org.apache.hadoop.ha.ActiveStandbyElector.fenceOldActive(ActiveStandbyElector.java:991)
	at org.apache.hadoop.ha.ActiveStandbyElector.becomeActive(ActiveStandbyElector.java:888)
	at org.apache.hadoop.ha.ActiveStandbyElector.processResult(ActiveStandbyElector.java:473)
	at org.apache.zookeeper.ClientCnxn$EventThread.processEvent(ClientCnxn.java:610)
	at org.apache.zookeeper.ClientCnxn$EventThread.run(ClientCnxn.java:508)

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值