macOS 10.14 Mojove安装Hadoop + Spark + HBase + Zookeeper
一、前言
已经有一年时间没有写博客了,一年前我还在图书馆苦逼的复习,现在我已经被某学校录取为全日制研究生了,终于可以学学技术了。
二、环境准备
本人环境为mac OS10.14 Mojove系统,因为安装的Hadoop等组件版本为老版本(非最新版),故不采用HomeBrew安装,直接去官网下载。
HomeBrew安装最新版非常方便,很像Ubuntu的apt,但是对于安装老版本的并不是很方便。
Java JDK:1.8.0_201
我将各个组件下载并解压到 ~/Software
路径下,可以根据自己的需要去官网下载
Hadoop-2.8.4 :https://archive.apache.org/dist/hadoop/common/
Spark-2.2.0:https://archive.apache.org/dist/spark/
HBase-1.3.0:http://archive.apache.org/dist/hbase/
Zookeeper :brew install zookeeper
三、配置文件
环境变量配置
vim ~/.bash_profile
# hadoop
export HADOOP_HOME=/Users/alfred/Software/hadoop-2.8.4
export PATH=${PATH}:${HADOOP_HOME}/bin
# hadoop ---stack overflow
# 之前碰到的一个错误,可以先不写,遇到后再说
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"
# spark
export SPARK_HOME=/Users/alfred/Software/spark-2.2.0
export PATH=${PATH}:${SPARK_HOME}/bin
# hbase home
export HBASE_HOME=/Users/alfred/Software/hbase-1.3.0
export PATH=${PATH}:/${HBASE_HOME}/bin
保存并退出后
别忘了source一下
source ~/.bash_profile
Hadoop配置
进入Hadoop,修改的文件包括:
- hadoop-env.sh
- core-site.xml
- hdfs-site.xml
- mapred-site.xml
- yarn-site.xml
cd $HADOOP_HOME/etc/hadoop
1.修改hadoop-env.sh
vim hadoop-env.sh
打开这两条注释,并且改成自己的目录地址
# The java implementation to use.
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home
# set to the root of your Hadoop installation
export HADOOP_PREFIX=/Users/alfred/Software/hadoop-2.8.4
2.修改core-site.xml
vim core-site.xml
设置Hadoop的临时目录和文件系统
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/Users/alfred/Software/hadoop-2.8.4/tmp</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
如果需要用到远程服务器,则需要去/etc/hosts中配置主机名与ip地址,然后将自文件中的localhost改为远程的主机名.
3.修改hdfs-site.xml 文件
vim hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<!-- 副本数为1 -->
<value>1</value>
</property>
</configuration>
4.修改mapred-site.xml 文件
先将模板文件复制一份,并改名
cp mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
设置yarn为处理数据的框架
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
5.修改yarn-site.xml
vim yarn-site.xml
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
配置Spark
terminal中输入pyspark
来检查是否安装成功,若命令找不到,则检查环境变量中的路径,见到Spark的logo即为OK。
配置HBase
进入cd $HBASE_HOME/conf/
,需要修改的文件有:
- hbase-env.sh
- hbase-site.xml
1.修改hbase-env.sh
vim hbase-env.sh
打开JAVA_HOME注释,并配置成为自己的路径
# The java implementation to use. Java 1.7+ required.
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home
2.修改hbase-site.xml
vim hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<!-- 这里设置让HBase存储文件的地方 -->
<!-- <value>/Users/alfred/Software/hbase-1.3.0/my_store_file</value> -->
<value>hdfs://localhost:9000/hbase</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<!-- 这里设置让HBase存储内建zookeeper文件的地方 -->
<value>/Users/alfred/Software/hbase-1.3.0/zookeeper</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
</configuration>
Zookeeper
Zookeeper 是通过HomeBrew安装的,HomeBrew安装贼简单,装完后可以更换成国内的镜像源。
Zookeeper暂时不需要配置
三、启动
我写了个脚本放在~/Software
目录下,分别启动hdfs、yarn、Spark、Zookeeper和HBase
start_my_command.sh
#启动Hadoop集群
hadoop-2.8.4/sbin/start-dfs.sh
hadoop-2.8.4/sbin/start-yarn.sh
#启动Spark
spark-2.2.0/sbin/start-all.sh
#启动zookeeper
zkServe startr
#启动hbase
hbase-1.3.0/bin/start-hbase.sh
在terminal输入jps
可以看到
16001 HMaster
18580 Jps
15782 Worker
15719 Master
15303 NameNode
15384 DataNode
16776 Bootstrap
16106 HRegionServer
15483 SecondaryNameNode
15595 ResourceManager
15949 HQuorumPeer
15679 NodeManager
成功了!
附上stop_my_command.sh
#关闭hadoop
hadoop-2.8.4/sbin/stop-dfs.sh
hadoop-2.8.4/sbin/stop-yarn.sh
#关闭spark
spark-2.2.0/sbin/stop-all.sh
#关闭zookeeper
zkServer stop
#关闭hbase
hbase-1.3.0/bin/stop-hbase.sh