相关安装包在个人网盘,如果有需要可联系我
一、java1.8安装
1、jdk1.8下载
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
我选择linux x64版本:
在线下载
//(有可能网络不通,需要下载后拷贝到服务器中)
wget https://download.oracle.com/otn/java/jdk/8u311-b11/4d5417147a92418ea8b615e228bb6935/jdk-8u311-linux-x64.tar.gz?AuthParam=1636183672_3e9fef57aa5ede6bc4ff6f2a37caff7f
下载以后通过命令检查安装包大小是否符合
ls -lht
2、安装
(1)创建安装目录
mkdir -p /usr/local/java/
(2)解压至安装目录
tar -zxvf jdk-8u311-linux-x64.tar.gz -C /usr/local/java/
3、设置环境变量
打开文件
vim /etc/profile
在末尾添加
export JAVA_HOME=/usr/local/java/jdk1.8.0_171
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
使环境变量生效
source /etc/profile
4、检查是否安装成功
java -version
出现一下界面,则安装成功。
二、安装Hadoop
1、安装之前需做的一些事情
(1)配置hosts
[root@master ~]# vim /etc/hosts
添加以下内容:下面是你自己的ip
192.168.xx.xx master
(2)免密登录
[root@master ~]# ssh-keygen -t rsa
连续三次按Enter
接下来更改权限:
[root@master ~]# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
[root@master ~]# chmod 700 ~/.ssh
[root@master ~]# chmod 600 ~/.ssh/authorized_keys
2、安装Hadoop
解压包:
[root@win102022tbbzzh package]# tar -zxvf hadoop-2.7.7.tar.gz -C /home/environment/hadoop
3、配置环境变量
在最下面添加如下代码(请切换自己的安装路径)
[root@master ~]# vim /etc/profile
export HADOOP_HOME="/opt/hadoop-2.7.7"
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
配置生效:
[root@win102022tbbzzh package]# source /etc/profile
4、配置文件
修改配置一下文件
*(文件都在 **/hadoop-2.7.7/etc/hadoop/ 文件夹下)
以下文件均通过 ( vim 文件名) 的方式进行编辑
(1)hadoop-env.sh文件
添加以下内容:
export JAVA_HOME="/home/environment/Java/jdk1.8.0_311"
(2)core-site.xml文件
添加以下内容:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/data/tmp</value>
</property>
</configuration>
注:hadoop.tmp.dir需要自己手动创建目录文件
[root@master hadoop]# mkdir -p /home/data/tmp
(3)hdfs-site.xml文件
添加以下内容:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/data/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/data/tmp/dfs/data</value>
</property>
</configuration>
文件路径手动创建
(4)mapred-site.xml文件
注: 因为没有mapred-site.xml文件,所以复制一份
[root@master hadoop]# cp mapred-site.xml.template mapred-site.xml
添加以下内容:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.app-submission.cross-platform</name>
<value>true</value>
</property>
</configuration>
(5)yarn-site.xml文件
添加以下内容:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
</configuration>
5、测试运行
进入bin目录下:
[root@win102022tbbzzh hadoop]# cd /home/environment/hadoop/hadoop-2.7.7/bin
(1)格式化hdfs
格式化是对HDFS这个分布式文件系统中的DataNode进行分块,统计所有分块后的初始元数据的存储在NameNode中。
[root@master bin]# hdfs namenode -format
(2)启动 hadoop
[root@master bin]# start-all.sh
注:这里启动是需要输入密码,所有说为什么之前我们要设置免密登录,不然我们每次都要输入密码很麻烦,但第一次启动它要提醒你输入yes,以后就不用呢。
看到有以下内容就证明我们hadoop配置成功呢!
(3)查看NameNode格式化后的目录
[root@master ~]# ll /opt/data/tmp/dfs/name/current/
- fsimage是NameNode元数据在内存满了后,持久化保存到的文件;
- fsimage*.md5 是校验文件,用于校验fsimage的完整性;
- seen_txid 是hadoop的版本;
- vession文件里保存:
namespaceID:NameNode的唯一ID。
clusterID:集群ID,NameNode和DataNode的集群ID应该一致,表明是一个集群。
最后关闭hadoop
[root@master ~]# stop-all.sh
到这里我们就可使用Hadoop了
三、zookeeper安装
1、解压安装
[root@master package]# tar -zxvf zookeeper-3.4.14.tar.gz -C /home/environment/zookeeper
2、配置环境
[root@master opt]# vim /etc/profile
添加以下内容:
export ZOOKEEPER_HOME="/home/environment/zookeeper/zookeeper-3.4.14/"
export PATH=.:$HADOOP_HOME/bin:$ZOOKEEPER_HOME/bin:$JAVA_HOME/bin:$PATH
3、配置生效
[root@master opt]# source /etc/profile
4、配置文件
(1)zoo.cfg
(文件在 ***/zookeeper-3.4.14/conf下)
因为没有zoo.cfg文件,所以复制出来一份:
[root@master conf]# cp zoo_sample.cfg zoo.cfg
然后编辑这个文件,添加以下内容:
dataDir=/home/environment/zookeeper/zookeeper-3.4.14/zookeeper_data
dataLogDir=/home/environment/zookeeper/zookeeper-3.4.14/data_log
注:这里的文件不需要自己手动创建文件,自动生成
5、启动测试
到bin下,进行启动
[root@master bin]# sh zkServer.sh start
我们可以看到它的模式为:standalone
[root@master bin]# sh zkServer.sh status
jps查看一下节点,有QuorumPeerMain,就证明是ok的
[root@master bin]# jps
最后sh zkServer.sh stop把它关了
[root@master bin]# sh zkServer.sh stop
四、安装HBASE
1、解压
[root@master ~]# tar -zxvf hbase-1.3.6-bin.tar.gz -C /home/environment/hbase
2、配置环境
[root@master opt]# vim /etc/profile
添加以下内容:
export HBASE_HOME="/home/environment/hbase/hbase-1.3.6/"
export PATH=$PATH:$HBASE_HOME/bin
3、配置生效
[root@master opt]# source /etc/profile
4、配置文件
(文件在 ***/hbase-1.3.6/conf/下)配置以下文件(vim 文件名 打开文件)。
(1)hbase-env.sh文件
添加以下内容:
export JAVA_HOME=/home/environment/Java/jdk1.8.0_311/
export HBASE_PID_DIR=/home/environment/hbase/hbase-1.3.6/pids
export HBASE_MANAGES_ZK=false
注:false是自己下载的zookeeper,true是hbase自带
(2)hbase-site.xml 文件
添加以下文件:
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value>
<description> hbase.rootdir是RegionServer的共享目录,用来持久化存储HBase数据的,默认是写到/tmp的,如果不修改此配置,在HBase重启时,数据会丢失。此处一般设置的是hdfs的文件目录,比如NameNode运行在namenode.Example.org主机的9090端口,则需要设置为hdfs://namenode.example.org:9000/hbase
</description>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
<description>此项用来配置HBase的部署模式,false表示单机,true表示完全分布式模式或者伪分布式模式。
</description>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>/home/environment/hbase/hbase-1.3.6/tmp</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/environment/hbase/hbase-1.3.6/zk_data</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>master</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
注:不需要创建文件,它会自动给你创建文件
5、运行
注:确保首先运行 HDFS,如果使用自己的zookeeper也要启动
启动顺序:
Hadoop及hbase集群启动顺序hadoop->zookeeper->hbase。
既:
(1)、[root@master bin]# start-all.sh
(2)、[root@master bin]# sh zkServer.sh start
(3)、[root@master bin]# start-hbase.sh
停止顺序:
Hadoop及hbase集群关闭顺序hbase->zookeeper->Hadoop
既:
(1)、[root@master bin]# stop-hbase.sh
(2)、[root@master bin]# sh zkServer.sh stop
(3)、[root@master bin]# stop-all.sh
注:一定要到相应的目录文件去启动
[root@master ~]# cd /home/environment/hadoop/hadoop-2.7.7/bin
[root@master bin]# start-all.sh
[root@master ~]# cd /home/environment/zookeeper/zookeeper-3.4.14/bin
[root@master bin]# sh zkServer.sh start
[root@master ~]# cd /home/environment/hbase/hbase-1.3.6/bin
[root@master bin]# start-hbase.sh
全部启动后jps查看一下,如果有这些节点就说明没什么问题!
[root@master bin]# jps
五、SHELL命令
[root@master bin]# hbase shell
使用 create 命令创建一个新表。我们必须指定表名称和列族名称:
hbase(main):001:0> create 'test', 'cf'
Created table test
Took 1.2144 seconds
=> Hbase::Table - test
使用 list 命令确认表是否存在
hbase(main):002:0> list 'test'
TABLE
test
1 row(s)
Took 0.0378 seconds
使用 put 命令将数据放入表中:
hbase(main):005:0> put 'test', 'row1', 'cf:a', 'value1'
Took 0.1687 seconds
从 HBase 获取数据的一种方法是扫描。使用 scan 命令扫描表中的数据:
hbase(main):008:0> scan 'test'
ROW COLUMN+CELL
row1 column=cf:a, timestamp=1570442045109, value=value1
1 row(s)
Took 0.0038 seconds
要多练习Hbase shell命令,来认识Hbase。可以从网上找Hbase shell命令来练习一下。