大数据基础环境之spark(3台虚拟机)
本博主之前的博客包含了详细的所有前置环境,出门左转谢谢。
Spark集群的搭建:
- 到官网上下载相应的压缩包
如果网速不好,推荐到清华的镜像去下载:http://archive.apache.org/dist/
进去找到你所需要的版本进行下载,速度会提升很多!
将压缩包上传到虚拟机上,进行解压到相应的文件夹,然后配置环境变量
:
最好将bin和sbin都添加到环境变量中 ,我这里只添加了bin
- 修改spark的配置文件
在最后添加如下内容:
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,测试是否能使用hdfs:
如果hadoop/sbin以及spark/sbin均配置到了系统的环境中,它们同一个文件夹下存在同样的start-all.sh文件。最好是打开spark-2.3.0,在文件夹下面打开该文件。
查看各个节点下的jps(注意:因为spark只使用了hdfs,我这里只开启了hdfs进程)
然后就可以去浏览器访问master:8080端口
打开spark-shell:
进行编写scala程序进行验证
Spark-shell在运行,我们也可以通过master:4040端口进行访问:
至此,一个简单的spark完全分布式集群就算搭好了。。。
测试spark是否能使用hive(默认不行,需配置以下内容):
- 将hive-site.xml放置到spark的conf目录下
- 将mysql连接驱动文件mysql-connector-java-5.1.47.jar放到 spark/jars/下面
- 修改hdfs上的执行权限:hadoop fs -chmod 777 /tmp/hive
然后就可以启动spark2上的hive服务端:hive --service metastore
启动spark1上的spark-shell;对hive进行操作:
完成spark使用hive表的测试
后续会持续更新,敬请关注