`
superlxw1234
  • 浏览: 551373 次
  • 性别: Icon_minigender_1
  • 来自: 西安
博客专栏
Bd1c0a0c-379a-31a8-a3b1-e6401e2f1523
Hive入门
浏览量:44446
社区版块
存档分类
最新评论

【转】Hadoop0.23.0初探2---HDFS Federation部署

阅读更多

Hadoop的目录文件结构:
.
|-- LICENSE.txt
|-- NOTICE.txt
|-- README.txt
|-- bin
|-- conf
|-- etc
|-- export_hadoop.sh
|-- hadoop-0.23.0-gridmix.jar
|-- hadoop-0.23.0-streaming.jar
|-- hadoop-mapreduce-0.23.0-sources.jar
|-- hadoop-mapreduce-0.23.0.jar
|-- hadoop-mapreduce-examples-0.23.0-sources.jar
|-- hadoop-mapreduce-examples-0.23.0.jar
|-- hadoop-mapreduce-test-0.23.0-sources.jar
|-- hadoop-mapreduce-test-0.23.0.jar
|-- hadoop-mapreduce-tools-0.23.0-sources.jar
|-- hadoop-mapreduce-tools-0.23.0.jar
|-- lib
|-- libexec
|-- logs
|-- modules
|-- sbin
`-- share

与之前版本最大区别是增加了etc、share、libexec目录。
在搭建Hadoop之前,我在baidu上搜索到了一篇博文
http://www.blogjava.net/shenh062326/archive/2011/11/28/363472.html
然后各种碰壁,各种问题。于是再次回归Google,回归Apache-Hadoop的doc文档,http://hadoop.apache.org /common/docs/r0.23.0/hadoop-yarn/hadoop-yarn-site/Federation.html,hadoop 那些大佬们写得都是片段,另外不知道我的版本是不是和它们的不一致还是其它原因,还是遇到很多没有道理的问题。于是,安下心来,一边往源码里打Log,一 遍调整配置文件,最终还是配置成功了。这篇博文将正确的配置过程还原给Hadoop-0.23.0的用户。
1、下载Hadoop-0.23.0
wget http://labs.renren.com/apache-mirror//hadoop/core/hadoop-0.23.0/hadoop-0.23.0.tar.gz
wget http://labs.renren.com/apache-mirror//hadoop/core/hadoop-0.23.0/hadoop-0.23.0-src.tar.gz
(ps:renren网提供的apache镜像还是挺快的,如果链接不行的话,从列表中选一个http://www.apache.org/dyn/closer.cgi/hadoop/core/)
2、解压
tar -xvzf hadoop-0.23.0.tar.gz
3、配置集群的环境
在~/.bashrc文件内添加
#hadoop 0.23 required settings
export HADOOP_DEV_HOME=/home/jiangbing/hadoop-0.23.0 #设置你hadoop的路径,需要修改一下
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=/opt/jiangbing/hdfs23/conf #conf目录也可以按照Hadoop-0.20.*版本的特点设置在${HADOOP_DEV_HOME}/conf文件夹下。
export HDFS_CONF_DIR=/opt/jiangbing/hdfs23/conf #可单独设置路径
export YARN_CONF_DIR=${HADOOP_DEV_HOME}/conf #可单独设置路径
如果home目录是通过NFS挂载共享的,只需在一个节点修改即可,其它节点由于挂载了/home目录,可以读取该内容。
4、安装Java、配置ssh。由于这部分与Hadoop-0.20.*的配置相同,这里不再赘述。
5、配置Hadoop内部的环境
cd ~/hadoop-0.23.0
cp share/hadoop/common/templates/conf/* $HDFS_CONF_DIR
1)修改hadoop-env.sh中的JAVA_HOME路径
由于hadoop-env.sh默认使用了export JAVA_HOME=${JAVA_HOME},如果在配置JAVA环境时,已经添加到bash中,这步可以省略。
实验使用的集群节点:gb17,gb18,gb19,gb20,gb21,gb22,配置gb17,gb18为两个namenode,分别作为ns1和ns2,HDFS配置图如下:


Hadoop0.23.0初探2---HDFS <wbr>Federation部署
图1 HDFS节点配置图


2)${HDFS_CONF_DIR}/core-site.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>fs.trash.interval</name>
    <value>360</value>
    <description>Number of minutes between trash checkpoints.
      If zero, the trash feature is disabled.
    </description>
  </property>
  <property>
     <name>hadoop.tmp.dir</name>
     <value>file:///opt/jiangbing/hadoop23</value>
     <description>A base for other temporary directories.</description>
  </property>
</configuration>

请注意在多个NameNode情况下,core-site.xml不需要设置fs.defaultFS,只需在下面hdfs-site.xml设置对应内容即可。
3)${HDFS_CONF_DIR}/hdfs-site.xml

<configuration>
  <property>
    <name>dfs.namenode.name.dir</name>
    <value>file:///opt/jiangbing/hdfs23</value>
  </property>
  <property>
    <name>dfs.federation.nameservices</name>
    <value>ns1,ns2</value>
  </property>
  <property>
    <name>dfs.namenode.rpc-address.ns1</name>
    <value>gb17:9000</value>
  </property>
  <property>
    <name>dfs.namenode.http-address.ns1</name>
    <value>gb17:23001</value>
  </property>
  <property>
    <name>dfs.namenode.secondary.http-address.ns1</name>
    <value>gb17:23002</value>
  </property>
  <property>
    <name>dfs.namenode.rpc-address.ns2</name>
    <value>gb18:9000</value>
  </property>
  <property>
    <name>dfs.namenode.http-address.ns2</name>
    <value>gb18:23001</value>
  </property>
  <property>
    <name>dfs.namenode.secondary.http-address.ns2</name>
    <value>gb18:23002</value>
  </property>
</configuration>


4)${HDFS_CONF_DIR}/slaves

gb19

gb20

gb21

gb22

ps:在新版本HDFS的配置中,所有节点的配置文件都是统一的,不用单独配置NameNode和DataNode。
下面是一个hdfs新增配置的表格

Daemon Configuration Parameter
Namenode dfs.namenode.rpc-address
dfs.namenode.servicerpc-address
dfs.namenode.http-address
dfs.namenode.https-address

dfs.namenode.keytab.file
dfs.namenode.name.dir
dfs.namenode.edits.dir
dfs.namenode.checkpoint.dir
dfs.namenode.checkpoint.edits.dir
dfs.federation.nameservices
Secondary Namenode dfs.namenode.secondary.http-address dfs.secondary.namenode.keytab.file
BackupNode dfs.namenode.backup.address dfs.secondary.namenode.keytab.file


对照hdfs-site.xml文件可以看出,dfs.federation.nameservices指定不同的Namespace,一个 Namespace对应于一个NameNode,NameNode对应配置选项的后面,增加对应的namespace名字,比 如**.**.**.ns1。
6、启动HDFS Federation
1)执行Format
ssh gb17
${HADOOP_DEV_HOME}/bin/hdfs namenode -format -clusterid klose
ssh gb18
${HADOOP_DEV_HOME}/bin/hdfs namenode -format -clusterid klose
2)启动sbin/start-dfs.sh
ssh到各个节点上,使用jps命令查看对应的NameNode或者DataNode Daemon是否启动。
7、查看ui界面
Hadoop0.23.0初探2---HDFS <wbr>Federation部署

分享到:
评论

相关推荐

    hadoop最新版本3.1.1全量jar包

    hadoop-auth-3.1.1.jar hadoop-hdfs-3.1.1.jar hadoop-mapreduce-client-hs-3.1.1.jar hadoop-yarn-client-3.1.1.jar hadoop-client-api-3.1.1.jar hadoop-hdfs-client-3.1.1.jar hadoop-mapreduce-client-jobclient...

    Hadoop 3.x(HDFS)----【HDFS 的 API 操作】---- 代码

    Hadoop 3.x(HDFS)----【HDFS 的 API 操作】---- 代码 Hadoop 3.x(HDFS)----【HDFS 的 API 操作】---- 代码 Hadoop 3.x(HDFS)----【HDFS 的 API 操作】---- 代码 Hadoop 3.x(HDFS)----【HDFS 的 API 操作】--...

    hadoop-hdfs-client-2.9.1-API文档-中英对照版.zip

    赠送jar包:hadoop-hdfs-client-2.9.1.jar; 赠送原API文档:hadoop-hdfs-client-2.9.1-javadoc.jar; 赠送源代码:hadoop-hdfs-client-2.9.1-sources.jar; 赠送Maven依赖信息文件:hadoop-hdfs-client-2.9.1.pom;...

    hadoop-0.23.0-eclipse-plugin

    hadoop-0.23.0 eclipse-plugin

    hadoop-hdfs-client-2.9.1-API文档-中文版.zip

    赠送jar包:hadoop-hdfs-client-2.9.1.jar 赠送原API文档:hadoop-hdfs-client-2.9.1-javadoc.jar 赠送源代码:hadoop-hdfs-client-2.9.1-sources.jar 包含翻译后的API文档:hadoop-hdfs-client-2.9.1-javadoc-...

    hadoop-2.6.0-bin-master-PC端远程调用HDFS

    此外,Hadoop的配置文件(如`core-site.xml`和`hdfs-site.xml`)位于解压后的`hadoop-2.6.0/conf`目录下,你需要根据实际的集群配置来修改这些文件,以设置HDFS的地址、端口等参数。确保这些配置正确无误,才能成功...

    flink-shaded-hadoop-2-uber-2.7.5-10.0.jar.zip

    这个压缩包中的 `flink-shaded-hadoop-2-uber-2.7.5-10.0.jar` 文件,是 Flink 针对 Hadoop 2.7.5 版本的“Uber JAR”,它是将多个依赖库打包在一起的单一 JAR 文件,旨在简化部署和运行流程。 首先,我们来理解...

    hadoop插件apache-hadoop-3.1.0-winutils-master.zip

    标题中的"apache-hadoop-3.1.0-winutils-master.zip"是一个针对Windows用户的Hadoop工具包,它包含了运行Hadoop所需的特定于Windows的工具和配置。`winutils.exe`是这个工具包的关键组件,它是Hadoop在Windows上的一...

    hadoop-hdfs-2.7.3-API文档-中英对照版.zip

    赠送jar包:hadoop-hdfs-2.7.3.jar; 赠送原API文档:hadoop-hdfs-2.7.3-javadoc.jar; 赠送源代码:hadoop-hdfs-2.7.3-sources.jar; 赠送Maven依赖信息文件:hadoop-hdfs-2.7.3.pom; 包含翻译后的API文档:hadoop...

    Hadoop02---HDFS基础(HDFS原理 java客户端).md

    自己的笔记,仅供参考,包含HDFS的启动停止,HDFS基本原理(上传文件、连接校验,下载文件,数据存储位置,通信机制,namenode和DataNode职责,元数据工作机制),java端操作HDFS的基本方法

    hadoop2.6-common-bin.zip

    2. `winutils.exe`:如前所述,这是Windows上的一个关键工具,用于执行Hadoop相关的系统任务,如设置HDFS的权限和管理本地文件系统。 3. `hadoop.exp`:这可能是一个导出文件,包含了Hadoop库对外公开的函数和符号...

    hadoop-hdfs-2.5.1-API文档-中文版.zip

    赠送jar包:hadoop-hdfs-2.5.1.jar; 赠送原API文档:hadoop-hdfs-2.5.1-javadoc.jar; 赠送源代码:hadoop-hdfs-2.5.1-sources.jar; 赠送Maven依赖信息文件:hadoop-hdfs-2.5.1.pom; 包含翻译后的API文档:hadoop...

    hadoop-common-2.6.0-bin-master.zip

    `hadoop-common-2.6.0-bin-master.zip` 是一个针对Hadoop 2.6.0版本的压缩包,特别适用于在Windows环境下进行本地开发和测试。这个版本的Hadoop包含了对Windows系统的优化,比如提供了`winutils.exe`,这是在Windows...

    flink-shaded-hadoop-2-uber-2.7.5-10.0.jar

    flink整合Hadoop,注意:以 Yarn 模式部署 Flink 任务时,要求 Flink 是有 Hadoop 支持的版本,Hadoop 环境需要保证版本在 2.2 以上,并且集群中安装有 HDFS 服务。

    Linux运维-运维课程MP4频-06-大数据之Hadoop部署-22hadoop伪分布式hdfs文件系统验证.mp4

    Linux运维-运维课程MP4频-06-大数据之Hadoop部署-22hadoop伪分布式hdfs文件系统验

    hadoop-hdfs-2.6.5-API文档-中文版.zip

    赠送jar包:hadoop-hdfs-2.6.5.jar; 赠送原API文档:hadoop-hdfs-2.6.5-javadoc.jar; 赠送源代码:hadoop-hdfs-2.6.5-sources.jar; 赠送Maven依赖信息文件:hadoop-hdfs-2.6.5.pom; 包含翻译后的API文档:hadoop...

    hadoop-eclipse-plugin-3.1.1.tar.gz

    Hadoop-Eclipse-Plugin-3.1.1是一款专为Eclipse集成开发环境设计的插件,用于方便地在Hadoop分布式文件系统(HDFS)上进行开发和调试MapReduce程序。这款插件是Hadoop生态系统的组成部分,它使得Java开发者能够更加...

    ranger-2.0.0-SNAPSHOT-hdfs-plugin.tar.gz

    安装Ranger-HDFS插件涉及以下几个步骤:首先,需要将"ranger-2.0.0-SNAPSHOT-hdfs-plugin"解压并按照官方文档的指导部署到HDFS集群中的各个NameNode节点;接着,配置Ranger Admin服务,导入HDFS插件,并为HDFS创建...

    hadoop 2.7.1 hdfs-over-ftp

    具体来说,需要修改的依赖项包括hadoop-common和hadoop-hdfs模块。 在修改配置之后,下一步是进行用户设置。需要指定FTP服务器的用户名、密码、用户目录、是否启用、是否具有写权限等信息。文档提供了一个MD5加密的...

    hadoop-3.3.1 windows + apache-hadoop-3.1.0-winutils-master.zip

    2. **配置环境变量**:打开系统环境变量设置,添加新的系统变量`HADOOP_HOME`,指向你的Hadoop安装目录(如`C:\Hadoop\hadoop-3.3.1`)。同时,将`PATH`变量中添加`%HADOOP_HOME%\bin`和`%HADOOP_HOME%\sbin`,以便...

Global site tag (gtag.js) - Google Analytics