? ? ?? 最近想要學(xué)習(xí)spark暂刘,首先需要搭建spark的環(huán)境谈况,之前零零散散也接觸過(guò)一些spark的東西斤斧,但是都沒(méi)有記錄下來(lái)早抠。剛好新安裝了一個(gè)ubuntu18.04系統(tǒng),想在此系統(tǒng)上進(jìn)行環(huán)境搭建撬讽,趁機(jī)記錄一下過(guò)程贝或。
? ? ? ? 訪問(wèn)spark的官網(wǎng),閱讀spark的安裝過(guò)程锐秦,發(fā)現(xiàn)spark需要使用到hadoop咪奖,java JDK等,當(dāng)然官網(wǎng)也提供了Hadoop free的版本酱床。本文還是從安裝java JDK開(kāi)始羊赵,逐步完成spark的單機(jī)安裝。
1. java JDK8的安裝
? ? ? ? 前往Oracle官網(wǎng)下載JDK8扇谣,選擇適合自己操作系統(tǒng)的版本昧捷,此處選擇Linux 64
????????https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
? ?? 下載之后的包放到某個(gè)目錄下,此處放在/opt/java目錄
? ?? 使用命令:tar -zxvf jdk-8u201-linux-x64.tar.gz 解壓縮
????????????
? ? 修改配置文件/etc/profile罐寨,使用命令:sudo vim /etc/profile
????在文件末尾增加以下內(nèi)容(具體路徑依據(jù)環(huán)境而定):
????export JAVA_HOME=/opt/java/jdk1.8.0_201
????export JRE_HOME=/opt/java/jdk1.8.0_201/jre
????export PATH=${JAVA_HOME}/bin:$PATH
? ? 保存退出靡挥,在終端界面使用命令: source /etc/profile 使配置文件生效。
? ? 使用java -version驗(yàn)證安裝是否成功鸯绿,以下回顯表明安裝成功了跋破。
? ? 2. 安裝Hadoop
? ? ? ? ? ? 前往官網(wǎng)https://hadoop.apache.org/releases.html下載hadoop簸淀,此處選擇版本2.7.7
? ? ? ? ? ? hadoop需要ssh免密登陸等功能,因此先安裝ssh毒返。
? ? ? ? ? ? 使用命令:sudo apt-get install ssh
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? sudo apt-get install rsync
? ? ? ? ? ? 將下載的包放到某個(gè)目錄下租幕,此處放在/opt/hadoop
? ? ? ? ? ? 使用命令:tar -zxvf hadoop-2.7.7.tar.gz 進(jìn)行解壓縮
? ? ? ? ? ? 此處選擇偽分布式的安裝方式(Pseudo-Distributed)
? ? ? ? ? ? 修改解壓后的目錄下的子目錄文件 etc/hadoop/hadoop-env.sh,將JAVA_HOME路徑修改為本機(jī)JAVA_HOME的路徑
? ? ? ? 配置hadoop的環(huán)境變量
? ? ? ? 使用命令:sudo vim /etc/profile 添加以下內(nèi)容:
? ? ? ? export HADOOP_HOME=/opt/hadoop/hadoop-2.7.7
? ? ? ? 修改PATH變量拧簸,添加hadoop的bin目錄進(jìn)去
????????export PATH=${JAVA_HOME}/bin:${HADOOP_HOME}/bin:$PATH
?????????修改解壓后的目錄下的子目錄文件 etc/hadoop/core-site.xml
????????修改解壓后的目錄下的子目錄文件 etc/hadoop/hdfs-site.xml
設(shè)置免密登陸
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
? ? 使用命令:ssh localhost 驗(yàn)證是否成功劲绪,如果不需要輸入密碼即可登陸說(shuō)明成功了。
接下來(lái)需要驗(yàn)證Hadoop的安裝
a. 格式化文件系統(tǒng)
? ? bin/hdfs namenode -format
b. 啟動(dòng)Namenode和Datanode
c.瀏覽器訪問(wèn)http://localhost:50070
3. 安裝spark
? ? 前往spark官網(wǎng)下載spark
????https://spark.apache.org/downloads.html
? ? 此處選擇版本如下:
? ? 將spark放到某個(gè)目錄下盆赤,此處放在/opt/spark
? ? 使用命令:tar -zxvf spark-2.4.0-bin-hadoop2.7.tgz 解壓縮即可
?? 使用命令: ./bin/run-example SparkPi 10 測(cè)試spark的安裝
????
? ? 配置環(huán)境變量SPARK_HOME
? ? 在/etc/profile中添加
? ? export SPARK_HOME=/opt/spark/spark-2.4.0-bin-hadoop2.7
????export PATH=${JAVA_HOME}/bin:${HADOOP_HOME}/bin:${SPARK_HOME}/bin:$PATH
?4. 安裝pyspark
? ? pyspark的安裝比較簡(jiǎn)單贾富,直接使用pip install pyspark即可
5. 安裝zeppelin
Zeppelin是一個(gè)基于Web的notebook,提供交互數(shù)據(jù)分析和可視化牺六。后臺(tái)支持接入多種數(shù)據(jù)處理引擎颤枪,如spark,hive等兔乞。支持多種語(yǔ)言: Scala(Apache Spark)、Python(Apache Spark)凉唐、SparkSQL庸追、 Hive、 Markdown台囱、Shell等淡溯。
前往官網(wǎng)下載zeppelin
http://www.apache.org/dyn/closer.cgi/zeppelin/zeppelin-0.8.1/zeppelin-0.8.1-bin-all.tgz
放到某個(gè)目錄下,此處放在/opt/zeppelin
使用命令:tar -zxvf zeppelin-0.8.1-bin-all.tgz進(jìn)行解壓
編輯配置文件conf/zeppelin-env.sh簿训,添加環(huán)境變量
啟動(dòng)zeppelin
bin/zeppelin-daemon.sh start
訪問(wèn)http://localhost:8080
? ? 在zeppelin中配置spark解釋器后咱娶,即可在zeppelin中創(chuàng)建notebook編寫代碼。