Hadoop(六)HBase安装

下载地址:http://archive.apache.org/dist/hbase/
这里使用的是hbase-1.2.4-bin.tar.gz版本
这里上传到了linux虚拟机/home/chs/software/目录下并解压

第一步进入到解压目录中找到conf文件夹进去找到hbase-env.sh文件打开编辑
cd /home/chs/hbase-1.2.4-bin/conf
vim hbase-env.sh
该文件的靠前部分有下面一行内容

# export JAVA_HOME=/usr/java/jdk1.6.0/
打开注释并改成自己的jdk的路径
export JAVA_HOME=/home/chs/java/jdk1.8.0_172

第二步修改配置文件 hbase-site.xml
vim hbase-site.xml
加入下面的配置

<configuration>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>master</value>
</property>
</configuration>

第三步设置 regionservers
vim regionservers
将 regionservers 中的 localhost 修改为slave

第四步配置环境变量
vim /etc/profile

export HBASE_HOME=/home/chs/software/hbase-1.2.4
export HADOOP_CLASSPATH=$HBASE_HOME/lib/*
export PATH=$HBASE_HOME/bin:$PATH

让配置生效 source /etc/profile

第五步将 HBase 安装文件复制到 HadoopSlave 节点

scp -r hbase-1.2.4 slave:/home/chs/software

第六步启动并验证 HBase

bin/start-hbase.sh
出错了:

master: java.net.BindException: Address already in use
master:     at sun.nio.ch.Net.bind0(Native Method)
master:     at sun.nio.ch.Net.bind(Net.java:433)
master:     at sun.nio.ch.Net.bind(Net.java:425)
master:     at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
master:     at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
master:     at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:67)
master:     at org.apache.zookeeper.server.NIOServerCnxnFactory.configure(NIOServerCnxnFactory.java:95)
master:     at org.apache.zookeeper.server.ZooKeeperServerMain.runFromConfig(ZooKeeperServerMain.java:111)
master:     at org.apache.hadoop.hbase.zookeeper.HQuorumPeer.runZKServer(HQuorumPeer.java:94)

报错的原因是 zookeeper已经启动了。

解决的办法有2种:

1.启动hbase的之前kill掉所有的 zk进程 让hbase启动zk

2.将参数hbase-env.sh中HBASE_MANAGES_ZK 改成false,在hbase之前手动启动zk.

starting master, logging to /home/chs/software/hbase-1.2.4/logs/hbase-root-master-master.out
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
root@slave's password: 
slave: starting regionserver, logging to /home/chs/software/hbase-1.2.4/bin/../logs/hbase-root-regionserver-slave.out
slave: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
slave: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0

这里有两个警告

Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0

是因为用的jdk1.8
进入hbase安装目录的conf中
vim hbase-env.sh
注释掉下面的两句话

# Configure PermSize. Only needed in JDK7. You can safely remove it for JDK8+
export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"
export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m

在启动就正常了

master: starting zookeeper, logging to /home/chs/software/hbase-1.2.4/bin/../logs/hbase-root-zookeeper-master.out
starting master, logging to /home/chs/software/hbase-1.2.4/logs/hbase-root-master-master.out
root@slave's password: 
slave: starting regionserver, logging to /home/chs/software/hbase-1.2.4/bin/../logs/hbase-root-regionserver-slave.out

打开浏览器输入 http://master:16010/ 可以查看其状态
一开始输入开不开,我的原因是没有启动hadoop ,先start-all.sh启动hadoop在启动hbase就能打开了。

猜你喜欢

转载自blog.csdn.net/mingyunxiaohai/article/details/80451632