HBase报错:java.net.ConnectException: Connection refused

HBase Standalone安装与启动问题
本文描述了在Standalone模式下安装HBase遇到的问题及解决方法,主要问题是Hadoop连接被拒绝导致Zookeeper连接失败。解决方案包括检查并配置Hadoop环境变量,确保hbase-site.xml文件正确无误。

问题描述:

standalone模式安装HBase,安装步骤参考:http://archive.cloudera.com/cdh5/cdh/5/hbase-0.98.6-cdh5.3.3/book/quickstart.html

启动HBase,查看日志信息发现报错,错误大致意思为Hadoop连接拒绝,或者由此导致zookeeper连接拒绝

 

报错信息:

2015-12-29 10:25:21,165 FATAL [M:0;hadoop-yarn:46823] master.HMaster: Unhandled exception. Starting shutdown.java.net.ConnectException: Call From hadoop-yarn.cloudyhadoop.com/192.168.1.20 to localhost:8020 failed on connection exception: 

java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused

Caused by: java.net.ConnectException: Connection refused

at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)

at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:739)

at org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:206)

at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:529)

at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:493)

at org.apache.hadoop.ipc.Client$Connection.setupConnection(Client.java:606)

at org.apache.hadoop.ipc.Client$Connection.setupIOstreams(Client.java:700)

at org.apache.hadoop.ipc.Client$Connection.access$2800(Client.java:367)

at org.apache.hadoop.ipc.Client.getConnection(Client.java:1463)

at org.apache.hadoop.ipc.Client.call(Client.java:1382)

 

2015-12-29 10:25:22,685 WARN  [RS:0;hadoop-yarn:47199-SendThread(localhost:2181)] zookeeper.ClientCnxn: Session 0x151eb8db6de0001 for server null, unexpected error, closing socket connection and attempting reconnect

java.net.ConnectException: Connection refused

at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)

at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:739)

at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:350)

at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1081)

 

解决方案:

/etc/profile未配置hadoop环境,需要在conf/hbase-env.sh 配置hadoop环境变量:

export HADOOP_HOME=/opt/modules/hadoop-2.5.0-cdh5.3.3

或者由于hbase-site.xml配置文件出现语法错误,hadoopshare/hadoop多包或缺包。

### Hive 启动时遇到 `java.net.ConnectException` 错误的原因分析 当Hive启动过程中出现`java.net.ConnectException: 拒绝连接 (Connection refused)`错误时,这意味着客户端尝试与服务器建立TCP/IP连接失败。此问题可能由多种原因引起: - **目标服务未运行**:指定的目标主机上的服务(如NameNode)并未启动或崩溃。 - **网络配置不当**:防火墙设置阻止了通信,或者IP地址和端口号不匹配。 - **权限不足**:应用程序缺乏必要的权限来发起连接请求。 ### 解决方案 #### 1. 验证 NameNode 是否正常工作 确保 Hadoop 的 NameNode 正确启动并处于活动状态。可以通过命令行工具检查其健康状况和服务状态[^1]。 ```bash hdfs haadmin -getServiceState nn1 ``` 如果发现NameNode存在问题,则需先解决问题再继续操作Hive。 #### 2. 修改配置文件中的端口映射 有时默认的RPC端口可能会与其他进程冲突或是不符合当前环境的要求。对于某些版本的HBase, 将8020改为9000可以解决类似的连接问题;而对于Hive而言,应当确认`hive-site.xml`和其他相关配置文件内的端口设定是否正确无误,并且这些端口确实开放可用[^3]。 #### 3. 检查防火墙规则 确认所有涉及机器之间的防火墙策略允许所需端口间的通讯。必要时调整安全组规则或其他形式的安全防护措施以放通流量[^2]。 #### 4. 网络连通性测试 利用ping命令验证集群内部各节点间能否互相访问,以及telnet命令检测特定端口是否可达: ```bash ping hadoop102 telnet 192.168.197.102 9820 ``` 上述命令可以帮助定位是否存在底层网络层面的问题。 #### 5. 日志审查 深入查看Hive的日志记录,特别是那些发生在异常发生前后的时间段内产生的日志条目,从中寻找更多线索以便进一步诊断问题所在。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值