【有问题或错误,请私信我将及时改正;借鉴文章标明出处,谢谢】
参考文章:
修改 hadoop 集群及hbase集群的pid文件存放位置
hbase启动后HMaster自动关闭:连接不到8020端口
HDFS部分:8020端口,9000端口和50070端口号,50090,9083,2181,6379的区别
HBase默认配置文件hbase-default.xml注释解析
启动 HBase 报错:FATAL [hadoop001:16000.activeMasterManager] master.HMaster: Failed to become active m…
搭建环境:
zookeeper3.4.5
hadoop完全分布式集群
到官网进行下载
上传至liunx下,此次路径为根目录soft下
(1)进入hbase 的conf目录下修改hbase-env.sh文件(即修改的式环境)
注意如下:
<1> export HBASE_PID DIR=/var/hadoop/pids
配置HBASE_PID_DIR 时先创建目录/var/hadoop/pids,通过一个pid文件来停止集群的。
在/var目录下面创建一个文件夹: mkdir -p /var/hadoop/pids,记得更改这个文件夹的权限,chown -R root:root /var/hadoop,将这个目录及子目录的拥有者改为你的当前用户,我这是root,不然执行start-all.sh的时候当前用户会没有权限创建pid文件
<2> export HBASE_MANAGES_ZK=false
hbase自带zookeeper集群,这个集群会随hbase启动而启动。但是咱们搭建的是hbase分布式集群,前面自己大搭了zookeeper集群,用自己打好的zookeeper,为的就是更便于优化配置提高集群工作效率。
conf/hbase-env.sh 里面的HBASE MANAGES ZK 来切换,这个值默认是true ,作用是让HBase启动的同时也启动ZooKeeper。在安装的过程中,采用独立运行ZooKeeper 集群的方式,故将其属性值改为false 。
<3> export HBASE_CLASSPATH=/soft/hadoop
HBASE_CLASSPATH 是Hadoop 的配置文件路径,
(2) 进入hbase 的conf目录下修改hbase-site.xml文件(即配置相应的东西zookeeper等)
hbase.rootdir #指定hbase在HDFS上存储的路径
hdfs://master/hbase
hbase.zookeeper.property.dataDir #指定Zookeeper集群的数据存储路径
/soft/zookeeper/zkData
hbase.cluster.distributed #指定HBase运行的模式:false:单机/伪分布;true:完全分布
true
hbase.zookeeper.quorum #zookeeper节点主机名
master,slave1,slave2
hbase.zookeeper.property.clientPort #zookeeper端口号
2181
hbase.master.port #默认HMaster HTTP访问端口,HBase1.0以后的版本需要手动配置Web,访问端口号60010
16000
注意如下:
<1>. hbase.rootdir的配置
8020是hdfs的默认端口,但是我们在配置hadoop集群时可能在core-site.xml中将hdfs的默认端口更改,这里我们原本在hadoop搭建时core-site.xml没有配置端口号,所以这里也没有端口号
<2>. hbase.zookeeper.property.dataDir
/hadoop/zookeeper/zkData路径是之前zookeeper集群搭建时自己创建的文件夹,此为数据存储路径
<3>. 但凡看到有主机名不要一味的抄,有可能主机名不一样,记得修改成自己的主机名
(3) 进入hbase 的conf目录下修改regionservers文件
regionservers文件负责配置 HBase集群中哪台节点作 Region Server服务器,其配置内容为:
slave1
slave2
(1)将在第一台虚机配置好的hbase分发到slave1,slave2
scp -r /soft/hbase root@slave1:/soft/
scp -r /soft/hbase root@slave2:/soft/
(2)将在第一台虚机配置好的配置文件(/etc/profile)分发到slave1,slave2
scp -r /etc/profile root@slave1:/etc/
scp -r /etc/profile root@slave2:/etc/
分发完后分别在slave1和slave2上生效profile文件
source /etc/profile
(3)此时切记,我们在配置文件中有输入:
export HBASE_PID DIR=/var/hadoop/pids 在slave1和slave2上没有,需要创建,上面步骤有提到
在/var目录下面创建一个文件夹: mkdir -p /var/hadoop/pids,记得更改这个文件夹的权限,chown -R root:root /var/hadoop,将这个目录及子目录的拥有者改为你的当前用户,我这是root,不然执行start-all.sh的时候当前用户会没有权限创建pid文件
(1)启动zookeeper(在全部虚拟机上启动)
zkServer.sh start
(2)启动hadoop(在master上启动)
start-all.sh
(3)启动hbase(在master上启动)
start-hbase.sh
(4)浏览器测试
输入192.168.80.11:16010,就可以进入
这里的xcall.sh 是个脚本命令,没有这个脚本就一台一台jps查看节点数,后期我会发部几个linux下好用的脚本
【有问题或错误,请私信我将及时改正;借鉴文章标明出处,谢谢】