大数据基础环境之spark(3台虚拟机)

本博主之前的博客包含了详细的所有前置环境,出门左转谢谢。

Spark集群的搭建:

  1. 到官网上下载相应的压缩包

大数据基础环境之spark(3台虚拟机)

如果网速不好,推荐到清华的镜像去下载:http://archive.apache.org/dist/

大数据基础环境之spark(3台虚拟机)

 

进去找到你所需要的版本进行下载,速度会提升很多!

大数据基础环境之spark(3台虚拟机)

 

将压缩包上传到虚拟机上,进行解压到相应的文件夹,然后配置环境变量

大数据基础环境之spark(3台虚拟机)

 

最好将bin和sbin都添加到环境变量中 ,大数据基础环境之spark(3台虚拟机)我这里只添加了bin

 

  1. 修改spark的配置文件

大数据基础环境之spark(3台虚拟机)

在最后添加如下内容:

export JAVA_HOME=/usr/java/jdk1.8.0_141

export SCALA_HOME=/usr/scala-2.11.7

export HADOOP_HOME=/opt/hadoop-2.6.5

export HADOOP_CONF_DIR=/opt/hadoop-2.6.5/etc/hadoop

export SPARK_MASTER_IP=master

export SPARK_WORKER_MEMORY=500m

export SPARK_WORKER_CORES=2

export SPARK_WORKER_INSTANCES=1

 

变量说明 

- JAVA_HOME:Java安装目录 

- SCALA_HOME:Scala安装目录 

- HADOOP_HOME:hadoop安装目录 

- HADOOP_CONF_DIR:hadoop集群的配置文件的目录 

- SPARK_MASTER_IP:spark集群的Master节点的ip地址 

- SPARK_WORKER_MEMORY:每个worker节点能够最大分配给exectors的内存大小 

- SPARK_WORKER_CORES:每个worker节点所占有的CPU核数目 

- SPARK_WORKER_INSTANCES:每台机器上开启的worker节点的数目

 

修改slaves文件

大数据基础环境之spark(3台虚拟机)

大数据基础环境之spark(3台虚拟机)

也可以将三台机器的名字全部加进去

 

启动spark,测试是否能使用hdfs:

 

如果hadoop/sbin以及spark/sbin均配置到了系统的环境中,它们同一个文件夹下存在同样的start-all.sh文件。最好是打开spark-2.3.0,在文件夹下面打开该文件。

大数据基础环境之spark(3台虚拟机)

查看各个节点下的jps(注意:因为spark只使用了hdfs,我这里只开启了hdfs进程)

 大数据基础环境之spark(3台虚拟机)大数据基础环境之spark(3台虚拟机)大数据基础环境之spark(3台虚拟机)

 

然后就可以去浏览器访问master:8080端口

大数据基础环境之spark(3台虚拟机)

打开spark-shell:

大数据基础环境之spark(3台虚拟机)

进行编写scala程序进行验证

大数据基础环境之spark(3台虚拟机)

Spark-shell在运行,我们也可以通过master:4040端口进行访问:

大数据基础环境之spark(3台虚拟机)

至此,一个简单的spark完全分布式集群就算搭好了。。。

 

测试spark是否能使用hive(默认不行,需配置以下内容):

  1. 将hive-site.xml放置到spark的conf目录下
  2. 将mysql连接驱动文件mysql-connector-java-5.1.47.jar放到 spark/jars/下面
  3. 修改hdfs上的执行权限:hadoop  fs -chmod  777 /tmp/hive  

然后就可以启动spark2上的hive服务端:hive --service metastore

启动spark1上的spark-shell;对hive进行操作:

大数据基础环境之spark(3台虚拟机)

 

 

大数据基础环境之spark(3台虚拟机)

大数据基础环境之spark(3台虚拟机)

完成spark使用hive表的测试

后续会持续更新,敬请关注