Spark實踐2(Spark單點的安裝)

    有個笑話是這樣的,

     程序員小明說,我的女朋友,我就得讓她給我買好菜,燒好飯,洗好衣服,疊好被子......

     然後運營的妹子輕輕得問了一句,那是不是首先得有一個女朋友?#¥$^%@.....

    沒錯,同樣的道理,要Spark實踐,我們首先得有個Spark,哪怕他是個單點的。

參考官網:http://spark.apache.org/docs/latest/index.html

Spark單點安裝流程:

環境:Cetos 7

Java:1.8 (需要自己在系統內安裝好,設置好環境變量,這裏不再展開。

1. 檢查JAVA環境是否安裝好,如果JAVA_HOME目錄沒有東西,那就得先弄好Java環境

[root@FSB-Centos-213 spark-2.2.1-bin-hadoop2.7]# echo $JAVA_HOME
/usr/local/java/jdk1.8.0_131

2.進入某個指定的目錄,下載spark包,版本挑個最新的就可以

cd /data1/software/spark

wget http://mirrors.shu.edu.cn/apache/spark/spark-2.2.1/spark-2.2.1-bin-hadoop2.7.tgz

3. 下載完成之後,解壓包

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

4. 解壓之後,進入spark的目錄,可以看到該目錄下有以下的文件和目錄,如紅色字體所示,這些目錄的命名都很常規,基本是不言而喻的,比如bin,肯定是存命令的,conf肯定存配置的,這裏主要關注一下README.md文件,這個文件一般都是使用手冊,如果英文還可以的話,直接看這個文件就可以安裝了,而不用整天去百度一下。

[root@FSB-Centos-213 spark]# cd spark-2.2.1-bin-hadoop2.7
[root@FSB-Centos-213 spark-2.2.1-bin-hadoop2.7]# ls
bin  conf  data  examples  jars  LICENSE  licenses  NOTICE  python  R  README.md  RELEASE  sbin  yarn

5. 啓動一個spark-shell,由於spark是scala寫的,所以,肯定會支持scala shell,當然他也支持python,由於作者對scala語言不是非常熟悉,所以這裏用python shell,這個shell啓動之後,spark的但個節點也隨之啓動了。

[root@FSB-Centos-213 spark-2.2.1-bin-hadoop2.7]# bin/pyspark
Python 2.6.6 (r266:84292, Nov 22 2013, 12:16:22)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
18/02/28 11:08:58 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
18/02/28 11:08:59 WARN Utils: Service 'SparkUI' could not bind on port 4040. Attempting port 4041.
/data1/software/spark/spark-2.2.1-bin-hadoop2.7/python/pyspark/context.py:195: UserWarning: Support for Python 2.6 is deprecated as of Spark 2.0.0
  warnings.warn("Support for Python 2.6 is deprecated as of Spark 2.0.0")
18/02/28 11:09:06 WARN ObjectStore: Version information not found in metastore. hive.metastore.schema.verification is not enabled so recording the schema version 1.2.0
18/02/28 11:09:07 WARN ObjectStore: Failed to get database default, returning NoSuchObjectException
18/02/28 11:09:07 WARN ObjectStore: Failed to get database global_temp, returning NoSuchObjectException
Welcome to
      ____              __
     / __/__  ___ _____/ /__
    _\ \/ _ \/ _ `/ __/  '_/
   /__ / .__/\_,_/_/ /_/\_\   version 2.2.1
      /_/

Using Python version 2.6.6 (r266:84292, Nov 22 2013 12:16:22)
SparkSession available as 'spark'.
>>>

6. 在系統另外一個shell(不是python shell,就是普通的linux的shell)看一下進程,明顯spark已經啓動

[root@FSB-Centos-213 spark-2.2.1-bin-hadoop2.7]#
[root@FSB-Centos-213 spark-2.2.1-bin-hadoop2.7]#
[root@FSB-Centos-213 spark-2.2.1-bin-hadoop2.7]# ps axu|grep spark
root      7662  0.0  0.0 106080  1440 pts/2    T    10:39   0:00 bash bin/spark-shell

root      8652 14.0  2.7 4721436 447816 pts/0  Sl+  11:08   0:16 /usr/local/java/jdk1.8.0_131/bin/java -cp /data1/software/spark/spark-2.2.1-bin-hadoop2.7

7. 退出spark的python shell的時候,如果需要將spark進程也殺了, 那就用 quit() 方法,如果直接CTRL + C 去暴力退出python shell,進程一直留在後臺

>>> quit()
[root@FSB-Centos-213 spark-2.2.1-bin-hadoop2.7]#

整個安裝過程基本就完成了,總體而言,安裝個spark,比小明同學有個女朋友不知道簡單了多少倍。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章