国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Apache Spark源碼走讀之10

y歡迎轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)注明出處,徽滬一郎。

概要

“spark已經(jīng)比較頭痛了,還要將其運(yùn)行在yarn上,yarn是什么,我一點(diǎn)概念都沒(méi)有哎,再怎么辦啊。不要跟我講什么原理了,能不能直接告訴我怎么將spark在yarn上面跑起來(lái),I'm a dummy, just told me how to do it.” 

如果你和我一樣是一個(gè)對(duì)形而上的東西不是太感興趣,而只糾結(jié)于怎么去做的話,看這份guide保證不會(huì)讓你失望, :)。

前期準(zhǔn)備

本文所有的操作基于arch linux,保證下述軟件已經(jīng)安裝

  1. jdk
  2. scala
  3. maven

搭建hadoop

hadoop像它的Logo一樣,真得是一個(gè)體形無(wú)比巨大的大象,如果直接入手去搞這個(gè)東東的話,肯定會(huì)昏上好長(zhǎng)一段時(shí)間。個(gè)人取巧,從storm弄起,一路走來(lái)還算平滑。

hadoop最主要的是hdfs和MapReduce Framework,針對(duì)第二代的hadoop即hadoop 2這個(gè)Framework變成了非常流行的YARN, 要是沒(méi)聽說(shuō)過(guò)YARN,都不好意思說(shuō)自己玩過(guò)Hadoop了。

不開玩笑了,注意上面一段話中最主要的信息就是hdfs和mapreduce framework,我們接下來(lái)的所有配置都是圍繞這兩個(gè)主題來(lái)的。

創(chuàng)建用戶

添加用戶組: hadoop,  添加用戶hduser

groupadd hadoopuseradd -b /home -m -g hadoop hduser

下載hadoop運(yùn)行版

假設(shè)當(dāng)前是以root用戶登錄,現(xiàn)在要切換成用戶hduser

su - hduserid ##檢驗(yàn)一下切換是否成功,如果一切ok,將顯示下列內(nèi)容uid=1000(hduser) gid=1000(hadoop) groups=1000(hadoop)

下載hadoop 2.4并解壓

cd /home/hduserwget http://mirror.esocc.com/apache/hadoop/common/hadoop-2.4.0/hadoop-2.4.0.tar.gztar zvxf hadoop-2.4.0.tar.gz

設(shè)置環(huán)境變量

export HADOOP_HOME=$HOME/hadoop-2.4.0export HADOOP_MAPRED_HOME=$HOME/hadoop-2.4.0export HADOOP_COMMON_HOME=$HOME/hadoop-2.4.0export HADOOP_HDFS_HOME=$HOME/hadoop-2.4.0export HADOOP_YARN_HOME=$HOME/hadoop-2.4.0export HADOOP_CONF_DIR=$HOME/hadoop-2.4.0/etc/hadoop

為了避免每次都要重復(fù)設(shè)置這些變量,可以將上述語(yǔ)句加入到.bashrc文件中。

創(chuàng)建目錄

接下來(lái)創(chuàng)建的目錄是為hadoop中hdfs相關(guān)的namenode即datanode使用

mkdir -p $HOME/yarn_data/hdfs/namenodemkdir -p $HOME/yarn_data/hdfs/datanode

修改Hadoop配置文件

下列文件需要相應(yīng)的配置

  1. yarn-site.xml
  2. core-site.xml
  3. hdfs-site.xml
  4. mapred-site.xml

切換到hadoop安裝目錄

$cd $HADOOP_HOME

修改etc/hadoop/yarn-site.xml, 在<configuration>和</configuration>之間添加如下內(nèi)容,其它文件添加位置與此一致

<property>   <name>yarn.nodemanager.aux-services</name>   <value>mapreduce_shuffle</value></property><property>   <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>   <value>org.apache.hadoop.mapred.ShuffleHandler</value></property>

etc/hadoop/core-site.xml

<property>   <name>fs.default.name</name>   <value>hdfs://localhost:9000</value> <!--YarnClient會(huì)用到該配置項(xiàng)--></property>

etc/hadoop/hdfs-site.xml

 <property>   <name>dfs.replication</name>   <value>1</value> </property> <property>   <name>dfs.namenode.name.dir</name>   <value>file:/home/hduser/yarn_data/hdfs/namenode</value> <!--節(jié)點(diǎn)格式化中被用到--> </property> <property>   <name>dfs.datanode.data.dir</name>   <value>file:/home/hduser/yarn_data/hdfs/datanode</value> </property>

etc/hadoop/mapred-site.xml

<property>      <name>mapreduce.framework.name</name>      <value>yarn</value></property>

格式化namenode

$ bin/hadoop namenode -format

啟動(dòng)hdfs相關(guān)進(jìn)程

啟動(dòng)namenode

$ sbin/hadoop-daemon.sh start namenode

啟動(dòng)datanode

$sbin/hadoop-daemon.sh start datanode

啟動(dòng)mapreduce framework相關(guān)進(jìn)程

啟動(dòng)Resource Manager

sbin/yarn-daemon.sh start resourcemanager

啟動(dòng)Node Manager

sbin/yarn-daemon.sh start nodemanager

啟動(dòng)Job History Server

sbin/mr-jobhistory-daemon.sh start historyserver

驗(yàn)證部署

$jps18509 Jps17107 NameNode17170 DataNode17252 ResourceManager17309 NodeManager17626 JobHistoryServer

運(yùn)行wordCount

驗(yàn)證一下hadoop搭建成功與否的最好辦法就是在上面跑個(gè)wordcount試試

$mkdir in$cat > in/fileThis is one lineThis is another line

將文件復(fù)制到hdfs中

$bin/hdfs dfs -copyFromLocal in /in

運(yùn)行wordcount

bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.4.0.jar wordcount /in /out

查看運(yùn)行結(jié)果

bin/hdfs dfs -cat /out/*

先歇一會(huì),配置到這里,已經(jīng)一頭汗了,接下來(lái)將spark在yarn上的運(yùn)行,再堅(jiān)持一小會(huì)

在yarn上運(yùn)行SparkPi

下載spark

下載spark for hadoop2的版本

運(yùn)行SparkPi

繼續(xù)以hduser身份運(yùn)行,最主要的一點(diǎn)就是設(shè)置YARN_CONF_DIR或HADOOP_CONF_DIR環(huán)境變量

export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoopSPARK_JAR=./assembly/target/scala-2.10/spark-assembly_2.10-0.9.1-hadoop2.2.0.jar ./bin/spark-class org.apache.spark.deploy.yarn.Client --jar ./examples/target/scala-2.10/spark-examples_2.10-assembly-0.9.1.jar --class org.apache.spark.examples.JavaSparkPi --args yarn-standalone --num-workers 1 --master-memory 512m --worker-memory 512m --worker-cores 1

檢查運(yùn)行結(jié)果

運(yùn)行結(jié)果保存在相關(guān)application的stdout目錄,使用以下指令可以找到

cd $HADOOP_HOMEfind . -name "*stdout"

假設(shè)找到的文件為./logs/userlogs/application_1400479924971_0002/container_1400479924971_0002_01_000001/stdout,使用cat可以看到結(jié)果

cat ./logs/userlogs/application_1400479924971_0002/container_1400479924971_0002_01_000001/stdoutPi is roughly 3.14028
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
大數(shù)據(jù)學(xué)習(xí)之路(持續(xù)更新中...)
大數(shù)據(jù)學(xué)習(xí)路線分享hadoop的知識(shí)總結(jié)
Hadoop_簡(jiǎn)介_01
一文讀懂Hadoop、HBase、Hive、Spark分布式系統(tǒng)架構(gòu)
hadoop2.4.0 偽分布安裝配置
hadoop yarn(0.23) 初體驗(yàn)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服