diff --git a/content/post/transfer-cent62-using-rsync.md b/content/post/transfer-cent62-using-rsync.md index 42d8be99..376a0c31 100644 --- a/content/post/transfer-cent62-using-rsync.md +++ b/content/post/transfer-cent62-using-rsync.md @@ -287,5 +287,118 @@ https://www.youtube.com/watch?v=NOIyRFit64k 看來下次要好好「評估」了.. +
+ +### 測試raid1轉raid5擴充空間 + + +前面有提到,如果沒有LVM的話,我應該可以很輕易的加入兩顆硬碟到原有的raid1,然後就直接擴充容量 + +不過操作失敗了,但是我一直覺得這個應該很容易解決才對 + +所以我開了一台VM來做測試 + +OS: Ubuntu 18.04 Server x64 +HDD: 16G vmdisk x4 + +一開始安裝時,就在安裝程式內設定一組raid1 (/dev/vda, /dev/vdb),然後把系統灌在這個raid device上 + +安裝完成後,先進入系統確認一下現在的狀態 + +![](https://i.imgur.com/KDix5IJ.png) + +可以看到有一個raid1 的磁區,由 /dev/vda1 , /dev/vdb1 組成,raid-devices:2 Array Size: 16765952 (15.99 GiB) + +然後還有兩個磁碟沒有用到 (/dev/vdc , /dev/vdd) + +接著為了進行模擬測試,先拍個快照,然後改用 ubuntu 18.04 Desktop 的ISO開機 + +進入系統後,要先開啟 terminal 來安裝 mdadm + +``` +apt install mdadm -y +``` +![install mdadm in ubuntu 18.04 liveDVD](https://i.imgur.com/0tnEdW5.png) + +然後把剛剛看到的兩顆還沒用到的磁碟切分割,加入RAID內 + +或者可以直接用sfdisk 從原有的磁碟抄partition table過來 + +我直接用 sfdisk 抄比較快,底下的指令是抄 vda 的partition table 到 vdc和 vdd + +``` +sfdisk -d /dev/vda | sfdisk /dev/vdc +sfdisk -d /dev/vda | sfdisk /dev/vdd +``` + +![sfdisk copt partition table](https://i.imgur.com/mlikld4.png) + +然後檢查一下是不是正確 +``` +fdisk -l /dev/vdc +fdisk -l /dev/vdd +``` + +![check result after sfdisk](https://i.imgur.com/5qQNLbu.png) + +再來就偵測原來的RAID,然後加入兩個剛剛做出來的分割到raid群組內 + +接著就直接把raid1轉成raid5,然後把raid-devices:2 改成 4,看一下狀態 + +可以看到,在把raid-devices 提升到4顆之後,原有的raid 就會開始進行reshape (不是rebuild唷) + +``` +mdadm --assemble --scan +mdadm --add /dev/md0 /dev/vdc1 /dev/vdd1 +mdadm --grow /dev/md0 --level=5 +mdadm --grow /dev/md0 --raid-devices=4 +cat /proc/mdstat +``` + +![convert raid1 to raid5 procedure](https://i.imgur.com/dxwQC0v.png) + + +耐心等待raid reshape 跑完,要一點時間,我只用16G的磁碟來測試也要跑個七八分鐘左右 + +不敢想像如果是幾TB的空間要跑多久... + +等上面的程序跑完後,再看一下raid狀態,就會看到原有的RAID空間變大了,磁碟變多了,心情變好了,考試也都考100分了! + +![check raid status after reshape](https://i.imgur.com/7E2qL8Q.png) + +本來想說已經完成了,興沖沖的把raid 掛進來,看一下空間,卻還是16G ????? + +``` +mount /dev/md0p1 /mnt +df -h +``` + +![raid space still 16G](https://i.imgur.com/ILjDN1g.png) + +其實這邊我一直沒搞懂,文章都說你就跑 e2fsck 檢查一次,然後跑 resize2fs 放大就結束了 + +問題是,我這樣做沒用... + +![raid not expand after e2fsck and resize2fs](https://i.imgur.com/ij2AGw7.png) + +最後我是直接請出 gparted 來做 + +叫出 gparted 之後,可以直接看到剛剛增加的空間沒有被放到原有的raid + +那就直接 resize吧 + +![unallocated space in gparted](https://i.imgur.com/qLQMRAe.png) + +gparted resize 太簡單了...直接用拉的就好了 + +![resize partition in gparted](https://i.imgur.com/KAs3gwu.png) + +好,都做完了,重開機見真章!看看到底有沒有成功? + +![check result after reboot](http://i.imgur.com/uGzxA9t.png) + +空間順利放大了,打完收工! + +我想以後如果又碰到一樣的狀況,大概就會用最後這個方式處理吧! diff --git a/public/post/transfer-cent62-using-rsync/index.html b/public/post/transfer-cent62-using-rsync/index.html index 2dc7603c..6f48fc9e 100644 --- a/public/post/transfer-cent62-using-rsync/index.html +++ b/public/post/transfer-cent62-using-rsync/index.html @@ -406,6 +406,115 @@

這次的960G SSD ($2999) 又有這種問題

看來下次要好好「評估」了..

+ +
+ +

測試raid1轉raid5擴充空間

+ +

前面有提到,如果沒有LVM的話,我應該可以很輕易的加入兩顆硬碟到原有的raid1,然後就直接擴充容量

+ +

不過操作失敗了,但是我一直覺得這個應該很容易解決才對

+ +

所以我開了一台VM來做測試

+ +

OS: Ubuntu 18.04 Server x64 +HDD: 16G vmdisk x4

+ +

一開始安裝時,就在安裝程式內設定一組raid1 (/dev/vda, /dev/vdb),然後把系統灌在這個raid device上

+ +

安裝完成後,先進入系統確認一下現在的狀態

+ +

+ +

可以看到有一個raid1 的磁區,由 /dev/vda1 , /dev/vdb1 組成,raid-devices:2 Array Size: 16765952 (15.99 GiB)

+ +

然後還有兩個磁碟沒有用到 (/dev/vdc , /dev/vdd)

+ +

接著為了進行模擬測試,先拍個快照,然後改用 ubuntu 18.04 Desktop 的ISO開機

+ +

進入系統後,要先開啟 terminal 來安裝 mdadm

+ +
apt install mdadm -y
+
+ +

install mdadm in ubuntu 18.04 liveDVD

+ +

然後把剛剛看到的兩顆還沒用到的磁碟切分割,加入RAID內

+ +

或者可以直接用sfdisk 從原有的磁碟抄partition table過來

+ +

我直接用 sfdisk 抄比較快,底下的指令是抄 vda 的partition table 到 vdc和 vdd

+ +
sfdisk -d /dev/vda | sfdisk /dev/vdc
+sfdisk -d /dev/vda | sfdisk /dev/vdd
+
+ +

sfdisk copt partition table

+ +

然後檢查一下是不是正確

+ +
fdisk -l /dev/vdc
+fdisk -l /dev/vdd
+
+ +

check result after sfdisk

+ +

再來就偵測原來的RAID,然後加入兩個剛剛做出來的分割到raid群組內

+ +

接著就直接把raid1轉成raid5,然後把raid-devices:2 改成 4,看一下狀態

+ +

可以看到,在把raid-devices 提升到4顆之後,原有的raid 就會開始進行reshape (不是rebuild唷)

+ +
mdadm --assemble --scan 
+mdadm --add /dev/md0 /dev/vdc1 /dev/vdd1
+mdadm --grow /dev/md0 --level=5
+mdadm --grow /dev/md0 --raid-devices=4
+cat /proc/mdstat
+
+ +

convert raid1 to raid5 procedure

+ +

耐心等待raid reshape 跑完,要一點時間,我只用16G的磁碟來測試也要跑個七八分鐘左右

+ +

不敢想像如果是幾TB的空間要跑多久…

+ +

等上面的程序跑完後,再看一下raid狀態,就會看到原有的RAID空間變大了,磁碟變多了,心情變好了,考試也都考100分了!

+ +

check raid status after reshape

+ +

本來想說已經完成了,興沖沖的把raid 掛進來,看一下空間,卻還是16G ?????

+ +
mount /dev/md0p1 /mnt
+df -h
+
+ +

raid space still 16G

+ +

其實這邊我一直沒搞懂,文章都說你就跑 e2fsck 檢查一次,然後跑 resize2fs 放大就結束了

+ +

問題是,我這樣做沒用…

+ +

raid not expand after e2fsck and resize2fs

+ +

最後我是直接請出 gparted 來做

+ +

叫出 gparted 之後,可以直接看到剛剛增加的空間沒有被放到原有的raid

+ +

那就直接 resize吧

+ +

unallocated space in gparted

+ +

gparted resize 太簡單了…直接用拉的就好了

+ +

resize partition in gparted

+ +

好,都做完了,重開機見真章!看看到底有沒有成功?

+ +

check result after reboot

+ +

空間順利放大了,打完收工!

+ +

我想以後如果又碰到一樣的狀況,大概就會用最後這個方式處理吧!