下载

官网地址:https://www.apache.org/dyn/closer.lua/spark/spark-2.4.5/spark-2.4.5-bin-hadoop2.7.tgz

验证Java是否安装

  1. java -verison

JDK下载地址

解压安装

  1. tar -zxvf jdk-14.0.1_linux-x64_bin.tar.gz
  2. mv jdk-14.0.1 /usr/local/java

验证Scala是否安装

  1. scala -verison
  2. wget https://downloads.lightbend.com/scala/2.13.1/scala-2.13.1.tgz
  3. tar xvf scala-2.13.1.tgz
  4. mv scala-2.13.1 /usr/local/
  • 设置jdk与scala的环境变量
  1. vi /etc/profile
  2. export JAVA_HOME=/usr/local/java
  3. export SPARK_HOME=/usr/local/spark
  4. export CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
  5. export PATH=$JAVA_HOME/bin:$PATH:$SPARK_HOME/bin
  6. source /etc/profile
  • 再次验证一下是否安装成功
  1. scala -version
  2. java -verison

安装spark

  1. 解压并移动到相应的目录
  1. tar -zxvf spark-2.4.5-bin-hadoop2.7.tgz
  2. mv spark-2.4.5-bin-hadoop2.7 /usr/local/spark
  1. 设置spark环境变量
  1. vi /etc/profile
  2. export PATH=$PATH:/usr/local/spark/bin

保存,刷新

  1. source /etc/profile
  1. 验证一下spark shell
  1. spark-shell

出现以下信息,即成功

设置Spark主结点

spark配置都提供了相应的模板配置,我们复制一份出来

  1. cd /usr/local/spark/conf/
  2. cp spark-env.sh.template spark-env.sh
  3. vi spark-env.sh
  • 设置主结点Master的IP
  1. SPARK_MASTER_HOST='192.168.56.109'
  2. JAVA_HOME=/usr/local/java
  • 如果是单机启动
  1. ./sbin/start-master.sh
  1. ./sbin/stop-master.sh
  • 设置hosts
  1. 192.168.56.109 master
  2. 192.168.56.110 slave01
  3. 192.168.56.111 slave02

免密登录

Master上执行

  1. ssh-keygen -t rsa -P ""

生成三个文件

将id_rsa.pub复制到slave,注意authorized_keys就是id_rsa.pub,在slave机器上名为authorized_keys,操作

  1. scp -r id_rsa.pub root@192.168.56.110:/root/.ssh/authorized_keys
  2. scp -r id_rsa.pub root@192.168.56.111:/root/.ssh/authorized_keys
  3. cp id_rsa.pub authorized_keys

到slava机器上

  1. chmod 700 .ssh
  • 检查一下是否可以免密登录到slave01,slave02
  1. ssh slave01
  2. ssh slave02

Master与Slave配置worker结点

  1. cd /usr/local/spark/conf
  2. cp slaves.template slaves

加入两个slave,注意:slaves文件中不要加master,不然master也成为一个slave结点

  1. vi slaves
  2. slave01
  3. slave02

Master结点启动

  1. cd /usr/local/spark
  2. ./sbin/start-all.sh

如果出现 JAVA_HOME is not set 错误,则需要在slave结点的配置目录中的spark-env.sh中加入JAVA_HOME=/usr/local/java

如果启动成功访问:http://192.168.56.109:8080/,会出现两个worker

本地开发

将上面spark-2.4.5-bin-hadoop2.7解压到本地,到bin目录双击spark-shell.cmd,不出意外应该会报错

  1. Could not locate executable null\bin\winutils.exe in the Hadoop binaries.

错误原因是因为没有下载Hadoop windows可执行文件。因为我们本地没有hadoop环境,这里可以用winutils来模拟,并不需要我们真的去搭建hadoop

可以到这里下载,如果要下载其它版本的可以自行选择

  • 设置本机环境变量



再次重启,可以看到如下信息即成功

  • idea里Run/Debug配置里加入以下环境变量

  • idea里还需要加入scala插件,后面可以愉快的用data.show()查看表格了



请关注,后续有更精彩的文章分享

> 本文由博客一文多发平台 [OpenWrite](https://openwrite.cn?from=article_bottom) 发布!

Spark2.4.5集群安装与本地开发的更多相关文章

  1. CentOS7+Hadoop2.7.2(HA高可用+Federation联邦)+Hive1.2.1+Spark2.1.0 完全分布式集群安装

    1 2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.9.1 2.9.2 2.9.2.1 2.9.2.2 2.9.3 2.9.3.1 2.9.3.2 2.9.3.3 2. ...

  2. Spark2.1集群安装(standalone模式)

    机器部署 准备三台Linux服务器,安装好JDK1.7 下载Spark安装包 上传spark-2.1.0-bin-hadoop2.6.tgz安装包到Linux(intsmaze-131)上 解压安装包 ...

  3. linux安装spark-2.3.0集群

    (安装spark集群的前提是服务器已经配置了jdk并且安装hadoop集群(主要是hdfs)并正常启动,hadoop集群安装可参考<hadoop集群搭建(hdfs)>) 1.配置scala ...

  4. 大数据技术之_19_Spark学习_01_Spark 基础解析 + Spark 概述 + Spark 集群安装 + 执行 Spark 程序

    第1章 Spark 概述1.1 什么是 Spark1.2 Spark 特点1.3 Spark 的用户和用途第2章 Spark 集群安装2.1 集群角色2.2 机器准备2.3 下载 Spark 安装包2 ...

  5. spark集群安装并集成到hadoop集群

    前言 最近在搞hadoop+spark+python,所以就搭建了一个本地的hadoop环境,基础环境搭建地址hadoop2.7.7 分布式集群安装与配置 本篇博客主要说明,如果搭建spark集群并集 ...

  6. CentOS7.5搭建spark2.3.1集群

    一 下载安装包 1 官方下载 官方下载地址:http://spark.apache.org/downloads.html 2  安装前提 Java8         安装成功 zookeeper  安 ...

  7. 3 Spark 集群安装

    第3章 Spark集群安装 3.1 Spark安装地址 1.官网地址 http://spark.apache.org/ 2.文档查看地址 https://spark.apache.org/docs/2 ...

  8. CentOS下Hadoop-2.2.0集群安装配置

    对于一个刚开始学习Spark的人来说,当然首先需要把环境搭建好,再跑几个例子,目前比较流行的部署是Spark On Yarn,作为新手,我觉得有必要走一遍Hadoop的集群安装配置,而不仅仅停留在本地 ...

  9. Hadoop多节点集群安装配置

    目录: 1.集群部署介绍 1.1 Hadoop简介 1.2 环境说明 1.3 环境配置 1.4 所需软件 2.SSH无密码验证配置 2.1 SSH基本原理和用法 2.2 配置Master无密码登录所有 ...

随机推荐

  1. [YII2] 自带分页调整

    在search Model的search()方法里有一个$dataProvider 属性 ,在这个属性数组里添加 'pagination' => ['pageSize' => 10,],设 ...

  2. 浅析 CSS 中的边距重叠

    浅析 CSS 中的边距重叠 边距重叠是什么 在说边距重叠之前,先以正常的思维来考虑如果你现在是浏览器引擎遇到这种情况应该怎么办? 现在有两个元素 div1 和 div2 紧挨着,中间没有它元素,它们的 ...

  3. python 基础篇 匿名函数

    匿名函数基础 首先,什么是匿名函数呢?以下是匿名函数的格式: lambda argument1, argument2,... argumentN : expression 我们可以看到,匿名函数的关键 ...

  4. Makefile 头文件 <> 与 "" 的差别,与 Visual Studio 不同

    #include "" : 首先在所有被编译的.c所在的路径中,查找头文件,如果找不到,则到 -I路径下去找头文件 #inclue <> :首先在-I路径下去找,如果找 ...

  5. 虚拟化KVM之安装(二)

    安装KVM虚拟化 1.系统基础环境: [root@linux-node1 ~]# ip addr | grep inet | awk '{ print $2; }' | sed 's/\/.*$//' ...

  6. SpringBoot应用操作Rabbitmq(direct高级操作)

    一.首先声明完成任务架构,通过direct订阅/发布的模式进行生产消费. a.消息生产指定交换器和路由key b.消费者绑定交换器,路由key和队列的关系(集群监控收到的消息不重复) 二.实战演练 1 ...

  7. 与IBM的Lin Sun关于Istio 1.0和微服务的问答

    北京时间 7 月 31 日,Istio 正式发布了 1.0 版本,并表示已经可用于生产环境.该版本的主要新特性包括跨集群 mesh 支持.细粒度流量控制以及在一个 mesh 中增量推出 mutual ...

  8. 剑指offer---05---用栈实现队列

    题意 给了两个栈去实现队列   分析 两个栈如下情况       1       2 4    3 这个时候就不能够把4插入到第二个弹出栈了否则弹出顺序出错. 所以这个时候就应该等第二个栈空了的时候再 ...

  9. 洛谷P3018 [USACO11MAR]树装饰Tree Decoration

    洛谷P3018 [USACO11MAR]树装饰Tree Decoration树形DP 因为要求最小,我们就贪心地用每个子树中的最小cost来支付就行了 #include <bits/stdc++ ...

  10. 学数据库还不会Select,SQL Select详解,单表查询完全解析?

    查询操作是SQL语言中很重要的操作,我们今天就来详细的学习一下. 一.数据查询的语句格式 SELECT [ALL|DISTINCT] <目标列表达式>[,<目标列表达式> .. ...