linux下配置磁盤池可能出現的問題及解決辦法

總體流程:

初始化擦除磁盤 -> 建立磁盤池配置文件 -> warpdrive掛磁盤池

 

具體步驟:

1、準備兩塊磁盤(如dev/sdb1、dev/sdc1),用wipefs命令擦除磁盤。

wipefs -a /dev/sdb1
wipefs -a /dev/sdc1

        

        如果擦除失敗則可用dd命令暴力初始化,但在用dd命令之前請務必將兩塊磁盤unmount掉,否則你的磁盤會瞬間爆炸,直接到64Z空間的大小。umount掉dev/sdb1、dev/sdc1後,執行下列命令:

dd if=/dev/zero of=/dev/sdb1 bs=512 count=2048
dd if=/dev/zero of=/dev/sdc1 bs=512 count=2048

 

2、建立磁盤池配置文件

# gold.yml文件
"name": "gold"
"driverName" : "devicemapper"
"thinPool":
 "fileSystem" : "ext4"
 "type" : "Linear"
 "devices":
 - "/dev/sdb1"

# silver.yml文件
"name": "silver"
"driverName" : "devicemapper"
"thinPool":
 "fileSystem" : "ext4"
 "type" : "Linear"
 "devices":
 - "/dev/sdc1"

        目前建議配置存儲池驅動:devicemapper 。它支持xfs和ext4兩種文件系統。在type屬性裏我們可以選擇磁盤池存儲格式,有Linear,Stripe,SoftRaid1,SoftRaid5。

        Linear格式寫入單塊磁 盤,效率較高,最少需要一塊磁盤; 

        Stripe要求配置多塊盤,寫入效率高 但是安全性低,最少需要兩塊磁盤;

        SoftRaid1代表Raid1方式,安全性高但是空間利用率低,最少需要兩塊磁盤;

        SoftRaid5代表Raid5方式,可保證數據安全性,同時確保一定的空間利用率,最少需要三塊磁盤。

        因爲我們這裏是配兩個磁盤池,每個磁盤池僅有一塊磁盤,故直接指定存儲格式爲Liner即可。

 

3、執行配置命令。

warpdrive pool create -f {gold.yml路徑}
warpdrive pool create -f {silver.yml路徑}

 

 

如果只有一塊磁盤,且無法umount的時候

        如果我們僅有一塊磁盤,但想配兩塊磁盤池,則可通過fdisk將磁盤分爲爲兩個區,再掛載,具體操作:

 

先將當前分區刪除,這樣整個磁盤空間就全騰出來了,接着new兩個分區,保存。

 

格式化新建的兩個分區/dev/sdc1、/dev/sdc2。

加下來再正常操作即可。

 

報create pv /dev/sdx failed:exit status5錯:

報錯如下:

 

原因:磁盤沒有完全被擦除。

解決方案:dd命令

dd if=/dev/zero of=/dev/sdc1 bs=512 count=2048
dd if=/dev/zero of=/dev/sdc2 bs=512 count=2048

 

 

之後就會顯示配置成功了。

 

 

發佈了40 篇原創文章 · 獲贊 117 · 訪問量 23萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章