Spark在Windows/Linux下的最简安装

废话部分

因为在外地出差临时需要个Spark环境,就搭了一个,其实蛮简单的。想到总是会有萌新刚开始起步,也许就有无从下手的困扰,于是顺便就发个blog丰富下内容吧~ 万一有人需要呢~

总的来说,安装一个能跑的Spark环境,无论是在Windows系统还是Linux系统下都草鸡简单,就跟把大象关进冰箱一样,只需要三个步骤:

  1. 安装JDK
  2. 安装Spark
  3. 运行spark-shell

Windows下的安装

安装JDK 1.8

考验你们一下,安装JDK的话,首先要干嘛?当然是先下载啊,不然呢。。。答错的童鞋要努力吖~~
先登陆到JDK8的官网页面,这里说下为毛是JDK8, 而不是JDK7,JDK9,JDK10,因为我喜欢吖,你管我!哈哈哈~ just kidding,真相是我们要装的Spark v2.1.0的官网说了需要JDK 7+,但JDK7真心太老了~ 那就JDK8好了,成熟稳定。ok,继续登陆JDK8的下载页面https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
JDK8_Windows
下载之前注意,要先接受协议,选中Accept License Agreement选项,然后再下载。大家的操作系统按说应该都是64位的,所以选x64的安装包。下载之后双击安装,一路Next吧。安装完成以后,需要做一点点环境变量的配置。在电脑桌面上找到“计算机”图标,上面单击右键,选"属性"菜单,然后在新窗口的左侧点击"高级系统设置",会弹出
"系统属性"窗口。默认应该是在"高级"的那个tab页,如果不是的话就切到该页。点击"环境变量"按钮,会出现"环境变量"窗口。在下面的"系统变量"下面点击"新建"按钮,变量名写JAVA_HOME,变量值写JDK8的安装路径,默认应该是在C:\Program Files\Java\jdk1.8.0_201
JAVA_HOME环境变量
确定以后,再新建一个环境变量,变量名为CLASSPATH,变量值为.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar
CLASSPATH环境变量
点击确定后,JDK就算安装完了。来验证一下,打开命令行窗口(快捷键Win+R,输入cmd,回车),在命令行中输入java -version,看到版本号正确就ok啦。
java -version

安装Spark 2.1.0

先去官网http://spark.apache.org/downloads.html下载安装包。默认下载的是最新版本v2.4.1。要选旧版本去哪里?就在下载页面最底部Archived Releases的内容里有个链接Spark release archives,点进去,就能找到v2.1.0的安装包的下载链接https://archive.apache.org/dist/spark/spark-2.1.0/spark-2.1.0-bin-hadoop2.7.tgz。下载该文件,并解压即可。
Spark

运行spark-shell

从上面的图中可以看到,我的Spark安装包解压到了D盘根目录下。进命令行窗口运行spark-shell~

等一下!! 有个事情忘记了,有个Winutils.exe的工具还没装。为毛二货小编这时候想起来了呢?嘿嘿,非常羞耻的表示,刚才运行报错了,看提示想起来滴~~ 去github下载一个吧,地址是https://github.com/steveloughran/winutils,就下个hadoop 2.7配套的好了,下载下来后,放在解压后的spark目录的bin目录下。然后还需要配置一个环境变量HADOOP_HOME,方法和上面配置JDK时一样,变量名是HADOOP_HOME,变量值是spark的解压后的目录。
hadoop环境变量
恩,现在就可以跑起来了,命令就不写了,直接看图吧
spark-shell
第一条命令不用每次执行,就是这一次安装的时候运行一下就好了。下次运行spark-shell就不用管它了。
第二条命令就是在本地启动spark-shell,看到第三个框那儿的的sc和spark两个变量都是available,就是启动成功了。

关了它吧,重新启动一个试试hello,world
spark-shell直接运行
这一次启动,直接运行spark-shell.cmd就可以了,winutils不用管。看下面有sc和spark两个都available就可以构造Dataset输出Hello, world啦
spark-run-helloworld
Windows下安装成功哈~

Linux下的安装

Linux下使用Spark是更常见的情况,毕竟正经业务都是用Linux系统。你要是用Windows作为产品环境,这个。。。倒也不是一定说不行吧。但是,还蛮奇怪的哈~~ 不废话了,动手吧 ~ 还是用Spark v2.1.0举例:

安装JDK 1.8

跟Windows一样,还是安装JDK 1.8。在Linux中下载JDK,如果你是安装的带GUI图形界面的Linux系统,可以参照下面Windows安装JDK的部分操作。这里说一下没有图形界面的情况下怎么用wget命令来下载JDK的tar包。JDK8的官网下载页面链接是https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
JDK8下载
如果是有GUI的Linux,选中Accept后,直接点tar包链接下载就好了。但是wget直接下载这个链接是不行的。在stackoverflow上有个帖子https://stackoverflow.com/questions/10268583/downloading-java-jdk-on-linux-via-wget-is-shown-license-page-instead查到了wget下载的方法。但是帖子里给出的JDK8的命令行不能直接用,可能是那个下载的url变了。帖子中给的命令行是:

wget --no-cookies --no-check-certificate --header “Cookie: gpw_e24=http%3a%2F%2Fwww.oracle.com%2Ftechnetwork%2Fjava%2Fjavase%2Fdownloads%2Fjdk8-downloads-2133151.html; oraclelicense=accept-securebackup-cookie;” “https://download.oracle.com/otn-pub/java/jdk/8u191-b12/2787e4a523244c269598db4e85c51e0c/jdk-8u191-linux-x64.tar.gz

后面这个jdk-8u191的tar包地址可能无效,所以用刚才打开的官网页面上的tar包的url替换掉,最后的命令行如下:

wget --no-cookies --no-check-certificate --header “Cookie: gpw_e24=http%3a%2F%2Fwww.oracle.com%2Ftechnetwork%2Fjava%2Fjavase%2Fdownloads%2Fjdk8-downloads-2133151.html; oraclelicense=accept-securebackup-cookie;” https://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz

下载成功后,用tar命令解压

tar -xvf jdk-8u201-linux-x64.tar.gz

我是在root目录里下载的,所以解压后的jdk目录就是/root/jdk1.8.0_201

和Windows安装一样,解压后要配置环境变量,用vi命令修改下.bashrc文件:
linux-jdk-env
保存退出后,刷新一下环境变量,验证是否jdk安装成功:
linux-java-version
验证ok,下一步。

安装Spark 2.1.0

这一步和Windows下安装也是差不多的,所以copy一下改一改,少打好多字哇,舒服!
先去官网http://spark.apache.org/downloads.html下载安装包。默认下载的是最新版本v2.4.1。要选旧版本去哪里?就在下载页面最底部Archived Releases的内容里有个链接Spark release archives,点进去,就能找到v2.1.0的安装包的下载链接https://archive.apache.org/dist/spark/spark-2.1.0/spark-2.1.0-bin-hadoop2.7.tgz。下载该文件,并解压即可。解压还是用tar命令

tar xvf spark-2.1.0-bin-hadoop2.7.tgz

运行spark-shell

解压后就运行吧,这次没有Winutils.exe这个步骤了,直接进目录运行哈:
linux-spark-shell
没有中间商赚差价,就是一把梭,特别爽~

再来读个本地文件(/root/data.csv)试试:

[root@ecs-930c ~]# head data.csv
col1,col2
831332070,727683725
2071362904,335851518
39799445,562488733
508348230,1068210728
1942304283,1628763840
47379539,1712755443
1450772998,1665424737
200403590,645499051
1143944819,139054896

linux-read-csv
打完收工!


喜欢这些内容的话,可以关注下公众号哈~

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值