赞
踩
HBASE官网:Apache HBase – Apache HBase™ Home
HBASE官方指南:Apache HBase ™ Reference Guide
HBASE和JDK版本对应关系
HBASE和Hadoop版本对应关系
本文使用版本为:
hbase-2.3.2-bin.tar.gz 下载地址:Index of /dist/hbase
hadoop-3.3.2.tar.gz 下载地址:Index of /dist/hadoop/common
hadoop-3.3.2.tar.gz 国内地址:Index of /apache/hadoop/common/hadoop-3.3.2
部署环境 CentOS7+jdk8
jdk可参考下面安装:
linux-安装oracleJDK替换默认openJDK_Java菜鸟小白~的博客-CSDN博客
HBASE首先需要安装Hadoop
其次安装HBASE
首先参考管网Hadoop和HBASE对应关系
备注:Linux系统:CentOS7
原因分析:这是由于CentOS的软件安装工具不是apt-get,而是yum,使用yum命令代替apt-get即可。提示找不到命令
首先下载SSH,先更新软件包
- Ubuntu:sudo apt-get update
-
- CentOS7:sudo yum update
安装SUDO
- Ubuntu:sudo apt-get install sudo
-
- CentOS7:sudo yum install sudo
安装SSH
- Ubuntu:sudo apt-get install openssh-server
-
- CentOS7:sudo yum install openssh-server
- # 或
- sudo apt install openssh-server
设置免密
ssh-keygen -t rsa -P ''
生成无密码密钥对,询问保存路径直接输入回车
生成密钥对:id_rsa和id_rsa.pub,默认存储在~/.ssh目录下。 接下来:把id_rsa.pub追加到授权的key里面去。
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
然后修改权限:
chmod 600 ~/.ssh/authorized_keys
接着需要启用RSA认证,启动公钥私钥配对认证方式
vim /etc/ssh/sshd_config
如果提示权限不足在命令前加上sudo 修改ssh配置:
- PubkeyAuthentication yes # 启用公钥私钥配对认证方式
- AuthorizedKeysFile %h/.ssh/authorized_keys # 公钥文件路径
重启SSH(https://blog.csdn.net/weixin_44347111/article/details/105944073)
service ssh restart
此步骤报错:Failed to restart ssh.service: Unit not found.
使用此命令重启:
systemctl restart sshd
解压:
tar -zxvf hadoop-3.3.2.tar.gz
首先我们配置好Hadoop的环境变量,避免每次执行Hadoop命令的时候,都要输入一长串路径。
编辑环境变量
sudo vim /etc/profile
在文件后面加上两行。
export HADOOP_HOME=/usr/local/hadoop/hadoop-3.3.2
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
加完后,点击【Esc】,输入【:wq】保存并退出。
使环境变量生效
source /etc/profile
然后执行
hadoop version
看到以下提示 ,说明环境变量配置正确啦!
总共需要配置三个文件,分别是:
hadoop-env.sh
core-site.xml
hdfs-site.xml
这三个文件位于$HADOOP_HOME/etc/profile目录下。$HADOOP_HOME指Hadoop的安装位置,按照此教程的话,该位置为/usr/local/Hadoop。执行
hadoop-env.sh配置
hadoop-env.sh文件主要是配置JDK的位置。
如果忘记了JDK的位置,可以执行
echo $JAVA_HOME
cd /usr/local/hadoop/hadoop-3.3.2/etc/hadoop
(1)vim hadoop-env.sh
在文件首行插入如下代码:
export JAVA_HOME=/usr/java/jdk1.8.0_231
/usr/java/jdk1.8.0_231是jdk存放的路径。如果你把jdk安装在其它位置,记得把/usr/java/jdk1.8.0_231替换为相应的路径。
(2)core-site.xml配置
在相同的目录下,执行
vim core-site.xml
在该文件末尾的configuration标签中,插入如下代码:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/temp</value>
<description>Abase for other temporary directories.</description>
</property>
</configuration>
在上面的配置中,我们做了两项配置:
1、指定HDFS的URI是hdfs://localhost:9000。
2、设定Hadoop的临时文件存放在Linux文件系统中的/usr/local/hadoop/temp目录下。
(3)hdfs-site.xml配置
在相同目录下,执行
vim hdfs-site.xml
在该文件末尾的configuration标签中,插入如下代码:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/local/hadoop/hdfs/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/local/hadoop/hdfs/datanode</value>
</property>
</configuration>
小tips:
1、replication指的是副本数量,我们现在是单节点,所以是1.
2、dfs.namenode.name.dir指定namenode节点存放数据的位置。
3、dfs.datanode.data.dir指定datanode节点存放数据的位置。
现在,配置工作已经基本完成,接下来进行一些验证工作。主要三步:
格式化HDFS文件
启动hadoop
验证hadoop
1.格式化
在使用Hadoop之前我们需要格式化一些hadoop的基本信息。 使用如下命令:
hadoop namenode -format
出现以下界面代表安装成功
2.启动Hadoop
cd /usr/local/hadoop/hadoop-3.3.2/sbin
接下来我们启动Hadoop:
start-dfs.sh
若出现报错:
这是因为root用户现在还不能启动hadoop,我们来设置一下就可以了。执行
cd $HADOOP_HOME/sbin
在start-dfs.sh,stop-dfs.sh两个文件顶部均添加以下内容:
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
再次执行start-dfs.sh 输入命令 jps 验证,出现如下界面代表启动成功:
之后如果你是图形化界面,可以在你虚拟机的图形化界面中打开
火狐浏览器输入:http://localhost:9870/ 或者在windows机器上输入http://虚拟机ip地址:9870/ 也可以访问 hadoop的管理页面
好了到了这一步Hadoop就安装完成了。
访问192.168.2.128:9870出现界面:
HBase 安装在 master 节点上,
将下载好的安装包到 /datalake 目录下
hbase-2.3.2-bin.tar.gz
批量解压这几个安装包
cd /usr/local/hbase
tar -zxvf hbase-2.3.2-bin.tar.gz
vi /etc/profile
将 HBase 添加到环境变量
export HBASE_HOME=/usr/local/hbase/hbase-2.3.2
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HBASE_HOME/bin
应用环境变量
source /etc/profile
修改 HBase 的配置文件
cd /usr/local/hbase/hbase-2.3.2/conf
vim hbase-site.xml
接着在 hbase-site.xml进行如下配置(前三行是默认的,有分布式需求的话,可以把hbase.cluster.distributed改成true):
<property>
<name>hbase.cluster.distributed</name>
<value>false</value>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>./tmp</value>
</property>
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>
<!--指定hbase管理页面的端口号-->
<property>
<name>hbase.master.info.port</name>
<value>16010</value>
</property>
<!--指定hdfs的地址-->
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
以下步骤可不执行(我没执行)
下一步软链接过来Hadoop的core-site.xml和hdfs-site.xml文件(可不执行)
cat regionservers
vim regionservers
软链接格式 ln -s 目标文件 当前文件(可不执行)
在当前文件夹(/usr/local/hbase/hbase-2.3.2/conf)执行命令
ln -s /usr/local/hadoop/hadoop-3.3.2/etc/hadoop/hdfs-site.xml hdfs-site.xml
cd /usr/local/hbase/hbase-2.3.2/bin
start-hbase.sh
验证是否成功:
jps如下:
访问可视化界面
http://192.168.2.128:16010/master-status
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。