首页 > 编程知识 正文

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

时间:2023-05-04 20:37:27 阅读:28736 作者:1134

帖子源地址: http://blog.csdn.net/ns rainbow/article/details/36629741

上一个教程: http://blog.csdn.net/ns rainbow/article/details/36629339

本教程是在Centos6上使用yum安装CDH5版本hadoop的教程。 如果尚未添加yum源代码,请参见上一个教程: http://blog.csdn.net/ns rainbow/article/details/36629339

Hadoop模式映射

名称、数据节点、客户端

NameNode可以是分布式文件系统的管理员,主要管理文件系统的名称空间、群集配置信息、存储块复制等。 NameNode将文件系统的元数据保存在内存中。 这些信息主要包括文件信息、与每个文件对应的文件块信息以及每个文件块在DataNode中的信息等。

DataNode是文件存储的基本单元,它将Block存储在本地文件系统中,存储Block元数据,并将同时存在的所有Block信息周期性地发送到NameNode。

客户端是需要获取分布式文件系统文件的APP应用程序。 文件写入

客户端向NameNode发起文件写入请求。

NameNode根据文件大小和块配置返回客户端管理的DataNode的部分信息。

客户端将文件拆分为多个块,并根据DataNode的地址信息依次写入每个DataNode块。 读取文件

客户端向NameNode发出读取文件的请求

NameNode返回文件存储的DataNode的信息。

客户端读取文件信息。 开始安装非HA模式

1 .库key $ sudo rpm-- import http://archive.cloud era.com/CD H5/red hat/6/x86 _ 64/CDH/rpm-gpg-key-cloud

2 .安装CD H5 2.1安装resourcemanagerhost $ sudoyumcleanall $ sudoyuminstallhadoop-yarn-resource manager-y

2.2安装NameNode host $ sudoyumcleanall $ sudoyuminstallhadoop-HDFS-NameNode-y

2.3安装secondarynamenodehost $ sudoyumcleanall $ sudoyuminstallhadoop-HDFS-secondary NameNode-y

2.4安装节点管理器、datanode和mapreduce ()在公式说明中,我们在资源管理器以外的计算机上安装这些,但我们现在在一台计算机上。 所以给这台机器$ sudoyumcleanall $ sudoyuminstallhadoop-yarn-nodemanagerhadoop-HDFS-datanodehadoop-MapReduce-y

2.5 Hadoop-MapReduce-historyserverhadoop-yarn-proxy server (官方称从集群中选择一台制作主机,我们是一台,直接安装在这台上

2.6安装Hadoop-client () (因为官方表示用户将连接到Hadoop客户端并安装在客户端上) ) sudoyumcleanall $ sudoop

引入CDH 3.1设置计算机名称。 (默认值为localhost ) )首先确认是否设置了自己的hostname

$ sudo vim/etc/sys config/network hostname=localhost.local domain

如果HOSTNAME是localhost.localdomain,则进行更改

HOSTNAME=myhost.mydomain.com

然后开车,保证立即生效

$ sudohostnamemyhost.my domain.com

请检查设定是否有效

$ sudo uname -a

3.2在更改配置文件之前切换到超级用户,以避免在每个命令之前添加sudo。 因此,以下教程都是以根角度编写的

$ 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 ; doneStarting Hadoop nodemanager: [ OK ]starting nodemanager, logging to /var/log/hadoop-yarn/yarn-yarn-nodemanager-xmseapp03.ehealthinsurance.com.outStarting Hadoop proxyserver: [ OK ]starting proxyserver, logging to /var/log/hadoop-yarn/yarn-yarn-proxyserver-xmseapp03.ehealthinsurance.com.outStarting Hadoop resourcemanager: [ OK ]starting resourcemanager, logging to /var/log/hadoop-yarn/yarn-yarn-resourcemanager-xmseapp03.ehealthinsurance.com.outStarting Hadoop datanode: [ OK ]starting datanode, logging to /var/log/hadoop-hdfs/hadoop-hdfs-datanode-xmseapp03.ehealthinsurance.com.outStarting Hadoop namenode: [ OK ]starting namenode, logging to /var/log/hadoop-hdfs/hadoop-hdfs-namenode-xmseapp03.ehealthinsurance.com.outStarting Hadoop secondarynamenode: [ OK ]starting secondarynamenode, logging to /var/log/hadoop-hdfs/hadoop-hdfs-secondarynamenode-xmseapp03.ehealthinsurance.com.out...



都成功后用jps看下
$jps17033 NodeManager16469 DataNode17235 ResourceManager17522 JobHistoryServer16565 NameNode16680 SecondaryNameNode17593 Jps


4 客户端测试 打开你的浏览器输入 http://<hadoop server ip>:50070
如果看到
Hadoop Administration
DFS Health/Status
这样的字样就成功进入了hadoop的命令控制台

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。