静看光阴荏苒
不管不顾不问不说也不念

《OVH相关》更换Proxmox VE ZFS RAID10阵列中的硬盘

我前段时间买了两台OVH独立服务器,其中这台KS-LE-E各种问题不断,刚拿到手的时候就发现少了16GB内存,连IPMI上去发现确实是有一根内存条有问题:

当时就只想着解决这个内存的问题去了,发了个工单让他们给我把内存换了一根就好了。其他的硬件,比如硬盘的信息就简单看了下没发现什么大问题就没管它了,直接装了个PVE就拿来用了。这两天看邮箱的垃圾箱突然发现PVE给我发了很多封SMART错误的邮件:

登录服务器一看还真是,这块/dev/sdb的盘确实是有点问题了:

虽然这块盘现在还是能用的,但出于谨慎的态度我还是发了个工单问了下,OVH那边也不墨迹,二话不说直接就把这块盘给换了。在换之前我也没有在服务器上特别设置什么,就是简单看了下硬盘的分区以及当时的ZFS池状态:

OVH那边换完之后,我再次登录服务器查看,可以看到/dev/sdb这块盘是新换的了,没有了之前的分区表:

查看ZFS池状态,变成降级状态了,因为我这个是RAID10阵列,挂了一块盘也能正常运行:

关于在ZFS中更换硬盘,主要分为两种情况:系统盘(bootable device)、非系统盘。

如果是更换系统盘,则需要复制硬盘的分区表、生成GUID、以及重建EFI分区。而非系统盘的话不需要这些操作,直接更换就好了。

我现在的情况是属于更换系统盘,所以现在我需要把一块健康硬盘的分区表复制到这块新的/dev/sdb。现在我的服务器上除了sdb外还有sda、sdc、sdd三块盘,这些硬盘都是健康的,随便选一个复制就行:

sgdisk /dev/sda -R /dev/sdb

生成随机的GUID:

sgdisk -G /dev/sdb

然后更换ZFS池中的硬盘:

zpool replace -f rpool /dev/sdb3 /dev/sdb3

这个命令可能具有迷惑性,为什么新旧硬盘的分区都是/dev/sdb3?因为新盘的分区表是按照原来的分区表原封不动复制过来的,又因为新换的硬盘设备名正好还是sdb,所以完全相同。如果不是很明白,看看这个命令就懂了:

zpool replace -f [pool] [old zfs partition] [new zfs partition]

再次查看ZFS池状态可以看到在重建了,因为问题发现的早,我也没存多少数据,重建是非常快的:

重建完成后再次查看,全部都在线了:

现在还需要重建EFI分区:

proxmox-boot-tool format /dev/sdb2
proxmox-boot-tool init /dev/sdb2

更新配置:

proxmox-boot-tool refresh

重新生成/etc/kernel/proxmox-boot-uuids:

proxmox-boot-tool clean

查看状态:

proxmox-boot-tool status

如有下回显说明一切正常:

至此就全部完成了,可以重启一下测试服务器是否能够正常引导:

systemctl reboot

这个方法是通用的,不限于RAID10阵列,无论是RAIDZ-1、RAIDZ-2,或者RAID1,都可以用这个办法在ZFS中更换硬盘。

参考资料:

https://pve.proxmox.com/pve-docs/chapter-sysadmin.html#sysadmin_zfs_change_failed_dev
https://forum.proxmox.com/threads/how-to-regenerate-etc-kernel-proxmox-boot-uuids.99333/
https://pve.proxmox.com/pve-docs/chapter-sysadmin.html#sysboot_proxmox_boot_tool

赞(1)
未经允许不得转载:荒岛 » 《OVH相关》更换Proxmox VE ZFS RAID10阵列中的硬盘
分享到: 更多 (0)

评论 2

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    lala好高产 :mrgreen: ,话说买这么多服务器是要跑什么大型业务吗 :shock:

    麦马士5天前 Firefox 132.0 Firefox 132.0 Windows 10 x64 Edition Windows 10 x64 Edition回复
    • 买了挂探针吃灰,哈哈=。=后续有打算生小鸡出来免费送几台=。=

      LALA4天前 Google Chrome 130.0.0.0 Google Chrome 130.0.0.0 Windows 10 x64 Edition Windows 10 x64 Edition回复

分享创造快乐

广告合作资源投稿