Hadoop 完全分布式搭建 -- MySQL、Hbase2.2.5安装部署

前景提要

跟随前面一篇文章,在 Hadoop 完全分布式集群下安装 关系型数据库 MySQL 以及非关系型数据库 Hbase 。

系统环境

三台 Centos7 系统的主机

一台 master 节点,两台 slave 节点,分别为 slave1、slave2

Hadoop 完全分布式集群

所需安装包

mysql-8.0.26-el7-x86_64.tar.gz

1
https://mirrors.huaweicloud.com/mysql/Downloads/MySQL-8.0/mysql-8.0.26-el7-x86_64.tar.gz

hbase-2.2.5-bin.tar.gz

1
https://archive.apache.org/dist/hbase/2.2.5/hbase-2.2.5-bin.tar.gz    

1、安装 MySQL

1)解压 MySQL 压缩包

1
2
3
4
5
# 默认MySQL 安装包已经放到了 /tdsgpo 的源文件夹
[root@master ~]cd /tdsgpo
[root@master tdsgpo]sudo tar -zxvf mysql-8.0.26-el7-x86_64.tar.gz
# 重命名文件夹
[root@master tdsgpo]mv mysql-8.0.26-el7-x86_64 /tdsgpo/mysql-8.0.26

2)配置 MySQL 配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# 手动创建 MySQL 元数据文件夹 data
[root@master tdsgpo]sudo mkdir -p /tdsgpo/mysql-8.0.26/data
# 设置 data 文件为所有人可用
[root@master tdsgpo]sudo chown -R 777 /tdsgpo/mysql-8.0.26/data
# 修改 my.cnf 文件内容
[root@master tdsgpo]sudo vim /etc/my.cnf
## 按下 i 键输入以下内容
[mysqld]
basedir=/tdsgpo/mysql-8.0.26
datadir=/tdsgpo/mysql-8.0.26/data
socket=/tdsgpo/mysql-8.0.26/mysql.sock
log-error=/tdsgpo/mysql-8.0.26/mysqld.log
symbolic-links=0
secure_file_priv=''
[mysqld_safe]
log-error=/tdsgpo/mysql-8.0.26/mysqld.log
pid-file=/tdsgpo/mysql-8.0.26/mysqld.pid
[client]
port=3306
socket=/tdsgpo/mysql-8.0.26/mysql.sock
# 配置系统环境变量
[root@master tdsgpo]sudo vim /etc/profile
## 按下 i 键输入以下内容
export MYSQL_HOME=/tdsgpo/mysql-8.0.26/
export PATH=$PATH:$MYSQL_HOME/bin
# 使环境变量生效
[root@master tdsgpo]source /etc/profile

3)初始化 MySQL

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 初始化并启动 MySQL
[root@master tdsgpo]sudo su - root -c '/tdsgpo/mysql-8.0.26/bin/mysqld --initialize --user=mysql'
# 启动 MySQL
[root@master tdsgpo]sudo su - mysql -c '/tdsgpo/mysql-8.0.26/bin/mysqld_safe --user=mysql &'
# 此时需要修改 MySQL 的初始密码
[root@master tdsgpo]grep 'temporary password' /tdsgpo/mysql-8.0.26/mysqld.log
## 此时会弹出以下文字,******* 的地方就是初始密码的地方
A temporary password is generated for root@localhost:********
# 登录 MySQL,链接数据库,出现 Enter password:的时候输入上面查看的初始密码
[root@master tdsgpo]mysql -uroot-p
## 依次输入以下代码来修改密码,全部提示 'ok' 即代表执行成功,这里我们设置了数据库密码为 123456
mysql > alter user root@localhost identified by '123456';
mysql > create user 'root'@'%' identified by '123456';
mysql > GRANT ALL PRIVILEGES on *.* to 'root'@'%';
mysql > GRANT ALL PRIVILEGES on *.* to 'root'@'localhost';
mysql > flush privileges;
mysql > exit

2、安装 Hbase

1)解压 Hbase 文件

1
2
3
4
5
6
# 打开新窗口,默认 Hbase 文件已经放在了 /tdsgpo 文件夹
[root@master ~]cd /tdsgpo
[root@master tdsgpo]sudo tar -zxvf hbase-2.2.5-bin.tar.gz
# 设置文件夹为所有人可用
[root@master tdsgpo]sudo chown -R 777 /tdsgpo/hbase-2.2.5
## 也可以设置文件夹为单独用户所用,直接将 777 改为 '用户:用户' 的形式(单引号不需要)

2)配置 hbase-env.sh

1
2
3
4
5
6
7
[root@master tdsgpo]cd /tdsgpo/hbase-2.2.5/conf/
[root@master conf]vim hbase-env.sh
## 按下 i 键输入以下内容
export JAVA_HOME=/tdsgpo/jdk1.8.0_151
export HBASE_CONF_DIR=/tdsgpo/hbase-2.2.5/conf
export HBASE_LOG_DIR=/var/log/hbase
export HBASE_MANAGES_ZK=true

3) 配置 hbase-site.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[root@master conf]vim hbase-site.xml
## 按下 i 键输入以下内容,注意有两个 master,一个 slave1 以及一个 slave2 的主机名,如果主机名称不一样需要同步修改
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:8020/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>
<property>
<name>hbase.master.port</name>
<value>16000</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>master,slave1,slave2</value>
</property>

4)配置 regionservers

1
2
3
4
5
vim regionservers
## 按下 i 键输入以下内容,内容中为三台主机的主机名
master
slave1
slave2

5)拷贝 Hbase 到两个从节点

1
2
3
4
5
6
7
8
9
## 需要注意在这个步骤之前要修改三台主机的 hosts 以及配置三台主机免密登录,详情请参照我的 《Hadoop 完全分布式搭建及基础环境配置》这篇文章。

# 打开新控制台
[root@master ~]cd /tdsgpo
# 使用 scp 命令复制 Hbase 文件夹
[root@master tdsgpo]scp -r hbase-2.2.5/ slave1:/tdsgpo/
[root@master tdsgpo]scp -r hbase-2.2.5/ slave2:/tdsgpo/
# 分别给三台主机设置 Hbase 的访问权限为所有人可用
[root@master tdsgpo]sudo chown -R 777 /tdsgpo/hbase-2.2.5

6)启动 Hbase

1
2
3
4
5
6
7
8
9
10
11
12
# 启动 Hbase 中的 zookeeper
[root@master tdsgpo]cd /tdsgpo/hbase-2.2.5/bin
[root@master bin]./hbase-daemon.sh start zookeeper
# 启动 Hbase
[root@master bin]./hbase-daemon.sh start master # slave1、slave2主机不需要运行此命令
[root@master bin]./hbase-daemon.sh start regionserver
# 查看 Hbase 是否启动成功,出现除了 'jps' 的另外三个进程则证明启动成功
[root@master bin]jps
1343 HMaster
4324 HRegionServer
3432 jps
3425 HQuorumPeer

下篇文章我们讲解在 Hadoop 完全分布式集群里面搭建 Hive 数据仓库以及 Zookeeper。


Hadoop 完全分布式搭建 -- MySQL、Hbase2.2.5安装部署
https://tdsgpo.top/2022/09/30/Hadoop 完全分布式搭建 -- MySQL、Hbase2.2.5安装部署/
作者
DDS
发布于
2022年9月30日
许可协议