目录
hbase 数据库安装
在进行hbase 的测试的是,可以不用启动 yarn 服务, hive 服务,这样少启动几个服务,自己的虚拟机,就不会那么的卡。
各个节点功能的配置信息
NN-1 | NN-2 | DN | ZK | ZKFC | JNN | RS | NM | HIVE-server | hive-client | hbase-master | hbase-backup | reginServer | |
yang100 | 1 | 1 | 1 | 1 | 1 | ||||||||
yang101 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | ||||
yang102 | 1 | 1 | 1 | 1 | 1 | 1 | |||||||
yang103 | 1 | 1 | 1 | 1 | 1 |
zookeeper 的作用:
1.保证任何时候,集群中只有一个master 存贮所有Region的寻址入口。
2.实时监控Region server的上线和下线信息。
3.并实时通知Master 存储HBase的schema和table元数据 。
hbase-master 的作用:
1.为Region server分配region 负责Region server的负载均衡
2.发现失效的Region server并重新分配其上的region
3.管理用户对table的增删改操作
region server 的作用:
1.维护region,处理对这些region的IO请求
2.负责切分在运行过程中变得过大的region
Hbase
A. 准备工作,时间同步
首先要保证集群中各个节点的时间同步。
安装 ntp 软件
yum install ntp -y
进行时间同步
ntpdate -u ntp.api.bz
系统时间同步到硬件
hwclock --systohc
B. 下载,上传,解压缩
官网地址: https://hbase.apache.org/downloads.html
这个相容性报告,具体也没有搞清楚是什么意思。我的 hadoop 的版本为 hadoop-3.2.1 我就选择最高版本的进行下载吧。
对规划的 4 个节点都要进行安装操作
tar -xvzf hbase-2.3.1-bin.tar.gz
C.修改 profile 文件
找到hbase 解压的文件路径,修改 profile 文件
修改完之后不建议将该节点的分发到其节点,因为 yang101,yang102,yang103 节点有 zookeeper服务的环境变量,这里进行分发后,后面启动zookeeper 的时候,必须要到zookeeper 的安装目录进行启动,否则找不到命令。
这是我在后面再次启动的时候发现找不到 zkServer.sh start 的命令。
将修改后的文件分发到其他节点
scp /etc/profile yang101:/etc/
每个节点重新加载 profile 文件
source /etc/profile
D. 修改 hbase-env.sh
找到 java 的安装路径
vim hbase-env.sh
添加 java 的家目录
不使用 hbase 自身集成的 zookeeper
E. 修改 hbase-site.xml
vim hbase-site.xml
官网参考配置文件,全分布式搭建 : https://hbase.apache.org/book.html#standalone_dist
找到 hadoop 的安装目录 /app/hadoop-3.2.1/etc/hadoop 下的 hdfs-site.xml 文件,里面的hadoop 的集群名称
配置文件的信息
<configuration>
<!-- 是否开启集群模式 -->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- hbase的临时文件路径 -->
<property>
<name>hbase.tmp.dir</name>
<value>./tmp</value>
</property>
<!-- 是否启用不安全流能力强制执行 -->
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://mycluster:8020/hbase</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>yang101,yang102,yang103</value>
</property>
</configuration>
F. 修改 vim regionservers
这里面填写 分配为 region server 的节点,主机名称
要想使用主机名称进行通信,必修修改 /etc/hosts 文件,添加ip 映射
G. 添加 backup-masters 文件
conf 文件夹中本身是没有 backup-masters 文件的,手动进行创建,添加 hbase 备份节点的主机名称
H. 拷贝 hdfs-site.xml 文件
cp /app/hadoop-3.2.1/etc/hadoop/hdfs-site.xml ./
i. 将配置文件分发到其他节点
将当前文件夹中所有的配置文件 复制到 yang101 节点的当前目录
scp * root@yang101:`pwd`
J. 启动 hbase
1. 关闭防火墙
systemctl stop firewalld.service
2. 开启zookeeper 集群
zkServer.sh start
3. 开启 hadoop 集群
由于不需要yarn 进行集群计算的优化,所以这里就不开启 yarn 服务了
start-dfs.sh
4. 开启hbase 服务
启动服务的时候,需要在规划作为 hbase 主节点的,那个服务器上启动该服务
start-hbase.sh
K.验证
访问 16010 端口
hbase 的工作原理