mprop="articleBody" style="font-family: Lato, "PingFang SC", "Microsoft YaHei", sans-serif; overflow-wrap: break-word; font-size: 1.125em; text-align: justify; animation-duration: 1s; animation-fill-mode: none; animation-name: fadeInDown; visibility: inherit; color: rgb(85, 85, 85); text-wrap: wrap; background-color: rgb(255, 255, 255);">
背景故事:去年装 R7515 的时候使用的是 1 块 512GB 的英睿达 MX500 作为系统盘,另一块 512GB 的英睿达 MX500 作为虚拟机的数据盘。原先设想后续改造将两块 MX500 改成 RAID1 阵列作为系统盘,另外再购置大容量数据盘。不料 618 致钛 7100 价格太美丽,一口气入了 4 块 2TB,挑了 2 块不同批次的组 RAID1,用于系统盘 + 数据盘,另外 2 块专门作为数据库或云游戏的高性能存储。所以目标就是将单块 MX500 上的系统迁移的 MD 软 RAID 阵列上。
整体规划
请一定注意你知道每条命令在干什么,数据不是儿戏!
EFI 分区放在阵列中也是可行的,但是我并没有使用
EFI 分区都同步到两个硬盘,这样挂掉任何一块,都还能引导
拆分卡上面的顺序标号和系统里看到的是相反的,但是在 iDRAC 中看到又相同
1 2 3 4 5 6 7 8 9 10 11
| lsblk
sda 259:0 0 465.8G 0 disk ├─sda1 259:1 0 512M 0 part └─sda2 259:8 0 465.3G 0 part ├─pve-swap 253:5 0 16G 0 lvm [SWAP] ├─pve-root 253:6 0 96G 0 lvm / ├─pve-data_tmeta 253:7 0 3.4G 0 lvm │ └─pve-data 253:9 0 330.5G 0 lvm └─pve-data_tdata 253:8 0 330.5G 0 lvm └─pve-data 253:9 0 330.5G 0 lvm
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| lsblk
nvme0n1 259:0 0 1.9T 0 disk ├─nvme0n1p1 259:1 0 512M 0 part /boot/efi └─nvme0n1p2 259:2 0 1.8T 0 part └─md127 9:127 0 1.8T 0 raid1 └─md127p1 259:8 0 1.8T 0 part ├─pve-swap 253:5 0 16G 0 lvm [SWAP] ├─pve-root 253:6 0 96G 0 lvm / ├─pve-data_tmeta 253:7 0 3.4G 0 lvm │ └─pve-data 253:9 0 330.5G 0 lvm └─pve-data_tdata 253:8 0 330.5G 0 lvm └─pve-data 253:9 0 330.5G 0 lvm nvme1n1 259:3 0 1.9T 0 disk ├─nvme1n1p1 259:5 0 512M 0 part └─nvme1n1p2 259:6 0 1.8T 0 part └─md127 9:127 0 1.8T 0 raid1 └─md127p1 259:8 0 1.8T 0 part ├─pve-swap 253:5 0 16G 0 lvm [SWAP] ├─pve-root 253:6 0 96G 0 lvm / ├─pve-data_tmeta 253:7 0 3.4G 0 lvm │ └─pve-data 253:9 0 330.5G 0 lvm └─pve-data_tdata 253:8 0 330.5G 0 lvm └─pve-data 253:9 0 330.5G 0 lvm
|
硬件安装
拆分卡地址就不贴了,支持 PCIe 4.0 的,吳真从来不拐弯抹角,但是我好像买贵了好多,就请直接按图搜吧。屁股后面还有 4 个指示灯,标识对应硬盘是否在线.
BIOS 设置
实施
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
sudo -i
fdisk /dev/nvme0n1 g n +1048575 n +3879731199 t 1 uefi t 2 raid p w
fdisk /dev/nvme1n1
|
关于分区 2 的大小,3879731199,考虑到若阵列中某块物理硬盘损坏,更换的新硬盘大小和原始大小不同,因此应尽量不使用全部的硬盘空间作为分区,而是选择一个略微小一点的大小。这里的取值为,按照硬盘标定容量 2 * 10^12 计算,-512MB EFI 分区,大约 1862GB 左右,向下取整到 1850GB,每个扇区为 512B,折合 3879731200 扇区。
1 2 3 4 5 6 7 8 9
| apt update && apt install mdadm mdadm --create /dev/md0 --name system --level=mirror --raid-devices=2 /dev/nvme0n1p2 /dev/nvme1n1p2 cat /proc/mdstat
echo 6000000 > /proc/sys/dev/raid/speed_limit_min echo 6000000 > /proc/sys/dev/raid/speed_limit_max cat /proc/mdstat
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
dd if=/dev/sda2 of=/dev/nvme0n1p1 dd if=/dev/sda2 of=/dev/nvme1n1p1
fdisk /dev/md0 g n
t 1 lvm p w
dd if=/dev/sda3 of=/dev/md0p1 bs=64M
apt update && apt install libncurses6
wget http://archive.ubuntu.com/ubuntu/pool/universe/p/progress/progress_0.16-1_amd64.deb dpkg -i progress_0.16-1_amd64.deb progress -m
|
这一步很重要,关机将原硬盘拔掉,然后重新进入 Live CD 模式。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| apt update && apt install mdadm mdadm --assemble /dev/md0 /dev/nvme0n1p2 /dev/nvme1n1p2
mkdir /mnt/root mount /dev/mapper/pve-root /mnt/root mount /dev/nvme0n1p1 /mnt/root/boot/efi/ mount --bind /proc/ /mnt/root/proc/ mount --bind /sys/ /mnt/root/sys/ mount --bind /run/ /mnt/root/run/ mount --bind /dev/ /mnt/root/dev/ chroot /mnt/root apt update && apt install mdadm
grub-install --efi-directory=/boot/efi --recheck update-grub
cat /boot/grub/grub.cfg | grep "insmod mdraid1x"
|
关机重启,理论上应该能够自动进入系统,R7515 记得选择 PCIe SSD in Slot 4: proxmox。
1 2 3 4 5 6 7 8 9 10 11 12 13
| lvm
pvdisplay pvresize /dev/md127p1 pvdisplay
vgdisplay
lvextend -l +100%FREE /dev/pve/data lvdisplay
|