`
x-rip
  • 浏览: 106925 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

YARN/MRv2环境搭建

 
阅读更多

搭建环境:

1)hadoop版本:0.23.1

2)Linux版本:Linux version 2.6.18-164.el5

3)操作系统:Red Hat Enterprise Linux Server release 5.4

拓扑结构:

总共四台机器(A、B、C、D)

namenode:A、B

datanode:A、B、C、D

ResourceManager:B

NodeManager:A、B、C、D

步骤:

1、下载hadoop0.23.1源代码和JAR包

wget http://labs.renren.com/apache-mirror//hadoop/core/hadoop-0.23.1/hadoop-0.23.1-src.tar.gz

wget http://labs.renren.com/apache-mirror//hadoop/core/hadoop-0.23.1/hadoop-0.23.1.tar.gz

2、安装

tar -xvzf hadoop-0.23.0.tar.gz

3、安装相关工具

1)java



2)protobuf

wget http://protobuf.googlecode.com/files/protobuf-2.4.1.tar.gz
tar -zxvf protobuf-2.4.1.tar.gz
cd protobuf-2.4.1
./configure
make
sudo make install

3)ssh

 4、配置运行环境

vim ~/.bashrc
export HADOOP_DEV_HOME=/home/m2/hadoop-0.23.1
export HADOOP_MAPRED_HOME=${HADOOP_DEV_HOME}
export HADOOP_COMMON_HOME=${HADOOP_DEV_HOME}
export HADOOP_HDFS_HOME=${HADOOP_DEV_HOME}
export YARN_HOME=${HADOOP_DEV_HOME}
export HADOOP_CONF_DIR=${HADOOP_DEV_HOME}/conf
export HDFS_CONF_DIR=${HADOOP_DEV_HOME}/conf
export YARN_CONF_DIR=${HADOOP_DEV_HOME}/conf
export HADOOP_LOG_DIR=${HADOOP_DEV_HOME}/logs

 

 5、创建Hadoop配置文件

cd $HADOOP_DEV_HOME
mkdir conf
vim core-site.xml

core-site.xml

 

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
     <name>hadoop.tmp.dir</name>
     <value>/disk1/hadoop-0.23/tmp/</value>
     <description>A base for other temporary directories</description>
  </property>
 <property>
    <name>fs.defaultFS</name>
    <value>hdfs://A:9000</value>
    <description>The name of the default file system.  Either the
      literal string "local" or a host:port for NDFS.
    </description>
    <final>true</final>
 </property>
</configuration>
   

 hdfs-site.xml

 

<configuration>
  <property>
    <name>dfs.namenode.name.dir</name>
    <value>/disk12/hadoop-0.23/namenode</value>
  </property>
  <property>
    <name>dfs.federation.nameservices</name>
    <value>ns1,ns2</value>
  </property>
  <property>
    <name>dfs.namenode.rpc-address.ns1</name>
    <value>A:9000</value>
  </property>
  <property>
    <name>dfs.namenode.http-address.ns1</name>
    <value>A:23001</value>
  </property>
  <property>
    <name>dfs.namenode.secondary.http-address.ns1</name>
    <value>A:23002</value>
  </property>
  <property>
    <name>dfs.namenode.rpc-address.ns2</name>
    <value>B:9000</value>
  </property>
  <property>
    <name>dfs.namenode.http-address.ns2</name>
    <value>B:23001</value>
  </property>
  <property>
    <name>dfs.namenode.secondary.http-address.ns2</name>
    <value>B:23002</value>
  </property>
</configuration>
   

 

 mapred-site.xml

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

 

 yarn-site.xml

<configuration>
  <property>
    <description>The address of the applications manager interface in the RM.</description>
    <name>yarn.resourcemanager.address</name>
      <value>C:18040</value>
  </property>
  <property>
    <description>The address of the scheduler interface.</description>
    <name>yarn.resourcemanager.scheduler.address</name>
      <value>C:18030</value>
  </property>
  <property>
    <description>The address of the RM web application.</description>
    <name>yarn.resourcemanager.webapp.address</name>
      <value>dw95.kgb.sqa.cm4:18088</value>
  </property>
  <property>
    <name>yarn.resourcemanager.resource-tracker.address</name>
    <value>C:18025</value>
  </property>
  <property>
    <description>The address of the RM admin interface.</description>
    <name>yarn.resourcemanager.admin.address</name>
       <value>C:18141</value>
  </property>
 <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce.shuffle</value>
</property>
</configuration>

slaves

A
B
C
D

 

hadoop-env.sh

cp $HADOOP_DEV_HOME/share/hadoop/common/templates/conf/hadoop-env.sh $HADOOP_DEV_HOME/conf/
vim hadoop-env.sh
export JAVA_HOME=

 

6、配置其他服务器

pscp slaves /home/m2/ -r /home/m2/
 

7、启动NameNode

ssh A
${HADOOP_DEV_HOME}/bin/hdfs namenode -format -clusterid test
ssh B
${HADOOP_DEV_HOME}/bin/hdfs namenode -format -clusterid test
${HADOOP_DEV_HOME}/sbin/start-dfs.sh

 8、启动ResourceManager

$HADOOP_DEV_HOME/sbin/start-yarn.sh

 

常见问题:

1)配置挂载多个本地目录,用逗号隔开

 hdfs.xml

<property>
 <name>dfs.datanode.data.dir</name>
 <value>/disk1/hadoop-0.23/data,/disk2/hadoop-0.23/data</value>
</property>

2)运行启动命令为出错,但实际上没有启动

 可能为端口被占用

netstat -anp 端口号
#-n 某些常用端口号显示为名称,该参数强制显示实际端口号
#-p 显示占用该端口的进程
px -aux | grep 进程号
kill -9 进程号

3)运行DistributeShell出错

出错原因为启动ApplicationMaster时未设置正确的CLASSPATH

修改办法:修改client.java文件或者打https://issues.apache.org/jira/browse/MAPREDUCE-3869这个patch

-    String classPathEnv = "${CLASSPATH}"
-        + ":./*"
-        + ":$HADOOP_CONF_DIR"
-        + ":$HADOOP_COMMON_HOME/share/hadoop/common/*"
-        + ":$HADOOP_COMMON_HOME/share/hadoop/common/lib/*"
-        + ":$HADOOP_HDFS_HOME/share/hadoop/hdfs/*"
-        + ":$HADOOP_HDFS_HOME/share/hadoop/hdfs/lib/*"
-        + ":$YARN_HOME/modules/*"
-        + ":$YARN_HOME/lib/*"
-        + ":./log4j.properties:";
+    StringBuilder classPathEnv = new StringBuilder("${CLASSPATH}:./*");
+    for (String c : conf.get(YarnConfiguration.YARN_APPLICATION_CLASSPATH)
+        .split(",")) {
+      classPathEnv.append(':');
+      classPathEnv.append(c.trim());
+    }
+    classPathEnv.append(":./log4j.properties");
 
-    // add the runtime classpath needed for tests to work 
+    // add the runtime classpath needed for tests to work
     String testRuntimeClassPath = Client.getTestRuntimeClasspath();
-    classPathEnv += ":" + testRuntimeClassPath; 
+    classPathEnv.append(':');
+    classPathEnv.append(testRuntimeClassPath);
 
-    env.put("CLASSPATH", classPathEnv);
+    env.put("CLASSPATH", classPathEnv.toString());
   

 

  

 

分享到:
评论

相关推荐

    YARN(MRv2)搭建

    YARN(MRv2)搭建

    yarn-v0.23.2.tar.gz

    yarn-v0.23.2.tar.gz 在安装ambari,源码编译的时候下载的文件有问题 手动下载 地址 https://github.com/yarnpkg/yarn/releases/download/v0.23.2/yarn-v0.23.2.tar.gz

    【自动化脚本】自动启动hdfs/yarn/spark HA集群

    脚本使用:vim编辑脚本,按照自己的配置修改主机号,我的是hadoop1、2是NN;hadoop2、3是Spark Master;hadoop3还是RM;hadoop4、5、6是DN、NM、Spark Worker。编辑完成后在满足“前提”的任意一台主机运行均可。 ...

    Flink on Yarn_K8S原理剖析及实践.pdf

    阿里大牛在技术分享中,向用户展示了如何在YARN/K8S环境中部署和管理Flink集群,以及如何通过集成来提高作业的执行效率和资源利用率。此外,阿里云Flink官方提供的在线教程和文档,也是学习和实践Flink on YARN/K8S...

    spark yarn模式的搭建.docx

    搭建 Spark On Yarn 集群主要涉及三个组件的安装和配置:Zookeeper、Hadoop 和 Spark。下面将详细介绍这三个阶段的搭建过程。 一、Zookeeper 集群搭建 Zookeeper 是一个分布式的、开放源码的分布式应用程序协调服务...

    Hadoop2.X/YARN环境搭建--CentOS7.0系统配置

    【Hadoop2.X/YARN环境搭建--CentOS7.0系统配置】 在大数据处理领域,Hadoop是一个不可或缺的工具,它的核心组件包括分布式文件系统HDFS和资源管理系统YARN。Hadoop2.X引入了YARN(Yet Another Resource Negotiator...

    yarn-v1.22.5.tar.gz

    2. **锁定文件**:Yarn 使用 `yarn.lock` 文件来确保所有开发者的环境中安装的包版本一致,解决了 npm 的版本漂移问题,提高了项目的可预测性和可重复性。 3. **并行下载**:Yarn 能够并行下载依赖包,显著提升了...

    hadoop-2.x的环境搭建

    本文将详细阐述如何搭建Hadoop 2.x的环境,这包括单节点模式、伪分布式模式以及完全分布式模式的安装与配置,同时也涵盖了Hadoop生态系统中其他重要组件的安装。 一、Hadoop简介 Hadoop是基于Java开发的,它由...

    Hadoop2.X/YARN环境搭建--CentOS7.0 JDK配置

    在搭建Hadoop2.X/YARN环境的过程中,CentOS7.0操作系统上的JDK配置是至关重要的一步,因为Hadoop是用Java编写的,它需要一个兼容的JDK环境才能正常运行。这里我们详细讲解如何在CentOS7.0上配置JDK。 首先,由于...

    yarn 前端打包工具指定配置文件

    1. **通过环境变量**:在执行 `Yarn` 命令时,我们可以传递环境变量来指示打包工具使用特定的配置文件。例如,如果我们有两个 `Webpack` 配置文件 `webpack.common.js` 和 `webpack.dev.js`,可以使用以下命令来指定...

    Sparkonyarn集群搭建详细过程.pdf

    Spark on YARN 集群搭建详细过程 _title_:Spark on YARN 集群搭建详细过程 _description_:本文详细介绍了 Spark on YARN 集群搭建的过程,包括配置主机 hosts 文件、免密码登录、安装 Java、安装 Scala 等步骤。...

    使用yarn create umi安装Ant Design Pro时报错TypeError: self.env.emit is not a function

    TypeError: self.env.emit is not a function at /usr/local/share/.config/yarn/global/node_modules/yeoman-generator/lib/index.js:653:22 at processTicksAndRejections (internal/process/task_queues.js:97:5)...

    Hadoop集群环境搭建

    Hadoop集群环境搭建 Hadoop集群环境搭建是大数据处理的核心组件之一,本文将详细介绍Hadoop集群环境的搭建过程,包括集群规划、前置条件、免密登录、集群搭建、提交服务到集群等几个方面。 集群规划 在搭建Hadoop...

    Spark实验:On Yarn模式安装部署(带答案)1

    2. **配置环境变量**:在master节点中,我们需要更新`.bash_profile`文件,添加Hadoop、HDFS和YARN的配置文件路径。这样,每次启动shell时,系统都能正确识别这些组件的位置。 3. **配置yarn-site.xml**:为了防止...

    metabase环境搭建.doc

    因此,确保本地已经安装了Node.js和npm或yarn是搭建前端环境的前提。 对于后端,Metabase的开发语言是Clojure,一个基于Lisp的现代函数式编程语言。开发框架包括Ring(一个HTTP服务器和中间件库),Compojure(路由...

    Hadoop2.6集群环境搭建(HDFS HA+YARN)

    在搭建Hadoop 2.6集群环境时,我们需要关注几个关键组件:HDFS(Hadoop Distributed File System)的高可用性(HA)以及YARN(Yet Another Resource Negotiator)。这个过程涉及多台虚拟机的配置,包括安装操作系统...

    Spark on Yarn集群搭建手册

    Spark on Yan集群搭建的详细过程,减少集群搭建的时间

    linux环境搭建

    ### Linux环境搭建详解 #### 一、环境准备与基础配置 **Linux环境搭建**主要涉及在虚拟机中安装和配置Linux系统(本例为Ubuntu),并在此基础上安装一系列开发工具和软件,如Java、Hadoop、MySQL和Spark等。本文将...

    yarn-workspace-plugin-since

    【yarn-workspace-plugin-since】是一个专门为Yarn工作区设计的插件,它扩展了Yarn的工作区功能,增加了自定义的版本控制策略。在深入探讨这个插件之前,我们首先需要理解Yarn工作区的基本概念。 Yarn工作区是Yarn...

Global site tag (gtag.js) - Google Analytics