怎样升级spark集群到更新的版本?
-IMF-李明
说明:
· 事实上升级spark很简单,因为spark并不是传统意义上‘安装’在你的集群上,你只需要:下载并解压合适的版本,进行一定的配置,并修改SPARK_HOME等环境变量(后两点可选);
· 本文以升级spark 1.6.0到1.6.1为例来说明如何升级;
· 本文中的spark安装在 VMware虚拟机中的ubuntu里;
· 本文以安装升级pre-built 版本为例,如果你的集群安装的是source code版本的,原理大致相同(pre-built版本是编译好了的,source code版本的需要你自己编译);
· 我们首先在一台节点上完成升级配置,然后SCP拷贝到其它节点上。
好,正式开始。
1. 从官网下载最新版spark:https://spark.apache.org/downloads.html
注:当然你也可以直接在虚拟机中通过wget下载,如下所示:
2. 将下载好的spark解压到目标文件夹中:tar –xzvf spark-1.6.1-bin-hadoop2.6.tgz
解压后spark中的内容如下所示:
3. 进入$SPARK_HOME/conf 文件夹下配置spark,主要更改的文件有slaves,spark-env.sh,spark-defaults.conf。更改后的内容如下:
Slaves:
Spark-env.sh:
Spark-defaults.conf:
注:spark官方推出新版本的时候,已经考虑了新旧版本兼容性,所以这几个配置文件的内容大体上差不多。故你也可以直接拷贝旧版本的配置文件。
4. 修改环境变量bashrc中的SPARK_HOME和PATH变量,指向新的版本的路径:
重启使环境变量的更改生效。
重启后验证下环境变量的更改是否生效:
5. 把配置好的SPARK拷贝到各个节点,并更改各个节点的bashrc环境变量。
6. 现在就可以使用新版本的集群啦!
7. 特别说明:
升级到新版本后,旧的版本你也可以不删除,这样当需要的时候,你可以修改环境变量指向旧的版本,来完成回滚;当然你也可以到对应的目录下执行命令启动对应版本的集群,来测试比较新旧版本的不同。