前置条件
centos7 +hadoop2.7.5+hbase1.4.3 安装(一)
hbase1.4.3 安装配置
在 hbase1,hbase2,hbase3 上分别配置 hosts
vim /etc/hosts
192.168.31.160 zookeeper1
192.168.31.161 zookeeper2
192.168.31.162 zookeeper3
上传 hbase-1.4.3-bin.tar.gz 到/usr/local/hadoop
[hadoop@hbase2 hadoop]$ ll
总用量 322088
drwxr-xr-x. 12 hadoop hadoop 183 4月 20 00:34 hadoop-2.7.5
-rw-r--r--. 1 hadoop hadoop 216929574 4月 16 01:19 hadoop-2.7.5.tar.gz
-rw-r--r--. 1 hadoop hadoop 112883512 4月 16 01:04 hbase-1.4.3-bin.tar.gz
[hadoop@hbase2 hadoop]$ pwd
/usr/local/hadoop
[hadoop@hbase2 hadoop]$ tar zxvf hbase-1.4.3-bin.tar.gz
hbase1.4.3 引用 hadoop 版本为:2.7.4,zookeeper 版本为 3.4.10
我们环境采用 hadoop2.7.5,zookeeper3.4.10
配置 hbase 环境变量
编辑 vim /usr/hadoop/.bash_profile ,添加以下内容
export HBASE_HOME=/usr/local/hadoop/hbase-1.4.3 #hbase安装路径
export PATH=$HBASE_HOME/bin:$PATH
编辑 vi /opt/hadoop/hbase-1.2.6/conf/hbase-env.sh
去掉 export 前的注释,填写 jdk 路径
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
去掉 export 前的注释,设置为 false,不用 hbase 内置的 zookeeper
export HBASE_MANAGES_ZK=false
如果 jdk1.8,还要注释以下两行
# 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"
若不注释的话,启动 hbase 会报以下警告,Java HotSpot(TM) 64-Bit Server VM warning。
配置 hbase-site.xml
配置 hbase-site.xml,默认文件 hbase-site.xml 在 hbase-common-1.4.3.jar 中
<configuration>
<property>
<name>hbase.rootdir</name> <!-- hbase存放数据目录 ,默认值${hbase.tmp.dir}/hbase-->
<value>hdfs://hbase1:9000/data/hbase_db</value><!-- 端口要和Hadoop的fs.defaultFS端口一致-->
</property>
<property>
<name>hbase.cluster.distributed</name> <!-- 是否分布式部署 -->
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name> <!-- list of zookooper -->
<value>zookeeper1,zookeeper2,zookeeper3</value>
</property>
</configuration>
配置 regionservers、backup-masters
vim conf/regionservers,去掉 localhost,添加 slaves 节点
hbase2
hbase3
backup-masters 不存在,需要手动创建并添加备份节点
vim conf/backup-masters 本环境只有 3 台 hbase 服务器,没有备份服务器所以不进行此步操作
hbase4
把 hadoop 的 hdfs-site.xml 复制一份到 hbase 的 conf 目录下
因为 hbase 的数据最终要写入 hdfs 中,要把 hbase 的路径链接到 hsfs 中
cp -r /usr/local/hadoop/hadoop-2.7.5/etc/hadoop/hdfs-site.xml /usr/local/hadoop/hbase-1.4.3/conf/
将配置好的 habase 分发到其它节点对应的路径下
scp -r hbase-1.4.3 hadoop@hbase3:/usr/local/hadoop/
scp -r hbase-1.4.3 hadoop@hbase1:/usr/local/hadoop/
scp -r /usr/hadoop/.bash_profile hadoop@hbase3:/usr/hadoop/
scp -r /usr/hadoop/.bash_profile hadoop@hbase1:/usr/hadoop/
source /usr/hadoop/.bash_profile
启动 hbase 集群
在 hbase1 上输入:start-hbase.sh,hbase 会开始启动
[hadoop@hbase1 root]$ start-hbase.sh
running master, logging to /usr/local/hadoop/hbase-1.4.3/logs/hbase-hadoop-master-hbase1.out
hbase3: running regionserver, logging to /usr/local/hadoop/hbase-1.4.3/bin/../logs/hbase-hadoop-regionserver-hbase3.out
hbase2: running regionserver, logging to /usr/local/hadoop/hbase-1.4.3/bin/../logs/hbase-hadoop-regionserver-hbase2.out
等待启动完成,在每个节点上输入 jps 命令,查看进程
hbase1
[hadoop@hbase1 root]$ jps
1730 Jps
1383 HMaster
27416 DataNode
27848 ResourceManager
27625 SecondaryNameNode
27979 NodeManager
27260 NameNode
hbase2
[hadoop@hbase3 root]$ jps
22945 Jps
22723 HRegionServer
20724 NodeManager
20584 DataNode
hbase3
[hadoop@hbase2 root]$ jps
21477 NodeManager
21336 DataNode
23722 Jps
23515 HRegionServer
出现以上进程表 hbase 明启动成功了
在浏览器输入 http://hbase1:16010 可查看 hbase 集群状态(需要配置 host)
在 hbase1 上输入:stop-hbase.sh,hbase 集群会等待几秒就会停止了
注意事项及常见问题
每个节点上目录以及文件路径都要相同
一般 hadoop、zookeeper、hbase 都是在一台机器上配置好,直接分发到其他节点上,便于操作,
所以要提前建好相同的相关目录。
hadoop 格式化问题
执行 hadoop namenode -format 格式化一般首次执行就行了。
若要重新格式化,首先,停止集群,删除 namenode 和 datanode 对应的持久化数据存储目录,再格式化新文件系统。
因为重新格式化,namenode 的数据会重新生成,datanode 的数据不会重新生成,仍是原来的数据,
这样 namenode 和 datanode 不在一个集群,从而导致 datanode 启动不成功。
### hbase 环境变量配置问题
hbase 环境变量配置出错,会出现以下问题:
Error: Could not find or load main class org.apache.hadoop.hbase.util.HBaseConfTool
Error: Could not find or load main class org.apache.hadoop.hbase.zookeeper.ZKServerTool
starting master, logging to /opt/hadoop/zookeeper-3.4.10/logs/hbase-root-master-node01.out
nice: /opt/hadoop/zookeeper-3.4.10/bin/hbase: No such file or directory
cat: /opt/hadoop/zookeeper-3.4.10/conf/regionservers: No such file or directory
cat: /opt/hadoop/zookeeper-3.4.10/conf/regionservers: No such file or directory
参考文章:
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于