先確認盤是直連,不是陣列成員
登入之後先看塊設備,不要先建立檔案系統。Linux 上可以用 lsblk -o NAME,SIZE,TYPE,MOUNTPOINT,MODEL。兩顆大約 1TB 的 NVMe 會各自出現,類型是 disk,下面還沒有分割區,或者只有安裝系統時寫下的分割區。沒有名為 md 的陣列設備,也沒有硬體陣列的管理入口,這是預期狀態。
若其中一顆已經被掛到根分割區,另一顆是空的,說明安裝程式只用了一顆盤。空碟可以單獨分割區,也可以在備份完成之後再決定是否加入軟體陣列。已經在用的那一顆,不能在未備份時拆掉分割區去組陣列。
可用容量按兩顆相加來算
直連的意思是作業系統同時看見兩顆盤。一顆用來放系統,另一顆可以放資料;也可以兩顆都劃給虛擬機磁碟檔案。這樣加起來接近 2TB,具體還要扣掉分割區表和檔案系統自己的開銷。把它理解成 RAID 1 之後只剩 1TB,會對不上 lsblk 裡的兩行 disk。
沒有硬體陣列,也意味著一顆盤離線時,另一顆上的檔案還在,但跨在兩顆盤上的目錄不會自動補齊。檔案放在哪一顆,由掛載點決定,不由機箱裡的陣列卡決定。
三種用法換的東西不一樣
| 用法 | 大約容量 | 一顆盤故障時 |
|---|---|---|
| 兩顆分開掛載 | 接近 2TB | 只影響該盤上的目錄 |
| 軟體 RAID 1 | 接近 1TB | 另一顆繼續提供同一份資料 |
| 軟體 RAID 0 | 接近 2TB | 整組不可用 |
分開掛載適合系統碟和資料碟職責清楚的機器。資料庫檔案、備份目錄、虛擬機磁碟可以放在第二塊盤,根分割區留在第一顆。這種安排沒有鏡像,所以備份要寫到這台機器以外的位置。
軟體 RAID 1 用容量換一份鏡像。兩顆 1TB 組起來,可用空間接近一顆盤。寫入會落到兩顆盤,讀取可以分攤。它擋住的是單盤損壞,擋不住誤刪除,也擋不住兩顆盤一起出問題。組之前兩顆盤上的分割區會被清掉。
動手時按這個順序
記下兩顆盤的名字
用
lsblk和nvme list寫出類似/dev/nvme0n1、/dev/nvme1n1的名字。不要憑順序猜測,重新開機後編號有可能對調。把要保留的資料拷出去
陣列建立會改寫參與的盤。系統已經裝在其中一顆上時,只把空碟拿去單獨分割區,不要把根分割區所在的盤卷進新陣列。
選定一種用法再分割區
分開使用就對空碟執行分割區和
mkfs,寫進/etc/fstab時用 UUID。做鏡像則在空閒的兩顆盤上建立陣列,再在陣列設備上建檔案系統。做一次恢復演練
鏡像建好之後,用陣列工具看兩顆成員是否都在同步。然後從備份裡抽一個小檔案恢復到臨時目錄,確認備份本身能讀。
預設磁碟按直連交付
AMD EPYC 7543P 這一檔,無論記憶體是 128GB 還是 256GB,預設磁碟都是 2 × 1TB NVMe,無硬體 RAID,盤獨立直連。月租分別是 $455 和 $612。記憶體容量不改變磁碟的連接方式。若作業需要更多空間,可以再加 1 塊或 2 塊 2TB NVMe,每塊每月 $84,那些盤同樣不進入硬體陣列。
機房在日本東京。系統可以預裝 Ubuntu、Debian、AlmaLinux、CentOS Stream、FreeBSD 或 Proxmox VE。Proxmox 把虛擬機磁碟放在目錄或單獨的盤上時,仍然要先決定第二塊 NVMe 是獨立儲存還是軟體陣列,安裝嚮導不會替硬體陣列做選擇,因為沒有那塊陣列卡。
什麼情況下先不要組陣列
根分割區已經佔滿其中一顆、又沒有外部備份時,先不要重組。先核對 lsblk 和掛載點即可。兩顆盤的型號或容量不一致時,也不要假設它們能組成對稱的鏡像。加購盤的處理方式見另一篇筆記,那塊 2TB 盤同樣是直連,不會自動並進這兩顆 1TB。
備援做好之後,連接方式不變:Linux 仍用 SSH,位址在控制台。磁碟布局改動不會改主機名稱和連接埠。
鏡像和備份各管一件事
軟體 RAID 1 只保證兩顆成員上有同一份資料。誤刪除、錯誤的格式化、把檔案寫成空,都會同時出現在兩顆盤上。鏡像因此不能代替備份。要留下的庫、虛擬機磁碟和站點檔案,至少再存一份到這台機器以外,並且隔一段時間從備份裡抽出一個小檔案,確認那份副本真的能打開。
分開掛載時,系統碟和資料碟的備份節奏可以不同。系統碟留下安裝後的設定和用戶,資料碟按資料庫或虛擬機磁碟的寫入量來做。兩份備份不要寫回即將被替換或即將被重新分割區的那塊 NVMe,否則盤一換,備份跟著消失。
建立陣列之前再看一次容量。兩顆都接近 1TB,才適合對稱的鏡像。其中一顆明顯更小的話,鏡像可用空間會向小的那塊看齊,多出來的扇區用不上。這種組合更適合分開掛載:大的一顆放資料,小的一顆留系統。加購的 2TB 盤不要和這兩顆 1TB 湊成一組鏡像,原因見加購那篇。
陣列建好後,把陣列名字或 UUID 寫進開機設定和 fstab。只在目前工作階段裡組裝,重新開機後設備可能還在,檔案系統卻不會回到原來的目錄。寫完之後重新開機一次,確認根分割區或資料目錄仍在預期位置,lsblk 裡成員狀態是同步完成,而不是一直停在降級。降級時先不要寫入新的作業資料,等兩顆成員都回到陣列再繼續。
Proxmox 若把虛擬機磁碟放在目錄裡,目錄所在的檔案系統就是上面選定的那一種。鏡像、分開的第二塊盤、或者之後加的 2TB,對虛擬機來說只是不同的儲存目錄。安裝嚮導不會建立硬體卷。選錯目錄之後再搬遷,要停掉虛擬機再遷移磁碟檔案,避免一邊寫一邊拷。