公司有一个 PVE 的研发环境,部署在一台服务器上面,24 核 96G 的,有 4 块 2T 的硬盘。 环境是我负责维护,之前没看过 PVE 里面的设置,只是在上面创建虚拟机。 昨天仔细看了下配置,发现存在一些问题,这个需要怎么调整比较好。
之前的情况是有一块硬盘 sda1 做了 LVM ,该硬盘作为根文件系统以及 PVE 的存储使用。 还有一个 ZFS 的存储,使用了全部 4 块硬盘做了 raidz1-0 。 系统能正常跑起来,但是目前发现其实四块硬盘只用了 sda1 ,ZFS 完全是废弃的,而且 ZFS 同时也挂载到了根分区(可能 LVM 优先级更高,现在根分区应该是跑在 sda1 的 LVM 上面),而且由于 SDA1 做了 LVM ,所以 ZFS 状态是丢失了一块硬盘。
lsblk 如下:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 1.8T 0 disk
├─sda1 8:1 0 1007K 0 part
├─sda2 8:2 0 512M 0 part
└─sda3 8:3 0 1.8T 0 part
├─pve-swap 253:0 0 8G 0 lvm [SWAP]
└─pve-root 253:1 0 96G 0 lvm /
sdb 8:16 0 1.8T 0 disk
├─sdb1 8:17 0 1007K 0 part
├─sdb2 8:18 0 512M 0 part
└─sdb3 8:19 0 1.8T 0 part
sdc 8:32 0 1.8T 0 disk
├─sdc1 8:33 0 1007K 0 part
├─sdc2 8:34 0 512M 0 part
└─sdc3 8:35 0 1.8T 0 part
sdd 8:48 0 1.8T 0 disk
├─sdd1 8:49 0 1007K 0 part
├─sdd2 8:50 0 512M 0 part
└─sdd3 8:51 0 1.8T 0 part
zfs 状态如下:
root@pve:/rpool/ROOT/pve-1# zpool status
pool: rpool
state: DEGRADED
status: One or more devices could not be used because the label is missing or
invalid. Sufficient replicas exist for the pool to continue
functioning in a degraded state.
action: Replace the device using 'zpool replace'.
see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-4J
config:
NAME STATE READ WRITE CKSUM
rpool DEGRADED 0 0 0
raidz1-0 DEGRADED 0 0 0
9698329627238426027 UNAVAIL 0 0 0 was /dev/disk/by-id/ata-HGST_HUS724020ALA640_PN2134P6HDG0LP-part3
ata-HGST_HUS724020ALA640_PN2134P6HDTJ4P-part3 ONLINE 0 0 0
ata-HGST_HUS724020ALA640_PN2134P6HE1BRP-part3 ONLINE 0 0 0
ata-HGST_HUS724020ALA640_PN2134P6HDT8DP-part3 ONLINE 0 0 0
errors: No known data errors
zfs 挂载点如下
root@pve:/# zfs list
NAME USED AVAIL REFER MOUNTPOINT
rpool 1.77T 3.38T 151K /rpool
rpool/ROOT 1.23G 3.38T 140K /rpool/ROOT
rpool/ROOT/pve-1 1.23G 3.38T 1.23G /
rpool/data 1.77T 3.38T 7.38G /rpool/data
可以看到 LVM 的 pve-root 和 zfs 的 rpool/ROOT/pve-1 都挂载了根目录。目前我已经将 LVM 里面的镜像文件移动到了 ZFS 里面。 但是这个根文件系统以及 ZFS 丢失的磁盘如何处理呢?
目前有没有办法将根文件系统移动到 ZFS 里面,然后再将 SDA1 重新添加回 ZFS ,有没有什么数据丢失风险或者无法开机的风险。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.