Alex 的 Hadoop 菜鸟教程: 第3课 Hadoop 安装教程 – 非HA方式 (一台server)

Alex 的 Hadoop 菜鸟教程: 第3课 Hadoop 安装教程 – 非HA方式 (一台server)原帖地址:http://blog.csdn.net/nsrainbow/article/details/36629741接上一个教程:http://blog.csdn.net/nsrainbow/article/details/36629339本教程是在Centos6下使用yum来安装CDH5…

大家好,又见面了,我是你们的朋友全栈君。

原帖地址: http://blog.csdn.net/nsrainbow/article/details/36629741

接上一个教程:http://blog.csdn.net/nsrainbow/article/details/36629339

本教程是在 Centos6 下使用yum来安装 CDH5 版本号的 hadoop 的教程。 假设没有加入yum源的请參考上一个教程:http://blog.csdn.net/nsrainbow/article/details/36629339

Hadoop架构图

Alex 的 Hadoop 菜鸟教程: 第3课 Hadoop 安装教程 - 非HA方式 (一台server)

  1. NameNode、DataNode和Client
    NameNode能够看作是分布式文件系统中的管理者,主要负责管理文件系统的命名空间、集群配置信息和存储块的复制等。

    NameNode会将文件系统的Meta-data存储在内存中,这些信息主要包含了文件信息、每个文件相应的文件块的信息和每个文件块在DataNode的信息等。
    DataNode是文件存储的基本单元,它将Block存储在本地文件系统中,保存了Block的Meta-data,同一时候周期性地将全部存在的Block信息发送给NameNode。

    Client就是须要获取分布式文件系统文件的应用程序。

  2. 文件写入
    Client向NameNode发起文件写入的请求。

    NameNode依据文件大小和文件块配置情况。返回给Client它所管理部分DataNode的信息。
    Client将文件划分为多个Block,依据DataNode的地址信息。按顺序写入到每个DataNode块中。

  3. 文件读取
    Client向NameNode发起文件读取的请求
    NameNode返回文件存储的DataNode的信息。
    Client读取文件信息。

開始安装非HA模式

1. 加入库key

$ sudo rpm --import http://archive.cloudera.com/cdh5/redhat/6/x86_64/cdh/RPM-GPG-KEY-cloudera

2. 安装CDH5

2.1 安装Resource Manager host

$ sudo yum clean all
$ sudo yum install hadoop-yarn-resourcemanager -y

2.2 安装 NameNode host

$ sudo yum clean all
$ sudo yum install hadoop-hdfs-namenode -y

2.3 安装 Secondary NameNode host

$ sudo yum clean all
$ sudo yum install hadoop-hdfs-secondarynamenode -y

2.4 安装 nodemanager , datanode, mapreduce (官方说明是在除了 Resource Manager以外的机子上装这些,可是我们如今就一台机子。所以就在这台机子上装)

$ sudo yum clean all
$ sudo yum install hadoop-yarn-nodemanager hadoop-hdfs-datanode hadoop-mapreduce -y

2.5 安装 hadoop-mapreduce-historyserver hadoop-yarn-proxyserver (官方说是在cluster中挑一台做host,可是我们就一台,就直接在这台上装)

$ sudo yum clean all
$ sudo yum install hadoop-mapreduce-historyserver hadoop-yarn-proxyserver -y

2.6 安装 hadoop-client (用户连接hadoop的client,官方说在client装,我们就直接在这台上装)

$ sudo yum clean all
$ sudo yum install hadoop-client -y

3. 部署CDH

3.1 配置计算机名(默认是localhost)

先看看自己的hostname有没有设置

$ sudo vim /etc/sysconfig/network
HOSTNAME=localhost.localdomain

假设HOSTNAME是 localhost.localdomain的话就改一下

HOSTNAME=myhost.mydomain.com

然后再执行下,保证马上生效

$ sudo hostname myhost.mydomain.com

检查一下是否设置生效

$ sudo uname -a

3.2 改动配置文件

先切换到root用户。免得每行命令之前都加一个sudo,所以下面教程都是用root角度写的

$ sudo su -
$ cd /etc/hadoop/conf
$ vim core-site.xml

在 <configuration>…</configuration> 中添加

<property>
	<name>fs.defaultFS</name>
	<value>hdfs://myhost.mydomain.com:8020</value>
</property>

编辑hdfs-site.xml

$ vim hdfs-site.xml

在 <configuration>…</configuration> 中加入

<property>
 <name>dfs.permissions.superusergroup</name>
 <value>hadoop</value>
</property>

3.3 配置存储目录

在 namenode 机子上配置 hdfs.xml 用来存储name元数据(我们仅仅有一台机,所以既是namenode又是datanode)

$ vim hdfs-site.xml

改动dfs.name.dir 为 dfs.namenode.name.dir(dfs.name.dir已经过时),并改动属性值,一般来说我们的 /data 或者 /home/data 都是挂载大硬盘数据用的,所以把存储目录指向这个路径里面的目录比較较好

<property>
     <name>dfs.namenode.name.dir</name>
     <value>file:///data/hadoop-hdfs/1/dfs/nn</value>
  </property>

在 datanode上配置 hdfs.xml 用来存储实际数据(我们仅仅有一台机,所以既是namenode又是datanode)

$ vim hdfs-site.xml

添加dfs.datanode.data.dir(dfs.data.dir已经过时)配置

<property>
     <name>dfs.datanode.data.dir</name>
     <value>file:///data/hadoop-hdfs/1/dfs/dn,file:///data/hadoop-hdfs/2/dfs/dn</value>
  </property>

建立这些目录

$ mkdir -p /data/hadoop-hdfs/1/dfs/nn
$ mkdir -p /data/hadoop-hdfs/1/dfs/dn
$ mkdir -p /data/hadoop-hdfs/2/dfs/dn

改动目录用户

$ chown -R hdfs:hdfs /data/hadoop-hdfs/1/dfs/nn /data/hadoop-hdfs/1/dfs/dn /data/hadoop-hdfs/2/dfs/dn

改动目录权限

$ chmod 700 /data/hadoop-hdfs/1/dfs/nn

3.4 格式化namenode

$ sudo -u hdfs hdfs namenode -format

3.5 配置 Secondary NameNode

在hdfs-site.xml中加入

<property>
  <name>dfs.namenode.http-address</name>
  <value>0.0.0.0:50070</value>
  <description>
    The address and the base port on which the dfs NameNode Web UI will listen.
  </description>
</property>

3.6 启动hadoop

$ for x in `cd /etc/init.d ; ls hadoop-*` ; do sudo service $x start ; done
Starting Hadoop nodemanager:                               [  OK  ]
starting nodemanager, logging to /var/log/hadoop-yarn/yarn-yarn-nodemanager-xmseapp03.ehealthinsurance.com.out
Starting Hadoop proxyserver:                               [  OK  ]
starting proxyserver, logging to /var/log/hadoop-yarn/yarn-yarn-proxyserver-xmseapp03.ehealthinsurance.com.out
Starting Hadoop resourcemanager:                           [  OK  ]
starting resourcemanager, logging to /var/log/hadoop-yarn/yarn-yarn-resourcemanager-xmseapp03.ehealthinsurance.com.out
Starting Hadoop datanode:                                  [  OK  ]
starting datanode, logging to /var/log/hadoop-hdfs/hadoop-hdfs-datanode-xmseapp03.ehealthinsurance.com.out
Starting Hadoop namenode:                                  [  OK  ]
starting namenode, logging to /var/log/hadoop-hdfs/hadoop-hdfs-namenode-xmseapp03.ehealthinsurance.com.out
Starting Hadoop secondarynamenode:                         [  OK  ]
starting secondarynamenode, logging to /var/log/hadoop-hdfs/hadoop-hdfs-secondarynamenode-xmseapp03.ehealthinsurance.com.out
...

都成功后用jps看下

$jps
17033 NodeManager
16469 DataNode
17235 ResourceManager
17522 JobHistoryServer
16565 NameNode
16680 SecondaryNameNode
17593 Jps

4 client測试

打开你的浏览器输入 http://<hadoop server ip>:50070

假设看到

Hadoop Administration

DFS Health/Status

这种字样就成功进入了hadoop的命令控制台

转载于:https://www.cnblogs.com/mqxnongmin/p/10603965.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133357.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 电容分类和作用_电容的识别

    电容分类和作用_电容的识别硬件基础知识—电容分类智能硬件和物联网产品上,工作电压不高,其常用的电容根据不同的工艺,主要分为陶瓷电容、电解电容和钽电容。↑陶瓷电容的结构图↑电解电容的结构图不管是什么电容,都是两组金属片夹着一层介质。陶瓷电容把金属片交错摆放,电解电容把金属片卷成柱状。↑片状陶瓷电容↑贴片陶瓷电容陶瓷电容,MultilayerCeramicCapacitor(MLCC),陶瓷电容的电介质是陶瓷,所以叫做陶瓷电容。陶瓷电容容值小、电压高、尺寸小、高频性能好、不区分正.

    2022年8月22日
    5
  • IDEA 2021.7.21 激活码【中文破解版】

    (IDEA 2021.7.21 激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月22日
    49
  • linux 修改文件权限命令_linux给权限命令

    linux 修改文件权限命令_linux给权限命令查看文件权限ls-h命令修改文件权限修改方法1:(参数)命令:chomod语法:chomod[参数][augo][+-=][rwx]文件名例子:1.将文件file1.txt增加可读权限chmodugo+rfile1.txt2.将文件file1.txt设为所有人(all)可读chmoda=rfile1.txt3.为ex1.py文件拥有者取消可执行权限chmodu-xex1.py修改方法2:(数字)命令:chmod语法..

    2022年9月12日
    0
  • 手背静脉识别的图像处理算法

    手背静脉识别的图像处理算法手背静脉识别的图像处理算法题目内容及要求手背静脉识别技术作为一种全新的特征识别技术,相比于传统的生物识别技术(如指纹识别)具有许多明显的优势,然而对于该技术的研究尚处于刚刚起步阶段,使用计算机来直接进行静脉识别与身份匹配仍然较为困难,为了方便后续特征识别,提高静脉识别的准确度和优越性,有必要对获取的静脉图像进行一系列处理,得到静脉的骨架结构。题目主要要求为:1.对采集图像进行背景去除,取得…

    2022年5月16日
    43
  • Tomcat学习—Tomcat7 修改/webapps/ROOT发布路径(Linux和windows环境)

    在web开发中经常使用到的一个容器就是Tomcat,大多数人在本地开发使用的是windows 环境,而当项目真正远行,一般就是在Linux服务器上。下面主要讲解Linux服务器上修改Tomcat部署应用程序的发布路径! 现在应用服务器上用的笔记多的还是Tomcat7,就以Tomcat为例!Tomcat7和之前的版本一样,默认发布程序是在$Tomcat/webapp/ROOT 下面,就是当我们启动T

    2022年2月24日
    119
  • vuedevtools使用_怎么下载vue_devtools

    vuedevtools使用_怎么下载vue_devtoolsCSDN首页首页博客程序员学院下载论坛问答代码直播电子书最牛小程序:想要的资源都能搜到?会员中心收藏动态消息15创作中心vue调试工具vue-devtools安装及使用(最新)清虚桂意2020-06-2310:27:29606已收藏4分类专栏:vue版权github克隆vue-devtools官方项目地址gitclone-bv5.1.1https://github.com/vuejs/vue-devtools.git1此处安装v5.1

    2022年10月5日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号