eclipse 远程接入vmware中的hbase

本文介绍了如何在Windows上的Eclipse中远程接入Linux VM中的HBase。主要内容包括导入必要的jar包,配置hbase-site.xml,解决连接异常问题,并验证操作成功。
hadoop和hbase都部署在linux下,但是我们习惯在windows下使用eclipse编写java,所以就有了这个蛋疼的事情
环境:windows7 eclipse hbase-0.92.0
1、把需要用到的jar导入
需要的jar可以在linux下的HADOOP_HOME/lib和HBASE_HOME/lib下找到,需要的jar包如下:

2、配置文件hbase-site.xml:
<configuration>
        <property>
                <name>hbase.rootdir</name>
                <value>hdfs://192.168.1.128:9000/hbase</value>
        </property>
        <property>
                <name>hbase.cluster.distributed</name>
                <value>true</value>
        </property>
        <property>
                <name>hbase.master</name>
                <value>192.168.1.128:60000</value>
        </property>
        <property>
                <name>hbase.zookeeper.quorum</name>
                <value>192.168.1.128</value>
        </property>
        <property>
                <name>zookeeper.session.timeout</name>
                <value>60000</value>
        </property>
        <property>
                <name>hbase.zookeeper.prpperty.clientPort</name>
                <value>2181</value>
        </property>
</configuration>
3、测试函数:
public static void main(String[] args) throws IOExc
在Linux系统中远程连接HBase并创建表,可按以下步骤操作: ### 基础配置 编辑文件`/usr/local/hbase-2.5.0/conf/hadoop-env.sh`,配置环境变量: ```bash export HBASE_HOME=/usr/local/hbase-2.5.0/ export JAVA_HOME=/usr/local/src/server/jdk1.8.0_202 export HADOOP_HOME=/usr/local/src/server/hadoop-3.1.3 export HBASE_LOG_DIR=$HBASE_HOME/logs export HBASE_PID_DIR=$HBASE_HOME/pids export HBASE_MANAGES_ZK=false ``` 此配置可确保HBase运行所需的环境变量正确设置[^4]。 ### 额外配置 在hbase的配置`hbase-site.xml`添加额外配置: ```xml <property> <name>hbase.master.ipc.address</name> <value>0.0.0.0</value> </property> <property> <name>hbase.regionserver.ipc.address</name> <value>0.0.0.0</value> </property> ``` 添加此配置可避免在远程连接时出现连接超时、重试超时等问题[^3]。 ### 启动Thrift服务 启动Thrift服务,进入`/usr/local/hbase/bin/`目录,执行以下命令: ```bash ./hbase-daemon.sh start thrift ``` 使用`jps`命令查看是否启动成功,若出现`ThriftServer`结点则表示成功启动[^5]。 ### Java代码远程连接并创建表 使用Java代码进行远程连接并创建表,示例代码如下: ```java import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HBaseConfiguration; import org.apache.hadoop.hbase.HColumnDescriptor; import org.apache.hadoop.hbase.HTableDescriptor; import org.apache.hadoop.hbase.TableName; import org.apache.hadoop.hbase.client.Admin; import org.apache.hadoop.hbase.client.Connection; import org.apache.hadoop.hbase.client.ConnectionFactory; import java.io.IOException; public class HBaseRemoteCreateTable { public static void main(String[] args) throws IOException { // 配置HBase连接信息 Configuration HBASE_CONFIG = new Configuration(); HBASE_CONFIG.set("hbase.zookeeper.quorum", "192.168.180.137:2181"); Configuration cfg = HBaseConfiguration.create(HBASE_CONFIG); // 创建连接和管理对象 try (Connection connection = ConnectionFactory.createConnection(cfg); Admin admin = connection.getAdmin()) { // 定义表名 TableName tableName = TableName.valueOf("test_table"); // 创建表描述符 HTableDescriptor tableDescriptor = new HTableDescriptor(tableName); // 定义列族 HColumnDescriptor columnFamily = new HColumnDescriptor("cf"); tableDescriptor.addFamily(columnFamily); // 创建表 if (!admin.tableExists(tableName)) { admin.createTable(tableDescriptor); System.out.println("Table created successfully!"); } else { System.out.println("Table already exists!"); } } } } ``` 在上述代码中,需要确保`hbase.zookeeper.quorum`的值与Linux上HBase的`hbase-site.xml`一致,以保证能成功连接HBase数据库[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值