**
Hadoop与Hbase环境搭建安装
**
Hadoop环境
温馨提醒:复制粘贴的习惯需减少
一、准备工作
1、 关闭防火墙[root@localhost ~]# systemctl stop firewalld
//停止firewalld防火墙[root@localhost ~]# systemctl disable firewalld
//disable防火墙[root@localhost ~]# systemctl status firewalld
//查看firewalld是否已经关闭
(active(running))显示防火墙处于激活状态
(inactive(dead))防火墙进程处于未激活状态
防火墙的开启和自启动命令:(需要时再开启)
1、启动:systemctl start firewalld.service
2、防火墙随系统开启启动:systemctl enable firewalld.service
2、 配置操作系统
关闭seLinux防火墙
[root@localhost ~]# vi /etc/sysconfig/selinux
SELINUX=disabled //将enable的修改成disabled
设置本机IP地址[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
(后面的是网卡名,不一定相同)
添加的内容:
IPADDR=192.168.1.66 //IP地址
NETMASK=255.255.255.0 //子网掩码
GATEWAY=192.168.1.254 //网关
DNS1=8.8.8.8
DNS2=114.114.114.114
还要参数修改成静态配置static,然后把另外一个把no改成yes
设置的IP地址必须符合自己虚拟机的模式子网IP,不然会ping不通。查看方式:打开VMware,左上角有个编辑点击弹出虚拟网络编辑器,点进去弹出下图,找到自己所用的桥接还是net模式,我这里是net模式,然后子网IP是192.168.1.0,所以我可以设置IP为192.168.1.N,N可以是1-254
配完IP重启网卡:service network restart
配完IP重启网卡:nmcli c reload ens33 (centos8 专用)
设置主机名[root@localhost ~]# hostnamectl set-hostname SQG
(主机名可以自己编辑)[root@localhost ~]# hostname
(查看主机名)
SQG
设置主机名与IP映射关系[root@localhost ~]# vi /etc/hosts
(添加IP和对应的主机名)
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.66 SQG
下载jdk
可以去官网下载,版本不一样也可以,修改好版本号就行;也可以百度网盘下载我的这个jdk(百度网盘链接:https://pan.baidu.com/s/1OKTx4CYyJsx8jwuoCj2Exw 提取码:c5lu )
上传至虚拟机
用XFTP软件进行上传至虚拟机(从左边选中文件,右键点击传输即可),去xshell官网可以免费下载,别下载到付费的
上传
解压jdk
在/usr/local/java/目录下创建java目录用于存放jdk
[root@SQG local]# mkdir java
[root@SQG ~]# tar -zxvf jdk-8u65-linux-x64.tar.gz -C /usr/local/java/
(解压在这个Java目录)
解压完成后可查看到这个
添加配置环境变量[root@SQG ~]# vi /etc/profile
(添加下面内容,也是jdk的路径)
#java
export JAVA_HOME=/usr/local/java/jdk1.8.0_65
export PATH=$PATH:$JAVA_HOME/bin
[root@SQG ~]# source /etc/profile
(使环境变量生效)
二、伪分布环境搭建
1、下载Hadoop(以2.7.3版本为例)
可以自行官网下载,版本号不一致的话自行修改版本号即可;也可以百度网盘下载我这个(百度网盘链接:https://pan.baidu.com/s/1OKTx4CYyJsx8jwuoCj2Exw 提取码:c5lu )
2、解压安装Hadoop
先创建一个SQG_L目录,用于存放解压后的Hadoop
[root@SQG ~]# mkdir SQG_L
通过XFTP将Hadoop压缩包传入虚拟机,传入方法与传输JDK一致,然后再进行解压到刚创建的目录中
[root@SQG ~]# tar -zxvf hadoop-2.7.3.tar.gz -C /SQG_L/
配置环境变量
[root@SQG ~]# vi /etc/profile
#Hadoop
export HADOOP_HOME=/SQG_L/hadoop-2.7.3
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
[root@SQG ~]# source /etc/profile
(使环境变量生效)
3、配置Hadoop的核心配置文件
先进入 /SQG_L/hadoop-2.7.3/etc/hadoop 目录,然后进行配置
[root@SQG /]# cd /SQG_L/hadoop-2.7.3/etc/hadoop
hadoop-env.sh(配置jdk路径)
该文件为Hadoop的运行环境配置文件,Hadoop的运行需要依赖JDK,我们将其中的export JAVA_HOME的值修改为我们安装的JDK路径
[root@SQG hadoop]# vi hadoop-env.sh
修改成export JAVA_HOME=/usr/local/java/jdk1.8.0_65
core-site.xml(下面是自己的IP地址,然后下面的是Hadoop存放路径在加个tmp)
[root@SQG hadoop]# vi core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.1.66:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/SQG_L/hadoop-2.7.3/tmp</value>
</property>
</configuration>
出来后在/SQG_L/hadoop-2.7.3/下新建tmp目录
[root@SQG hadoop-2.7.3]# mkdir tmp
hdfs-site.xml
[root@SQG hadoop]# vi hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
mapred-site.xml.template
[root@SQG hadoop]# vi mapred-site.xml.template
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
yarn-site.xml(SQG是自己的主机名)
[root@SQG hadoop]# vi yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>SQG</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
source /etc/profile
环境变量生效
4、由于官网Hadoop编译好的是32位,但是我们系统是64位,因此需要
将准备好的64位的lib包可以联系作者下载 QQ:1938631248(百度网盘链接:https://pan.baidu.com/s/1OKTx4CYyJsx8jwuoCj2Exw 提取码:c5lu )
解压到已经安装好的hadoop安装目录的lib/native 和 lib目录下
[root@SQG ~]# tar -xvf hadoop-native-64-2.7.0.tar -C /SQG_L/hadoop-2.7.3/lib
[root@SQG ~]# tar -xvf hadoop-native-64-2.7.0.tar -C /SQG_L/hadoop-2.7.3/lib/native/
添加环境变量
[root@SQG ~]# vim /etc/profile
export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native
export HADOOP_OPTS=-Djava.library.path=${HADOOP_HOME}/lib
[root@SQG ~]# source /etc/profile
(环境变量生效)
自检hadoop checknative -a 指令检查
[root@SQG ~]# cd /SQG_L/hadoop-2.7.3/bin/
[root@SQG ~]# ./hadoop checknative -a
5、格式化 DFS (Distributed File System)
[root@SQG hadoop]# hdfs namenode -format
如果在格式化的日志中看到succefully format字样,就证明格式化成功。反之,失败
6、启动DFS及resourcemanger
先进入sbin目录
[root@SQG_L ~]# cd /SQG_L/hadoop-2.7.3/sbin
(1)启动dfs ./start-dfs.sh
(2)启动resourcemanager ./start-yarn.sh
注:有一种start-all.sh及stop-all.sh启动方式,同时启动、关闭HDFS及resourcemanager,不推荐
7、免密登录
(1)进入root目录下的.ssh目录cd .ssh(或直接在当前目录下运行ssh-keygen)
[root@SQG ~]# cd .ssh/
(2)运行ssh-keygen,然后直接回车三次,根据本机秘钥,产生访问本机的公钥
[root@SQG .ssh]# ssh-keygen
(3)运行cp id_rsa.pub authorized_keys,将本机公钥添加到本机的可信列表中
[root@SQG .ssh]# cp id_rsa.pub authorized_keys
8、检测是否完成
jps 查看
[root@SQL sbin]# jps
2483 SecondaryNameNode
2309 DataNode
2182 NameNode
2950 Jps
2808 NodeManager
2686 ResourceManager
注:需要出现完这六个
进网页:192.168.1.66:50070 或192.168.1.66:8088检测弹出界面就ok了
Hbase环境搭建
1、 下载hbase-1.2.6-bin.tar.gz
联系作者下载QQ:1938631248 也可自行官网下载(百度网盘链接:https://pan.baidu.com/s/1OKTx4CYyJsx8jwuoCj2Exw 提取码:c5lu )
2、 解压安装hbase
[root@SQG ~]# tar -zxvf hbase-1.3.5-bin.tar.gz -C /usr/local/etc/
3、 配置环境变量(配置Hbase路径,就是上面解压的路径)
[root@SQG ~]# vim /etc/profile
export HBASE_HOME=/usr/local/etc/hbase-1.3.5
export PATH=$PATH:$HBASE_HOME/bin
[root@SQG ~]# source /etc/profile
(使环境变量生效)
4、 修改hbase-env.sh配置文件,加入JAVA_HOME
先进/usr/local/etc/hbase-1.3.5/conf/目录
[root@SQG ~]# cd /usr/local/etc/hbase-1.3.5/conf/
hbase-env.sh
[root@SQG conf]# vim hbase-env.sh
export JAVA_HOME=/usr/local/java/jdk1.8.0_65
export HBASE_MANAGES_ZK=true
export HBASE_PID_DIR=/var/hadoop/pids
出来后创建目录
[root@SQG ~]# cd /var/
[root@SQG var]# mkdir hadoop
[root@SQG var]# cd hadoop/
[root@SQG hadoop]# mkdir pids
5、 配置hbase-site.xml(改下你们自己的IP地址)
[root@SQG conf]# vim hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://192.168.1.66:9000/hbase</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/usr/local/etc/hbase-1.3.5/data/zkData</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.master.info.port</name>
<value>60010</value>
</property>
</configuration>
出来后新建文价夹
[root@SQG hbase-1.3.5]# mkdir data
[root@SQG hbase-1.3.5]# cd data/
[root@SQG data]# mkidr zkData
6、 检查版本
[root@SQG_L conf]# cd /usr/local/etc/hbase-1.3.5/bin/
[root@SQG_L bin]# hbase version
HBase 1.3.5 (出现这个)
Source code repository git://apurtell-ltm4.internal.salesforce.com/Users/apurtell/tmp/hbase-build-1 revision=b59afe7b1dc650ff3a86034477b563734e8799a9
Compiled by apurtell on Wed Jun 5 15:57:14 PDT 2019
From source with checksum b3373527ed7fbf3566b68c12230298ae
7、 启动Hadoop
[root@SQL ~]# cd /SQG_L/hadoop-2.7.3/sbin/
[root@SQG sbin]# ./start-yarn.sh
8、 启动hbase
[root@SQL ~]# cd /usr/local/etc/hbase-1.3.5/bin/
[root@SQL bin]# ./start-hbase.sh
9、检测是否完成[root@SQL bin]# jps
(jps完之后出现这玩意就没问题了)
4404 NodeManager
5172 NameNode
5269 DataNode
4118 ResourceManager
6326 HMaster
6454 HRegionServer
6265 HQuorumPeer
6574 Jps
5471 SecondaryNameNode
然后再输入 hbase shell测试一下
[root@SQL ~]# hbase shell
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/usr/local/etc/hbase-1.3.5/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/SQG_L/hadoop-2.7.3/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 1.3.5, rb59afe7b1dc650ff3a86034477b563734e8799a9, Wed Jun 5 15:57:14 PDT 2019
hbase(main):001:0>
这样就完成了