转自:http://blog.csdn.net/huyuxiang999/article/details/17691405

一、实验环境 :

1、硬件:3台DELL服务器,CPU:2.27GHz*16,内存:16GB,一台为master,另外2台为slave。

2、系统:均为CentOS6.3

3、Hadoop版本:CDH4.5,选用的mapreduce版本不是yarn,而是mapreduce1,整个集群在cloudera manager的监控下,配置时也是通过manager来配置(通过更改配置文件是一样的道理)。

二、背景:

随着数据量的增长,实验室的hdfs存储不够,故新买了2*2TB的硬盘,加装在2台datanode服务器上。hadoop不需要做raid(hdfs有其他机器保证数据冗余),因此将硬盘直接插在服务器上,在BIOS中找到新的硬盘即可。

三、硬盘分区、格式化:

每个硬盘分5个区,其中三个为主分区,另外两个为逻辑分区。

1、查看硬盘挂载情况

输入命令fdisk -l可以查看系统中有几块硬盘。一般第一块硬盘为/dev/sda,第二块为/dev/sdb,以此类推。如果没有找到加装的那块硬盘,说明系统没有识别,需重启服务器,进入BIOS设置。

2、硬盘分区

输入命令fdisk /dev/sdb(因为这里是第二块硬盘,所以输入的是/dev/sdb,这个需要根据情况)

这里可以输入m看一下具体有哪些参数。

输入p,可以显示本硬盘分区情况,由于是新硬盘,因此没有分区信息。

下面创建第一个主分区。

输入n创建分区,然后在接下来的提示中输入p,代表创建主分区,再输入1,表示创建第一个主分区(一共可以创建4个主分区),接下来输入起始柱面,一般就选默认,然后输入结束柱面,此处也可输入大小,如+400G,表示这个分区的大小为400G,这样,第一个主分区就创建好了。

然后按上述步骤创建第2,第3个主分区,均为400G。

接下来创建2个逻辑分区。

输入n,然后在接下来的提示中输入e,表示创建扩展分区,输入起始柱面,一般为默认,然后输入结束柱面,同样为默认,表示此扩展分区使用剩下的所有空间。这样,一个扩展分区就做好了,然后我们要在这个扩展分区上创建两个逻辑分区,创建的方法和创建主分区很相似,同样先输入n,然后接下来的步骤相信读者一定会做了。

最后所有分区创建完之后,记得输入w保存分区,否则等于没有做。

3、格式化分区

输入命令mkfs -t ext4 /dev/sdb1,表示把分区/dev/sdb1格式化成ext4文件系统,同样的方法格式化其他分区。

4、mount分区到目录

可以选择把某一分区mount到已有目录,也可以mount到新建目录。注意如果mount到已有目录,要先把该目录下的文件备份。本文是新建目录的:mkdir -p /hd/sdb1,然后mount /dev/sdb1 /hd/sdb1,同样mount其他分区。

5、修改/etc/fstab

如果不修改,则每次开机时都要手动做第4步,比较麻烦。打开fstab文件,按照已有的条目添加5个新建分区,每一个条目的最后两个数据均为0 0

四、hdfs扩容

我把上述5个分区的容量全部加到hdfs中。首先在每一个分区的挂载目录中新建子目录/dfs/dn,如mkdir -p /hd/sdb1/dfs/dn,然后修改dn目录的权限:

chown -R hdfs:hadoop /hd/sdb1/dfs/dn

这样hdfs才能使用该目录(每一个分区都要新建/dfs/dn)。

打开cloudera manager,找到“服务”-》“hdfs”

选择“配置”-》“查看和编辑”,然后在左边找到datanode(默认),右边的第一个属性中,原来只有一个条目(我的是/dfs/dn),为了使hdfs使用新的硬盘,因此要添加我们创建的分区,后面的5条都是我加的目录。

然后点开datanode(默认)

找到“高级”,在右边的datanode卷选择策略中,选择“可用空间”,这样,后面的两个属性(“10G字节”和“0.75”)就会发挥作用,用于平衡各个卷中空间使用。

保存以上配置,然后重启hdfs,即可将hdfs扩容。

【转】Hadoop集群添加磁盘步骤的更多相关文章

  1. Hadoop集群datanode磁盘不均衡的解决方案

    一.引言: Hadoop的HDFS集群非常容易出现机器与机器之间磁盘利用率不平衡的情况,比如集群中添加新的数据节点,节点与节点之间磁盘大小不一样等等.当hdfs出现不平衡状况的时候,将引发很多问题,比 ...

  2. Hadoop集群datanode磁盘不均衡的解决方案【转】

    一.引言: Hadoop的HDFS集群非常容易出现机器与机器之间磁盘利用率不平衡的情况,比如集群中添加新的数据节点,节点与节点之间磁盘大小不一样等等.当hdfs出现不平衡状况的时候,将引发很多问题,比 ...

  3. 大数据实操3 - hadoop集群添加新节点

    hadoop集群支持动态扩展,不需要停止原有集群节点就可以实现新节点的加入. 我是使用docker搭建的进群环境,制作了镜像文件,这里以我的工作基础为例子介绍集群中添加集群的方法 一.制作一个新节点 ...

  4. hadoop集群添加新节点

    0.说明 Hadoop集群已经运行正常,现在新买了一些机子,要加入到集群里面增加新的节点.以下就是增加的过程. 1.配置运行环境 安装与master和其他slave相同的java环境,jdk版本要相同 ...

  5. Hadoop集群环境搭建步骤说明

    Hadoop集群环境搭建是很多学习hadoop学习者或者是使用者都必然要面对的一个问题,网上关于hadoop集群环境搭建的博文教程也蛮多的.对于玩hadoop的高手来说肯定没有什么问题,甚至可以说事“ ...

  6. Hadoop集群添加新节点步骤

    1.在新节点中进行操作系统配置,包括主机名.网络.防火墙和无密码登录等. 2.在所有节点/etc/host文件中添加新节点 3.把namenode的有关配置文件复制到该节点 4.修改master节点s ...

  7. Hadoop记录-Hadoop集群添加节点和删除节点

    1.添加节点 A:新节点中添加账户,设置无密码登陆 B:Name节点中设置到新节点的无密码登陆 C:在Name节点slaves文件中添加新节点 D:在所有节点/etc/hosts文件中增加新节点(所有 ...

  8. 在hadoop集群添加了slave节点的方法

    分为以下几个步骤: 1  ,修改master和slave 的参数,和配置时相同,只是修改和节点数相关,如slaves(我的只改了slaves), 将任意一个该好的文件发送到新增加的机器(或者虚拟机) ...

  9. spark、hadoop集群添加节点

    1.首先添加hdfs的节点,将安装包上传到服务器,设置好环境变量.配置文件按之前spark集群搭建的那里进行修改. 设置完成后,要对新节点新型格式化: # hdfs  dfs  namenode  - ...

随机推荐

  1. Git+Gradle+Eclipse构建项目

    步骤: 1.安装好Git.解压gradle-2.14.zip免安装文件: 2.用SourceTree将GitLab上的项目拉取下来: 3.打开eclipse->Import->Gradle ...

  2. 论文的构思!姚小白的html5游戏设计开发与构思----给审核我论文的导师看的

    此处只为笔记 游戏么基本上确定是用canvas做个能一只手玩的游戏!基本打飞机之类的.毕竟手机也就上下班玩玩的.上下班么基本就是一只手拉着扶手一只手撸啊撸! 当然啦,如果能搞出超级牛逼的游戏,比如刺客 ...

  3. 关于Tabula FPGA的话题 (转)

    最近关注了一下Tabula的产品,特别是这个公司的FPGA.我的关注源于Intel对Tabula的支持.最近和在FPGA方面有较深理解的几位人士简单聊了聊,以下是这次对话的主要内容,希望能对从事这方面 ...

  4. SQL Server2008ldf文件太大

    --适用于SQL Server 2008的方法 USE [master] GO ALTER DATABASE RmyyHisDW SET RECOVERY SIMPLE WITH NO_WAIT GO ...

  5. detours安装和使用

    http://blog.csdn.net/evi10r/article/details/6659354 http://blog.csdn.net/donglinshengan/article/deta ...

  6. poj1013.Counterfeit Dollar(枚举)

    Counterfeit Dollar Time Limit: 1 Sec  Memory Limit: 64 MB Submit: 415  Solved: 237 Description Sally ...

  7. CKEditor使用笔记

    相关资源 1. 首页地址:http://ckeditor.com/ 2. 下载地址:http://ckeditor.com/download 3. SDK地址:http://sdk.ckeditor. ...

  8. 给定一个值S,在有序数组中找出两个元素A和B,使 A+B = S.

    在网上看到过一个面试题,感觉挺有意思,看别人的代码写的逻辑不够谨慎,重写了一个,较真了又... package com.array7.algorithm; public class Algorithm ...

  9. 在Linux用户空间做内核空间做的事情

    导读 我相信,Linux 最好也是最坏的事情,就是内核空间(kernel space)和用户空间(user space)之间的巨大差别.如果没有这个区别,Linux 可能也不会成为世界上影响力最大的操 ...

  10. AMD64与IA64的区别

    其实很多人从字面上,都以为AMD64就是针对AMD CPU的,IA64是针对INTEL CPU,其实是错的,我最初也是这样认为,其实不然: 你在市面上买的到的intel 64位 CPU都属于amd64 ...