Hadoop扩容

概述

Hadoop存储容量或计算能力不能满足日益增长的需求时,就需要扩容。

扩容有两个方案:

1) 增加磁盘

2) 增加节点

方案一:扩大虚拟磁盘

扩大容量

将虚拟的Linux关闭,扩大磁盘容量

将空间增大20G

建立分区

增加空间后Linux并不会识别出新增加的磁盘空间

需要为这块新增的空间建立分区

新建分区

打开Linux

fdisk /dev/sda#调整磁盘分区

m #进入帮助引导模式

n #新增分区

p #指定新分区为基本分区

一路回车 #但要记住分区号

w #保存并执行刚才的分区操作

reboot #重启

查看新增分区

fdisk -l

格式化

找到新增加的分区,还记得刚才的分区号吗?

#将数字换成刚才分配的分区号

挂载

Linux没有盘符,所以增加分区之后,需将分区映射到某一个文件夹上,以便使用。

新建文件夹

如果使用现有文件夹,则文件夹中的文件在挂载后将无法访问

mkdir /newdisk

临时挂载

 /newdisk

挂载成成功后可以查看挂载情况(没有挂载时用这个命令看不到)

df -lhT

#l表示列出

#h表示使用可读性更好的方式打印磁盘大小

#T表示列出文件类型

开机自动挂载

打开 /etc/fstab

增加

扩容datanode

配置

在hdfs-site.xml中增加配置项

<property>

<name>dfs.datanode.data.dir</name>

<value>${hadoop.tmp.dir}/dfs/data,
/newdisk</value>

</property>

/newdisk就是指定datanode使用新增的磁盘作为存储空间!可以指定多个存储位置

注意:将${hadoop.tmp.dir}替换成当前的hadoop临时目录

重启

stop-dfs.sh

start-dfs.sh

注意:如果在集群模式下,只需要重启该datanode即可!

验证

访问Hadoop浏览站点,可以看到该datanode存储空间增加了。

方案二:新增磁盘

以上适用于虚拟机所在的物理磁盘还有多余空间的情况。而生产环境中,还有一种情况是增加全新的硬盘(相当于买一块新硬盘插到主板上),用虚拟机也能模式出这种情况。

增加新磁盘

添加磁盘之后,启动Linux,新磁盘对应的是

/dev/sdb #第一块磁盘是sda,第二块是sdb,第三块是sdc…

然后从上面的【格式化】步骤继续进行就可以了

Linux下 磁盘扩容的两种方式的更多相关文章

  1. linux 下部署nodejs(两种方式)

    本次博客的编写时用的系统环境,刚装好的Centos 6.4  64位虚拟机. 另外关于linux 其他系统的安装 可以参考https://github.com/joyent/node/wiki/Ins ...

  2. Linux下安装Oracle的两种方式------有图形界面安装和静默安装

    本文参考文章 http://blog.csdn.net/zonej/article/details/50680857 http://blog.csdn.net/tongzidane/article/d ...

  3. linux下登陆MongoDB的两种方式

    第一种:不带auth认证的 第二种:需要带auth认证的(即需要用户名和密码的) 当指定用户名和密码在查看数据,发现就可以看得到了 查看文章:开启MongoDB客户端访问控制

  4. 【转】Linux下软件安装的几种方式

    转自Linux下软件安装的几种方式 Linux 系统的/usr目录 Linux 软件安装到哪里合适,目录详解 Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的 /usr:系统 ...

  5. Linux 下操作GPIO(两种方法,驱动和mmap)(转载)

    目前我所知道的在Linux下操作GPIO有两种方法: 1.编写驱动,这当然要熟悉Linux下驱动的编写方法和技巧,在驱动里可以使用ioremap函数获得GPIO物理基地址指针,然后使用这个指针根据io ...

  6. Linux 下操作gpio(两种方法,驱动和mmap)

    目前我所知道的在linux下操作GPIO有两种方法: 1.  编写驱动,这当然要熟悉linux下驱动的编写方法和技巧,在驱动里可以使用ioremap函数获得GPIO物理基地址指针,然后使用这个指针根据 ...

  7. linux下软件安装的几种方式

    linux下软件安装的几种方式(主要有源码安装, rpm安装, yum安装). 一:源码安装 几乎所有的开源软件都支持在Linux下运行,而这些软件一般都以源码形式发放,只需要Linux安装了gcc. ...

  8. 20155212 C语言实现linux下pwd命令的两种方法

    20155212 C语言实现linux下pwd命令的两种方法 学习pwd命令 通过man pwd命令查看 pwd [OPTION],一般不加参数 -P显示当前目录的物理路径 -L显示当前目录的连接路径 ...

  9. Linux进程分配内存的两种方式--brk() 和mmap()

    如何查看进程发生缺页中断的次数? 用ps -o majflt,minflt -C program命令查看. majflt代表major fault,中文名叫大错误,minflt代表minor faul ...

随机推荐

  1. jsavascript 面向对象的下拉菜单

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  2. Python基础教程学习笔记:第二章 列表和元组

    1.序列中元素的索引: 第一个元素索引是0,第二个是1,依次递增 最后一个元素索引是-1,倒数第二个是-2,依次递减 2.序列(Sequence)的种类: 列表(list).元组(tuple).字符串 ...

  3. 5 -- Hibernate的基本用法 --1 ORM和Hibernate

    目前流行的编程语言,如Java.C#等,它们都是面向对象的编程语言,而目前铸就的数据库产品,例如Oracle.DB2等,依然是关系数据库等.编程语言和底层数据库的发展不协调,催生出了ORM框架.ORM ...

  4. flexbox父盒子flex-direction属性

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. Android开发-- The content of the adapter has changed but ListView did not receive a notification - With AsyncTask

    最近在联系开发DaysMatter时遇到一个问题: app中使用ListView来展示所有事件,每次添加完事件后使用下面代码来更新ListView. toDoListView.refreshDrawa ...

  6. java中调用groovy

    Groovy在Java中的应用,做几个小例子以备查 package com.boco.efficiency.groovy; import groovy.lang.Binding; import gro ...

  7. Django 定义数据模型

    如何定义数据模型: (1) 在 MVC 设计模式中,M 表示数据模型 ( Model ),负责业务对象与数据库的映射,我们可以通过应用的 models.py 来定义数据模型(2) Model 采用了 ...

  8. 手把手让你实现开源企业级web高并发解决方案(lvs+heartbeat+varnish+nginx+eAccelerator+memcached)

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://freeze.blog.51cto.com/1846439/677348 此文凝聚 ...

  9. Struts2(四)属性驱动和模型驱动

    一.概述 所谓模型驱动,就是使用单独的JavaBean实例贯穿整个MVC流程,与之相对应的属性驱动方式,则使用属性作为贯穿MVC流程的信息携带者.属性无法独立存下,它必须依附于一个对象,这个对象就是A ...

  10. tp3.2 ajax 表单提交

    前台: 1 <form action="javascript:;" method="post" class="form_div" id ...