日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Hadoop集群中添加硬盘

發布時間:2024/4/15 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Hadoop集群中添加硬盘 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Hadoop工作節點擴展硬盤空間

接到老板任務,Hadoop集群中硬盤空間不夠用,要求加一臺機器到Hadoop集群,并且每臺機器在原有基礎上加一塊2T硬盤,老板給力啊,哈哈。

這些我把完成這項任務的步驟和我遇到的問題和解決方法總結一下,分享給大家。

1.????首先,介紹一下用到的基本命令和配置,如果本文的網友時間比較緊,可以直接跳過部分內容,直接看“2.???如何加載新硬盤”部分。

(1)命令fdisk

語法:

fdisk [-b sectorsize] device????

fdisk -l [-u] [device...]

fdisk -s partition...

fdisk –v

說明:

-b <sectorsize>???指定每個分區的大小。也可以執行fdisk device(如:fdisk /dev/sdb)后,在系統提示時指定。

-l???列出指定的外圍設備的分區表狀況。如果僅執行?fdisk -l,系統會列出已知的分區。

-u???搭配"-l"參數列表,會用分區數目取代柱面數目,來表示每個分區的起始地址。

-s <parttion>???????將指定的分區的大小輸出到標準輸出上,單位為區塊。

-v???顯示fdisk的版本信息。

(2)命令mkfs

語法:mkfs [-V][-t fstype] [fs-options] filesys

說明:

-V???顯示簡要的使用方法。

-t <fstype>???指定要建立何種文件系統,如:ext3, ext4。

fs???指定建立文件系統時的參數。

-v???顯示版本信息與詳細的使用方法。

(3)命令mount

語法:

mount [-afFnrsvw] [-t vfstype] [-Llabel]? [-o options] device dir

mount [-lhv]

說明:

-a???加載文件/etc/fstab中設置的所有設備。

-f????不實際加載設備??膳c-v等參數同時使用以查看mount的執行過程。

-F???需與-a參數同時使用。所有在/etc/fstab中設置的設備會被同時加載,可加快執行速度。

-t vfstype??指定加載的文件系統類型,如:ext3,ext4。

-L label??????給掛載點指定一個標簽名稱。

-l????顯示分區的label。

-h???顯示幫助信息。

-v???顯示mount的版本信息。

device?要掛載的分區或文件。如果device是一個文件,掛載時須加上-o loop參數。

dir???分區的掛載點。

(4)fstab配置說明

/etc/fstab?中一共有6列:

file system:指定要掛載的文件系統的設備名稱(如:/dev/sdb)。也可以采用UUID,UUID可以通過使用blkid命令來查看(如:blkid? /dev/sdb)指定設備的UUID號。

mount point:掛載點。就是自己手動創建一個目錄,然后把分區掛載到這個目錄下。

type:用來指定文件系統的類型。如:ext3, ext4, ntfs等。

option dump:0表示不備份;1表示要將整個<file system>中的內容備份。此處建議設置為0。

pass:用來指定fsck如何來檢查硬盤。0表示不檢查;掛載點為分區/(根分區)必須設置為1,其他的掛載點不能設置為1;如果有掛載ass設置成大于1的值,則在檢查完根分區后,然后按pass的值從小到大依次檢查,相同數值的同時檢查。如:/home 和?/boot 的pass?設置成2,/devdata的pass?設置成3,則系統在檢查完根分區,接著同時檢查/boot和/home,再檢查/devdata。

?

2.????????如何加載新硬盤(想詳細了解為什么會這樣操作,請看第三部分“詳解步驟”部分)

(1)??????通過命令fdisk –lu,顯示“Disk /dev/sdb doesn't contain a valid partition table”說明sdb就是新添加的硬盤,下面主要針對它進行操作。如圖1所示。

?

??????????????????????????????????????????????????? 圖1

(2)??????下面對sdb進行分區,命令:fdisk/dev/sdb,如下圖2所示,按提示操作。

?

??????????????????????????????????????????????????????????? 圖2

根據提示,輸入n,想新硬盤添加一個分區。出現Commandaction時,輸入e,指定分區為擴展分區(extended)。出現Partition number(1-4)時,輸入1表示只分一個區。

續指定起啟柱面(cylinder)號完成分區。如圖3所示。

?

???????????????????????????????????????????????????????????? 圖3

(3)??????最后輸入p,打印出新硬盤分區表,圖4所示。

?

???????????????????????????????????????????????????????????????? 圖4

(4)??????在Command (m for help)提示符后面輸入w,保存分區表。系統提示:Thepartition table has been altered!?如圖5所示。

?

??????????????????????????????????????????????????????????????????? 圖5

(5)??????此時,用命令fdisk –lu分區情況,如圖6所示

?

??????????????????????????????????????????????????????????????????????? 圖6

(6)??????對新分區進行格式化:sudo mkfs -t ext4 /dev/sdb,(推薦ext4,時間比較快,具體了解看第三部分“詳細步驟”)如圖7所示。

?

???????????????????????????????????????????????????????????? 圖7

(7)??????掛載硬盤sudo mount -t ext4 /dev/sdb /devdata(這里devdata是自己制定的目錄,你可以指定任意目錄,我加載的目錄是dfs.data.dir指定的目錄),到此時已經完成了所有步驟,下面就是修補。此時就可以用命令sudo df –h查看了,如圖8所示。

?

????????????????????????????????????????????????? 圖8

(8)??????如果想每次手動加載,使用命令mount –a。如果想讓系統自動加載,需要配置/etc/fstab,如下圖9所示。

?

?????????????????????????????????????????????????????? 圖9

到此加載過程完成。

如果是Hadoop集群,此時需要將每個工作節點dfs.data.dir目錄重新修改權限,使用命令:chown –R dm:dm/usr/local/hadoop/data/(這是dfs.data.dir指向的目錄),然后將namenode格式化即可,這里筆者就是忘了更改dfs.data.dir指向目錄的權限,導致datanode啟動不起來,汗啊。

3.????詳解步驟

(1)對于2中(1)的名稱sdb,其實Linux對設備的命名有它自己的一套規則,根據接口類型來區分存儲設備,按存儲設備占用的系統接口編號為其分配標識符。對于IDE存儲設備(并口設備)標識符為hd,按設備使用接口的不同,分別命名為had,hdb,hdc等;對于SCSI接口,SATA接口設備(串口)和串行總線接口使用sd作為標識,仍按照使用接口編號不同,以sda,sdb等為其命名。

(2)對2中的(2)分區。在使用硬盤存儲數據時,還需要對硬盤進行分區,按分區的使用方法可以將硬盤分區分為3種:主分區、擴展分區和邏輯分區。其中主分區是最基本的分區類型,它可以直接掛載并存儲數據,一個硬盤最多只能有4個主分區。Linux系統中對這4個主分區使用1、2、3、4作為標識符。例如硬盤sda上的第1個主分區的標識為sda1,同理其他三個標識分別為sda2,sda3, sda4;擴展分區是一種特殊的主分區,如果要使用擴展分區存儲數據,必須先將擴展分區劃分為邏輯分區(即邏輯分區加你在擴展分區基礎之上),如果要在一個硬盤上創建4個以上的分區,就必須使用擴展分區。由于擴展分區也是一種主分區,因此擴展分區也占用一個主分區號;在擴展分區分區基礎之上,可以創建多個邏輯分區,邏輯分區可以直接掛載并存儲數據。邏輯分區的標識數字從5開始,例如sda5,sda6。Linux系統中的硬盤分區使用以上標識符命名并保存在/dev中,要使用分區存儲數據時,需要將對應的塊設備文件掛載到一個目錄下。掛載設備的過程可以描述成:為用戶使用該分區存放和讀取數據提供一個接口和途徑。這里為什么創建擴展分區,而不是創建主分區,筆者的理由是主分區包含啟動的一些附加信息,而這些信息是用來引導系統啟動的,這里的磁盤只是為了擴充原有磁盤的容量來存儲數據,如果擴展分區直接分成邏輯分區,不需要這些附加信息,從而可以更加充分地利用新硬盤的空間,這個解釋不保證正確,如果有誤,請智者指正。

(3)2中(6)提到了文件系統ext4,可以參考http://baike.baidu.com/view/266589.htm#7

(4)2中(8)的fstab設置可參考http://baike.baidu.com/view/5499388.htm。

?

引用網址:http://aofengblog.blog.163.com/blog/static/6317021201101502540117/

總結

以上是生活随笔為你收集整理的Hadoop集群中添加硬盘的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。