天天看點

hadoop&spark安裝(下)

上一遍文章中其實最主要的就是JAVA環境變量以及hadoop環境變量的設定,這兩個設定好了的話,運作hadoop基本上不會出問題。

在hadoop的基礎上安裝spark好簡單。

安裝Spark之前需要先安裝Hadoop叢集,因為之前已經安裝了hadoop,是以我直接在之前的hadoop叢集上安裝spark。

硬體環境:

hddcluster1 10.0.0.197 redhat7

hddcluster2 10.0.0.228 centos7  這台作為master

hddcluster3 10.0.0.202 redhat7

hddcluster4 10.0.0.181 centos7

軟體環境:

scala-2.11.7

spark-2.0.2-bin-hadoop2.7.tgz

#所有操作用hadoop

基本流程:

1、master解壓scala-2.11.7和spark-2.0.2-bin-hadoop2.7.tgz到相應的目錄

2、配置scala和spark環境變量

3、修改配置檔案

4、拷貝scala和spark到各個節點,授權

5、啟動spark叢集

<code>#hadoop使用者下操作,下載下傳scala,安裝</code>

<code>wget http:</code><code>//downloads</code><code>.lightbend.com</code><code>/scala/2</code><code>.11.7</code><code>/scala-2</code><code>.11.7.tgz</code>

<code>tar</code> <code>-zxvf scala-2.11.7.tgz </code>

<code>mv</code> <code>scala-2.11.7 </code><code>/usr/local/scala</code>

<code>sudo</code> <code>mv</code> <code>scala-2.11.7 </code><code>/usr/local/scala</code>

<code>vim .bashrc     </code><code>#添加</code>

<code>export</code> <code>SCALA_HOME=</code><code>/usr/local/scala</code>

<code>export</code> <code>PATH=$PATH:$HADOOP_HOME</code><code>/sbin</code><code>:$HADOOP_HOME</code><code>/bin</code><code>:$SCALA_HOME</code><code>/bin</code>

<code>source</code> <code>.bashrc</code>

<code>[hadoop@hddcluster2 ~]$ scala -version</code>

<code>Scala code runner version 2.11.7 -- Copyright 2002-2013, LAMP</code><code>/EPFL</code>

<code>#在官網下載下傳spark-2.0.2-bin-hadoop2.7.tgz</code>

<code>tar</code> <code>-zxvf spark-2.0.2-bin-hadoop2.7.tgz</code>

<code>mv</code>  <code>spark-2.0.2-bin-hadoop2.7 spark</code>

<code>sudo</code> <code>mv</code> <code>spark </code><code>/usr/local/</code>

<code>vim .bashrc   </code><code>#添加</code>

<code>export</code> <code>SPARK_HOME=</code><code>/usr/local/spark</code>

<code>export</code> <code>PATH=$PATH:$HADOOP_HOME</code><code>/sbin</code><code>:$HADOOP_HOME</code><code>/bin</code><code>:$SCALA_HOME</code><code>/bin</code><code>:$SPARK_HOME</code>

<code>#修改spark配置檔案</code>

<code>cd</code> <code>/usr/local/spark/conf</code>

<code>cp</code> <code>spark-</code><code>env</code><code>.sh.template spark-</code><code>env</code><code>.sh</code>

<code>vi</code> <code>spark-</code><code>env</code><code>.sh   </code><code>#添加下面内容</code>

<code>###jdk dir</code>

<code>export</code> <code>JAVA_HOME=</code><code>/usr/lib/jvm/java-1</code><code>.8.0-openjdk-1.8.0.111-2.b15.el7_3.x86_64</code>

<code>###scala dir</code>

<code>###the ip of master node of spark</code>

<code>export</code> <code>SPARK_MASTER_IP=10.0.0.228</code>

<code>###the max memory size of worker</code>

<code>export</code> <code>SPARK_WORKER_MEMORY=8G</code>

<code>###hadoop configuration file dir</code>

<code>export</code> <code>HADOOP_CONF_DIR=</code><code>/usr/local/hadoop/etc/hadoop/</code>

<code>#修改slave</code>

<code>cp</code> <code>slaves.template slaves</code>

<code>vi</code> <code>slaves   </code><code>#把localhost改為下面内容</code>

<code>hddcluster1</code>

<code>hddcluster2</code>

<code>hddcluster3</code>

<code>hddcluster4</code>

<code>#把/usr/local/spark 和 /usr/local/scala打包,然後複制到slave節點、</code>

<code>cd</code> <code>/usr/local</code>

<code>tar</code> <code>-zcf ~</code><code>/master</code><code>.spark.</code><code>tar</code><code>.gz  .</code><code>/spark</code>

<code>tar</code> <code>-zcf ~</code><code>/master</code><code>.scala.</code><code>tar</code><code>.gz  .</code><code>/scala</code>

<code>scp</code> <code>master.spark.</code><code>tar</code><code>.gz hddcluster1:~</code>

<code>scp</code> <code>master.scala.</code><code>tar</code><code>.gz hddcluster1:~</code>

<code>#登入各個節點進行解壓到/usr/local</code>

<code>tar</code> <code>-zxf master.spark.</code><code>tar</code><code>.gz -C </code><code>/usr/local/</code>

<code>tar</code> <code>-zxf master.scala.</code><code>tar</code><code>.gz -C </code><code>/usr/local/</code>

<code>chown</code> <code>-R hadoop:hadoop </code><code>/usr/local/spark</code>

<code>chown</code> <code>-R hadoop:hadoop </code><code>/usr/local/scala</code>

<code>再配置.bashrc環境變量和master的一樣。</code>

<code>加上hadoop上一篇的.bashrc内容是這樣子:</code>

<code>#scala</code>

<code>#spark</code>

<code>#java and hadoop</code>

<code>export</code> <code>HADOOP_HOME=</code><code>/usr/local/hadoop</code>

<code>export</code> <code>HADOOP_INSTALL=$HADOOP_HOME</code>

<code>export</code> <code>HADOOP_MAPRED_HOME=$HADOOP_HOME</code>

<code>export</code> <code>HADOOP_COMMON_HOME=$HADOOP_HOME</code>

<code>export</code> <code>HADOOP_HDFS_HOME=$HADOOP_HOME</code>

<code>export</code> <code>YARN_HOME=$HADOOP_HOME</code>

<code>export</code> <code>HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME</code><code>/lib/native</code>

<code>export</code> <code>HADOOP_PREFIX=$HADOOP_HOME</code>

<code>export</code> <code>HADOOP_OPTS=</code><code>"-Djava.library.path=$HADOOP_PREFIX/lib:$HADOOP_PREFIX/lib/native"</code>

<code>到此Spark叢集搭建完畢</code>

<code>.啟動Spark叢集:</code>

<code>啟動Spark之前需要先将hadoop的dfs以及yarn啟動。</code>

<code>/usr/local/spark/sbin/start-all</code><code>.sh</code>

<code> </code><code>啟動所有服務之後,在指令行輸入jps:</code>

<code>[hadoop@hddcluster2 ~]$ jps</code>

<code>29601 ResourceManager</code>

<code>32098 SparkSubmit</code>

<code>29188 DataNode</code>

<code>29364 SecondaryNameNode</code>

<code>29062 NameNode</code>

<code>29915 NodeManager</code>

<code>30251 Master</code>

<code>30380 Worker</code>

<code>30062 JobHistoryServer</code>

<code>18767 Jps</code>

<code> </code><code>比hadoop叢集啟動時多了Master和worker</code>

<code>/usr/local/spark/bin/spark-shell</code><code>.sh</code>

<code>出現scala&gt;時說明成功。</code>

<code>在浏覽器中輸入10.0.0.228:8080時,會看到如下圖,有4個Worker</code>

<a href="http://s4.51cto.com/wyfs02/M01/8B/E2/wKiom1hbdomh4jZgAAF1fqxnfrg791.jpg-wh_500x0-wm_3-wmp_4-s_2179854721.jpg" target="_blank"></a>

<a href="http://s4.51cto.com/wyfs02/M01/8B/DE/wKioL1hbdomArLL0AAFBgG7qfcU571.jpg-wh_500x0-wm_3-wmp_4-s_2864049645.jpg" target="_blank"></a>

本文轉自 yanconggod 51CTO部落格,原文連結:http://blog.51cto.com/yanconggod/1885082