概述
Hadoop存儲容量或計算能力不能滿足日益增長的需求時,就需要擴容。
擴容有兩個方案:
1) 增加磁盤
2) 增加節點
方案一:擴大虛擬磁盤
擴大容量
將虛擬的Linux關閉,擴大磁盤容量
將空間增大20G
建立分區
增加空間后Linux並不會識別出新增加的磁盤空間
需要為這塊新增的空間建立分區
新建分區
打開Linux
fdisk /dev/sda#調整磁盤分區
m #進入幫助引導模式
n #新增分區
p #指定新分區為基本分區
一路回車 #但要記住分區號
w #保存並執行剛才的分區操作
reboot #重啟
查看新增分區
fdisk -l
格式化
找到新增加的分區,還記得剛才的分區號嗎?
mkfs.xfs /dev/sda9#將數字換成剛才分配的分區號
掛載
Linux沒有盤符,所以增加分區之后,需將分區映射到某一個文件夾上,以便使用。
新建文件夾
如果使用現有文件夾,則文件夾中的文件在掛載后將無法訪問
mkdir /newdisk
臨時掛載
mount /dev/sda9 /newdisk
掛載成成功后可以查看掛載情況(沒有掛載時用這個命令看不到)
df -lhT
#l表示列出
#h表示使用可讀性更好的方式打印磁盤大小
#T表示列出文件類型
開機自動掛載
打開 /etc/fstab
增加 /dev/sda9/newdiskxfsdefaults00
擴容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…
然后從上面的【格式化】步驟繼續進行就可以了