W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
您必須通過遵循 hello-samza 教程,在單節(jié)點(diǎn)YARN中成功運(yùn)行 hello-samza 項(xiàng)目?,F(xiàn)在是時(shí)候在“真正的” YARN 網(wǎng)格(有多個(gè)節(jié)點(diǎn))中運(yùn)行 Samza 的工作。
如果您已經(jīng)有多節(jié)點(diǎn) YARN 集群(如 CDH5 集群),則可以跳過此設(shè)置部分。
1.將YARN 2.6下載到 / tmp 并解壓縮。
cd /tmp
tar -xvf hadoop-2.6.1.tar.gz
cd hadoop-2.6.1
2.設(shè)置環(huán)境變量。
export HADOOP_YARN_HOME=$(pwd)
mkdir conf
export HADOOP_CONF_DIR=$HADOOP_YARN_HOME/conf
3.配置 YARN 設(shè)置文件。
cp ./etc/hadoop/yarn-site.xml conf
vi conf/yarn-site.xml
將以下屬性添加到 yarn-site.xml 中:
<property>
<name>yarn.resourcemanager.hostname</name>
<!-- hostname that is accessible from all NMs -->
<value>yourHostname</value>
</property>
下載并添加 capacity-schedule.xml。
curl http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-tests/src/test/resources/capacity-scheduler.xml?view=co > conf/capacity-scheduler.xml
這些步驟的目標(biāo)是配置 YARN 來讀取 http 文件系統(tǒng),因?yàn)槲覀儗⑹褂?Http 服務(wù)器部署 Samza 作業(yè)包。如果要使用 HDFS 部署 Samza 作業(yè)包,則可以跳過步驟4?6,然后按照 從HDFS部署Samza作業(yè)
4.下載 Scala 包并解壓縮。
cd /tmp
curl http://www.scala-lang.org/files/archive/scala-2.11.8.tgz > scala-2.11.8.tgz
tar -xvf scala-2.11.8.tgz
5.添加 Scala,其日志 jar 和 Samza 的 HttpFileSystem 實(shí)現(xiàn)。
cp /tmp/scala-2.11.8/lib/scala-compiler.jar $HADOOP_YARN_HOME/share/hadoop/hdfs/lib
cp /tmp/scala-2.11.8/lib/scala-library.jar $HADOOP_YARN_HOME/share/hadoop/hdfs/lib
curl -L http://search.maven.org/remotecontent?filepath=org/clapper/grizzled-slf4j_2.10/1.0.1/grizzled-slf4j_2.10-1.0.1.jar > $HADOOP_YARN_HOME/share/hadoop/hdfs/lib/grizzled-slf4j_2.10-1.0.1.jar
curl -L http://search.maven.org/remotecontent?filepath=org/apache/samza/samza-yarn_2.11/0.12.0/samza-yarn_2.11-0.12.0.jar > $HADOOP_YARN_HOME/share/hadoop/hdfs/lib/samza-yarn_2.11-0.12.0.jar
curl -L http://search.maven.org/remotecontent?filepath=org/apache/samza/samza-core_2.11/0.12.0/samza-core_2.11-0.12.0.jar > $HADOOP_YARN_HOME/share/hadoop/hdfs/lib/samza-core_2.11-0.12.0.jar
6.在 core-site.xml 中添加 http 配置(創(chuàng)建 core-site.xml 文件并添加內(nèi)容)。
vi $HADOOP_YARN_HOME/conf/core-site.xml
添加以下代碼:
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>fs.http.impl</name>
<value>org.apache.samza.util.hadoop.HttpFileSystem</value>
</property>
</configuration>
7.基本上,您將主機(jī)中的 hadoop 文件復(fù)制到從機(jī)。(172.21.100.35,在我的情況下):
scp -r . 172.21.100.35:/tmp/hadoop-2.6.1
echo 172.21.100.35 > conf/slaves
sbin/start-yarn.sh
8.通過訪問 http:// yourHostname:8088 / cluster / nodes 驗(yàn)證您的節(jié)點(diǎn)是否已啟動(dòng)。
以下步驟與您在 hello-samza中看到 的完全相同。如果您已經(jīng)這樣做,您可能會(huì)跳過它們。
1.下載Samza并將其發(fā)布到Maven本地存儲(chǔ)庫。
cd /tmp
git clone http://git-wip-us.apache.org/repos/asf/samza.git
cd samza
./gradlew clean publishToMavenLocal
cd ..
2.下載 hello-samza 項(xiàng)目并更改作業(yè)屬性文件。
git clone git://github.com/linkedin/hello-samza.git
cd hello-samza
vi src/main/config/wikipedia-feed.properties
將 yarn.package.path 屬性更改為:
yarn.package.path=http://yourHostname:8000/target/hello-samza-0.12.0-dist.tar.gz
編譯 hello-samza。
mvn clean package
mkdir -p deploy/samza
tar -xvf ./target/hello-samza-0.12.0-dist.tar.gz -C deploy/samza
4.將 Samza 工作包部署到 Http 服務(wù)器..
打開一個(gè)新的終端,并運(yùn)行:
cd /tmp/hello-samza && python -m SimpleHTTPServer
返回到原始終端(不是運(yùn)行HTTP服務(wù)器的終端):
deploy/samza/bin/run-job.sh --config-factory=org.apache.samza.config.factories.PropertiesConfigFactory --config-path=file://$PWD/deploy/samza/config/wikipedia-feed.properties
轉(zhuǎn)到 http:// yourHostname:8088,找到維基百科的工作。單擊 ApplicationMaster 鏈接以查看它正在運(yùn)行。
恭喜!你現(xiàn)在在一個(gè)“真正的”YARN網(wǎng)格中運(yùn)行 Samza 的工作!
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: