我从 SoYouStart 优惠中购买了 E3-SSD-3-32 服务器。有 3x120 GB SSD 驱动器。不幸的是,一段时间后,磁盘空间不足。有没有办法将 RAID1 转换为 RAID0?操作系统是 Debian 9。
web1@ns510077:~$ cat /proc/mdstat
Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] [multipath] [faulty]
md1 : active raid1 sdc1[2] sdb1[1] sda1[0]
20478912 blocks [3/3] [UUU]
md2 : active raid1 sdc2[2] sdb2[1] sda2[0]
96211904 blocks [3/3] [UUU]
unused devices: <none>
web1@ns510077:~$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 20G 1.6G 17G 9% /
devtmpfs 16G 0 16G 0% /dev
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 16G 530M 16G 4% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/md2 91G 77G 9.3G 90% /var
答案1
据我所知这似乎是不可能的。我建议您备份所有数据,然后将 RAID 重建为条带 RAID。
但是,您可以尝试在将 RAID 从 1 扩展到 0 之前使用以下命令备份数据:
mdadm /dev/md2 --grow --level=0
或者
删除镜像,扩展到 raid 0 并调整 fs 大小。
无论如何,为了数据安全,请先进行备份。
答案2
根据 Strepsils 的线索,对于名为 /dev/md2 的 RAID1 md 卷和两个名为 /dev/nvme0n1p2 和 /dev/nvme1n1p2 的分区:
移除镜子:
sudo mdadm /dev/md2 --fail /dev/nvme1n1p2
,然后sudo mdadm /dev/md2 --remove /dev/nvme1n1p2
(从https://www.thegeekdiary.com/centos-rhel-how-to-remove-a-mirror-with-mdadm/)扩展到raid0:
sudo mdadm /dev/md2 --grow --level=0
将第二个磁盘添加回来:(
sudo mdadm --grow /dev/md2 --level=0 --raid-devices=2 --add /dev/nvme1n1p2
请注意,这会将 md2 更改为 raid4?!并自动开始重塑。从https://serverfault.com/a/1077269/167906)等待重塑完成(
watch cat /proc/mdstat
)(对于在 2 个快速 SSD 上作为 1TB raid1 开始运行的 md 卷,大约需要 90 分钟)重塑完成后,/dev/md2 将自动变为 raid0。
扩大文件系统:
sudo resize2fs /dev/md2