1、Scala安装:
- 下载
- 解压
- 配置环境变量
- 检查安装是否成功
详细安装步骤不再赘述,网上别人教程叙述的已经十分全面了。
2、Hadoop安装 参考这篇博客所介绍的详细步骤
3、Hbase安装
Hbase安装的前提是Hadoop集群和Zookeeper已经安装完毕,并能正确运行。
第一步:下载安装包,解压到合适位置
第二步:配置相关的文件
(1)配置hbase-env.sh,该文件在/soft/hbase/conf下
#内容
export JAVA_HOME=/soft/jdk
export HBASE_CLASSPATH=/soft/hbase/conf
# 此配置信息,设置由hbase自己管理zookeeper,不需要单独的zookeeper。
export HBASE_MANAGES_ZK=false
export HBASE_HOME=/soft/hbase
export HADOOP_HOME=/soft/hadoop
#Hbase日志目录
export HBASE_LOG_DIR=/soft/hbase/logs
(2)配置hbase-site.xml,该文件位于/soft/hbase/conf
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://hadoop0:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.master</name>
<value>hadoop0:60000</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop0,hadoop1,hadoop2,hadoop3</value>
</property>
</configuration>
(2)配置 regionservers,该文件位于/soft/hbase/conf
hadoop0
hadoop1
hadoop2
hadoop3
第三步:启动Hbase
bin/start-hbase.sh
在启动HBase之前,必须先启动Hadoop,以便于HBase初始化、读取存储在hdfs上的数据
4、Spark安装
以下操作都在Master节点进行。
1)下载二进制包
2)解压并移动到相应目录
3)修改相应的配置文件。
配置环境变量,修改/etc/profie,增加如下内容:
export SPARK_HOME=/soft/spark/
export PATH=$PATH:$SPARK_HOME/bin
复制spark-env.sh.template成spark-env.sh
cp spark-env.sh.template spark-env.sh
修改$SPARK_HOME/conf/spark-env.sh,添加如下内容:
export JAVA_HOME=/soft/jdk
export SCALA_HOME=/soft/scala
export HADOOP_HOME=/soft/hadoop
export HADOOP_CONF_DIR=/soft/hadoop/etc/hadoop
export SPARK_MASTER_IP=hadoop0
export SPARK_WORKER_MEMORY=2g
export SPARK_WORKER_CORES=1
export SPARK_WORKER_INSTANCES=1
复制slaves.template成slaves:cp slaves.template slaves
修改$SPARK_HOME/conf/slaves,添加如下内容:
hadoop1
hadoop2
hadoop3
4)将配置好的spark文件复制到其他节点。
5)修改其他节点的配置。
6)在Master节点启动集群。/soft/spark/sbin/start-all.sh
7)查看集群是否启动成功:jps
启动命令记录,方便以后使用:
①启动zookeeper:/soft/shell/zookeeper.sh zookeeper.sh是自己写的shell脚本,只需要在hadoop0上执行就可以在全部四个机器上都启动zookeeper,shell脚本的内容如下:
#!/bin/sh
echo "start zkServer..."
for i in 0 1 2 3
do
ssh hadoop$i "source /etc/profile;/soft/zookeeper/bin/zkServer.sh start"
done
②启动hadoop:先启动HDFS,/soft/hadoop/sbin/start-dfs.sh;再启动YARN,/soft/hadoop/sbin/start-yarn.sh
③启动Spark: /soft/spark/sbin/start-all.sh 关闭Spark: /soft/spark/sbin/stop-all.sh
④启动Kafka:自己写的shell脚本,只需要在hadoop0上执行/soft/shell/kafka.sh 就可全部启动,shell脚本内容如下:
brokers="hadoop0 hadoop1 hadoop2 hadoop3"
kafka_home="/soft/kafka"
for i in $brokers
do
echo "Starting kafka on ${i} ... "
ssh ${i} "source /etc/profile; nohup sh ${kafka_home}/bin/kafka-server-start.sh ${kafka_home}/config/server.properties > /dev/null 2>&1 &"
if [[ $? -ne 0 ]]; then
echo "Start kafka on ${i} is OK !"
fi
done
echo kafka kafka are started !
exit 0
⑤启动Hbase:只需要在hadoop0执行 /soft/hbase/bin/start-hbase.sh
就先启动这么多吧,后面再需要其他命令再追加。
5、开发环境搭建:
IDEA + Maven
pom文件:
<properties>
<scala.version>2.11.8</scala.version>
<kafka.version>0.11.0.2</kafka.version>
<spark.version>2.2.0</spark.version>
<hadoop.version>2.7.3</hadoop.version>
<hbase.version>1.2.4</hbase.version>
</properties>
<dependencies>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>${scala.version}</version>
</dependency>
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.11</artifactId>
<version>${kafka.version}</version>
</dependency>
<!--Hadoop依赖-->
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>${hadoop.version}</version>
</dependency>
<!--Hbase client依赖-->
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-client</artifactId>
<version>${hbase.version}</version>
</dependency>
<!--Hbase server依赖-->
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-server</artifactId>
<version>${hbase.version}</version>
</dependency>
<!--SparkStreaming 依赖-->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-streaming_2.11</artifactId>
<version>${spark.version}</version>
</dependency>
</dependencies>