V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
documentzhangx66
V2EX  ›  Linux

PVE 7.x 是不是一堆坑?

  •  
  •   documentzhangx66 · 138 天前 · 5316 次点击
    这是一个创建于 138 天前的主题,其中的信息可能已经有所发展或是发生改变。

    群友都建议用 PVE 6.x 。

    54 条回复    2022-10-21 20:34:13 +08:00
    chnsatan
        1
    chnsatan  
       138 天前
    完全没碰到坑,难道是我太幸运么
    helloet
        2
    helloet  
       138 天前
    暂时没发现
    14
        3
    14  
       138 天前
    在用最新的 7.2-7 但是内核降级到了 5.13.19-15 内核,显卡才能正常直通,供参考

    ```
    proxmox-boot-tool kernel pin 5.13.19-15-pve
    proxmox-boot-tool refresh
    ```
    wonderblank
        4
    wonderblank  
       138 天前
    PVE 7 稳如泰山。
    acoldfox
        5
    acoldfox  
       138 天前
    在用 7.2-7 ,装了一堆东西,唯一遇到的问题是 win10 显卡直通驱动会报 43 错误,后面干脆就直通给一个 ubuntu 专门跑 jellyfin 发现非常稳定
    arfaWong
        6
    arfaWong  
       138 天前
    没发现
    Rinndy
        7
    Rinndy  
       138 天前 via iPhone
    怎么都喜欢 pve 啊,esxi 不好吗🌚
    ea3ba5c0
        8
    ea3ba5c0  
       138 天前
    @Rinndy 程序员不都是手写 qemu 启动参数吗?
    两个都不要。
    w2exzz
        9
    w2exzz  
       138 天前
    用啥 pve……直接用 Linux 系统然后装 kvm 不好吗?
    ltkun
        10
    ltkun  
       138 天前 via Android
    有啥坑 稳了好久了 不更新内核的话都不用重启
    documentzhangx66
        11
    documentzhangx66  
    OP
       138 天前
    @Rinndy
    我找了一堆民用 pc 、洋垃圾服务器、正规服务器,然后又找了一堆 esxi 7.2 的 iso ,全卡在最后一步说没有网卡驱动。
    hanssx
        12
    hanssx  
       138 天前
    很好用啊,没遇到问题
    CatCode
        13
    CatCode  
       138 天前
    @documentzhangx66 是的 esxi 要被驱动气死
    documentzhangx66
        14
    documentzhangx66  
    OP
       138 天前   ❤️ 1
    1.我一开始用 PVE 7.2 官方 iso 装机,用 ext4 装下来倒是没问题,但因为后期老玩坏系统,打算改用 btrfs ,因为 btrfs 有快照。

    然后开始了连踩坑。

    2.继续用 PVE 7.2 官方 iso 装机,使用 btrfs 模式,发现居然没有设置 swap 分区的步骤,装完后,果然没有 swap 。

    3.然后改用先自行安装 Debian 11.4.0 ,这样就能设置 lvm - swap + btrfs root ,然后再用 Debian 11.4.0 ,按照官方步骤 apt install pve 的做法,来进行安装。

    4.PVE 创建集群,地址只能填 IP ,不能填域名。然后集群只能加节点,删节点要关机!要关机!然后必须跑机房。而且删节点是只能命令行,Web GUI 只管生不管养,也就是只有创建集群的按钮,没有删除节点的按钮。

    PVE 虚拟机的名称也必须符合 DNS 规则,这挺操蛋的,因为连下划线都不允许。

    5.Web GUI 上传镜像,经常失败,且无法批量上传。

    6.虚拟机创建时,虚拟机类型无法精确到具体版本,比如 CentOS 7 、Windows 7 等等。

    7.官网说,只有 File base storage ,比如 Ceph 与 Btrfs ,才能存储所有类型的文件。普通 Block base storage ,比如 ext4 、lvm 、lvm-thin ,只能存放虚拟机文件。我不知道为啥要有这个限制,因为按官方的说法,除了 Ceph 、btrfs 、zfs 之外,其他的都不允许上传 ISO 、创建 backup 等。故意的?

    8.更操蛋的是,Ceph 安装好后,居然也只能存放虚拟机文件,Web GUI 没有 ISO 、Backup 等文件上传入口。故意的?

    另外,PVE 明明支持 btrfs ,但 Web GUI 上有 zfs 入口,却没有 btrfs 入口,导致无法通过 Web GUI 把新磁盘制作成 btrfs ,故意的?

    9.支持 vmdk ,但不支持 vmdk 的快照,故意的?

    10.lvm 居然不支持虚拟机快照。故意的?

    11.这应该不是 PVE 的问题,但我也要提一下,qcow2 ,明明支持稀疏,创建后,ls 就是完整大小,但 du 才能显示真实的稀疏大小。如果要复制或打包这个文件,cp 、rsync 、tar 等等,全都要加上特殊的稀疏参数,如果忘记了,那就是按全尺寸处理。但 PVE 内给 qcow2 的虚拟机备份,倒是没这个问题,默认支持稀疏。

    12.Ceph ,这就更搞笑了,刚装上,创建 pool ,然后删除时,就一直卡主。用了官网论坛给的强删命令后,Ceph 功能就崩溃了,Web GUI -> 一直在转圈圈加载中,重启后也一样,还会影响 PVE Web GUI 的其他功能。

    有个群友向我展示了他的 PVE 集群,包括 Ceph 都用上了,没任何问题。我问他版本,他说是 6.x 。
    Yien
        15
    Yien  
       138 天前 via Android
    @documentzhangx66
    求群
    用文件夹存储,可以支持所有存储类型。
    documentzhangx66
        16
    documentzhangx66  
    OP
       138 天前
    @Yien Q 群:147539693
    微信群: https://icloudnative.io/ ,右侧有入群链接。
    ps.这两个群都是小伙伴们推荐的,群主不是我。

    是的,我现在就是用文件夹,没能用上 Ceph 感觉很可惜。
    Yien
        17
    Yien  
       138 天前 via Android
    @documentzhangx66
    谢谢分享

    没用过 Ceph
    WuSiYu
        18
    WuSiYu  
       138 天前 via iPhone
    @documentzhangx66
    7:这个很合理啊,只有文件系统才能放文件,lvm 这种东西是卷管理系统,不是文件系统。ISO 这种随便本地 rootfs 里找个地方放就行
    10:lvm thin 可以快照
    11:稀疏文件是这样,但我记得 qcow2 本身就可以精简置备
    WuSiYu
        19
    WuSiYu  
       138 天前 via iPhone
    另外集群的“移除节点”确实有坑,移除后可能会留下 bug ,最好不要移除节点
    iBugOne
        20
    iBugOne  
       138 天前   ❤️ 5
    从 PVE 6.1 一路用上来,去年 5 月就积极换上 PVE 7.0 的用户,对楼主在 #14 列出的坑作出回复:

    2. PVE 的安装器十分简约,对于需要自定义分区结构,包括设置 LVM 等,官方推荐的操作也是先装 Debian

    4. 集群内的节点信息涉及多个软件配置,包括 /etc/hosts 和 corosync 等。在 PVE 的设计中,集群内部应当有稳定的内网通信条件,其中“稳定”就包括了固定的 IP 地址,因此加节点只能填写 IP 。主机名(域名)的规则由 RFC 1035 规定,允许的符号里没有下划线(个人觉得减号比下划线好用,可以少按 Shift )

    4. 关于关机:服务器级别的机器应该都有远程管理卡提供 IPMI 界面,配置正确的情况下除了直接动硬件之外应该不需要物理接触机器,包括装系统也能远程装。如果你有一个集群的机器都没有配好远程管理的话……只能祝你好运了。

    5. Web GUI 功能较为受限,建议熟悉 SSH 维护方式。

    6. 虚拟机类型无需精确到具体版本,不同的虚拟机类型仅在 QEMU/KVM 内部微调一些参数,因此同样是 Linux 虚拟机,就没有必要区分 CentOS 还是 Ubuntu 了。

    7. 只有 File-based storage 才能存放文件,因为它们是“文件”,有文件名等文件元信息,这需要“文件系统”的支持。Block-based storage 只能存放不需要元信息的“块数据”,如虚拟机磁盘等。另外,Directory (指定一个目录)是最简单的 File-based storage ,你只需要 mount 一个合适的文件系统就行了,没有什么门槛。

    7. ext4 应该不算 Block-based storage 吧……

    7. Ceph 提供两种存储模式:基于文件的 CephFS 和基于块设备的 Ceph RBD ,注意区分。

    8. 同上,你很可能搞了个 Ceph RBD ,无法直接存储文件。

    9. 很遗憾这不是 PVE 的锅,QEMU 不支持对 vmdk 创建快照(请使用 qcow2 或 ESXi )。个人建议用“匹配”的方案,就像在 Windows 上用 NTFS ,在 macOS 上用 APFS ,在 Linux 上用 ext4/XFS 一样。

    10. 很遗憾这也不是 PVE 的锅。LVM 本身只是一种逻辑卷的实现方案,不支持 copy-on-write ,因此“创建快照”的操作需要复制整个 LV 。你可以使用 LVM Thin (它是 CoW 的)作为虚拟机的磁盘,可以快速创建快照。

    11. 这里涉及一处细节优化,即“稀疏文件”要额外记录块偏移量的映射关系。qcow2 格式本身是支持稀疏磁盘的,如果在支持稀疏文件的文件系统上再使用 qcow2 自己的稀疏特性,相当于多了一层稀疏映射表,会影响虚拟磁盘的性能。具体选择这么做的原因和实现细节我就不清楚了。


    对于 1 和 12 ,因为我没玩坏过 PVE 主机系统(尽量保持主机“干净”,只在主机上安装运行必要的内容,业务等一律开虚拟机跑),也没有亲自使用过 Ceph ,无法提供回复,请见谅。
    documentzhangx66
        21
    documentzhangx66  
    OP
       138 天前
    补充一个 PVE 7.2 的网络问题,不知道算不算 Bug ,也不知道到底是 PVE 7.2 的问题,还是 Debian 11.4.0 的问题:

    1.在 Windows 上跑 VMware Workstation 时,VMware Workstation 提供了一个叫 NAT 网段的东西,非常好用。

    2.这个 NAT 网段的大概用法是,VMware Workstation 内部维护了一个 192.168.x.0 的网段,x 是随机的,可以修改。这个网段里有 253 个可用 IP 地址。可以把虚拟机分配到这个网段。

    3.主机 host 与该网段的虚拟机,可以互相访问。

    4.该网段内部的虚拟机,可以互相访问。

    5.该网段内部的虚拟机,可以直接访问主机所在的内网,以及可以直接访问互联网。

    6.主机所在的内网的其他电脑,互联网上的电脑,无法直接访问该网段的虚拟机,但可以通过端口映射,来访问某个端口。VMware Workstation 内部有一个端口映射编辑器,用来处理这个问题。相当于,docker 的 docker run -p 8080:8080 -p 8443:8443 中的 -p 端口映射 功能。

    问题来了:

    PVE 官方有配置案例:

    https://pve.proxmox.com/wiki/Network_Configuration

    ->

    Masquerading (NAT) with iptables

    ->

    auto lo
    iface lo inet loopback

    auto eno1
    #real IP address
    iface eno1 inet static
    address 198.51.100.5/24
    gateway 198.51.100.1

    auto vmbr0
    #private sub network
    iface vmbr0 inet static
    address 10.10.10.1/24
    bridge-ports none
    bridge-stp off
    bridge-fd 0

    post-up echo 1 > /proc/sys/net/ipv4/ip_forward
    post-up iptables -t nat -A POSTROUTING -s '10.10.10.0/24' -o eno1 -j MASQUERADE
    post-down iptables -t nat -D POSTROUTING -s '10.10.10.0/24' -o eno1 -j MASQUERADE

    我照着抄都用不了(不是小白那种完全 ctrl + c / v ,而是按照我自己的网络环境,修改了里面的 IP 地址),只能完成主机 host 与 VM 的互访,但 VM 始终无法上外网。

    额外:
    我在前面提到的群,群里有大佬说他用 pve 6.x 版本,很稳。然后他有个 pve 5.x 的生产环境,已经稳了 700 天。

    所以我怀疑,我追新 PVE 7.2 ,是不是不对?

    我打算抽空试试 PVE 6.x ,看看是不是也这样。

    另外群里有小伙伴说 PVE 7.x ,也稳定了一年多,但我没问具体版本号。
    Yien
        22
    Yien  
       138 天前
    @documentzhangx66
    我的是這樣的 PVE6

    iface eno4 inet manual

    auto vmbr0
    iface vmbr0 inet static
    address 外網 IP
    gateway 網關
    bridge-ports eno1
    bridge-stp off
    bridge-fd 0

    auto vmbr1
    iface vmbr1 inet manual
    bridge-ports eno2
    bridge-stp off
    bridge-fd 0

    auto vmbr2
    iface vmbr2 inet manual
    bridge-ports eno3
    bridge-stp off
    bridge-fd 0

    auto vmbr3
    iface vmbr3 inet manual
    bridge-ports eno4
    bridge-stp off
    bridge-fd 0

    auto vmbr4
    iface vmbr4 inet static
    address 10.10.10.1/24
    bridge-ports none
    bridge-stp off
    bridge-fd 0

    post-up echo 1 > /proc/sys/net/ipv4/ip_forward
    post-up iptables -t nat -A POSTROUTING -s '10.10.10.0/24' -o vmbr0 -j MASQUERADE
    post-down iptables -t nat -D POSTROUTING -s '10.10.10.0/24' -o vmbr0 -j MASQUERADE
    spediacn
        23
    spediacn  
       138 天前 via iPhone
    PVE 的集群里,节点名字不能有横杠,看着蛋疼
    iBugOne
        24
    iBugOne  
       138 天前
    @documentzhangx66 #21 Linux 的网络配置具有一定的专业性,只是 Docker 帮你配好了很多东西。

    首先关于 Windows 上的 VMware Workstation ,它自带了一个网关(通常是 192.168.x.2 ,注意你主机的对内地址是 192.168.x.1 )来处理很多事务;而对应 Linux 上的操作则是直接将主机同时作为网关使用,配置的是主机本身的路由、防火墙和 NAT 等规则,其中 NAT 也包括端口转发事项。

    简单地来说,VMware Workstation 自带的那个网关的角色就相当于常见的家用路由器。

    如果要把 PVE Host 当作“家用路由器”给 VM 访问外网呢,对于你贴的那段 interfaces 配置,需要改的地方其实有两个:出口网卡名和 IP 地址。注意出口网卡的名称有多处需要修改,尤其是最底下的 iptables 命令的 -o 参数。在 iptables 中网卡名是按字符串匹配的,所以这个地方即使你写错了,插入规则的时候也不会报错,只是它不会生效,也难以发现。

    你可以观察 ip route 的输出,看 default 那行中 dev 后面的网卡名,或者 ip route get 123.45.67.89 (当然可以换成任意一个外部的地址),然后将正确的网卡名写入 interfaces 文件里。

    如果你还在主机上装了 Docker (不推荐这么干),请额外执行 iptables -P FORWARD ACCEPT 恢复 Docker 改过的设置。

    最后,根据你目前发表过的内容,除了 Ceph 我没有用过无法评论之外,其他几个问题,我可以肯定你将会 PVE 6 之后还是会按一模一样的顺序挨个遇到。Linux 与其他系统不同的地方就在于很多时候追新几乎没有坏处,不想某 bug 11 系统让我还在坚守 bug 10 。
    dangyuluo
        25
    dangyuluo  
       138 天前
    群友建议就听群友的吧
    wm5d8b
        26
    wm5d8b  
       138 天前 via Android
    pve7 直接劝退了,换了 esxi7 ,反正家用是免费的,hp 和 lenovo 之类的有商用产品线的,会提供官方打满驱动的安装镜像
    ExplodingFKL
        27
    ExplodingFKL  
       138 天前 via Android
    完全没有碰到过问题, 已经半年没关机了... 只不过 ceph 算了... 磁盘不够,只能用用 zfs
    kkthy
        28
    kkthy  
       138 天前
    @Rinndy esxi 单节点没有克隆功能,很不方便
    gearfox
        29
    gearfox  
       138 天前
    我个人没有那么高的各种需求,windows+vm workstation 躺平了
    afirefish
        30
    afirefish  
       138 天前
    pve 7.2-7 目前遇到两个问题
    LSI9364 阵列卡报错、上三星的 pm981a 无法启动。第一个问题降级 5.13.19 的内核可以解决,第二个问题可能是我自己的原因。
    loshine1992
        31
    loshine1992  
       138 天前
    就用用 ikuai 和 openwrt 没碰到任何问题
    wolf1981
        32
    wolf1981  
       138 天前
    買了 changwang N5105 軟路由,安裝了 PVE7, VM 老是不定期死機或重啟,用 esxi7 也一樣,據說是 N5105 硬件的坑
    que01
        33
    que01  
       138 天前
    软路由在用 懒得搞直通,这个前提下 还是很稳的
    cxsz
        34
    cxsz  
       138 天前
    在用 7.2 ,显卡直通完全没有问题
    yaoyao1128
        35
    yaoyao1128  
       138 天前 via iPhone
    @Rinndy 塔式 gen8 没有 uefi 引导,esxi 新版本跑不了,r86s 的 emmc 不能用,x58 的 z400 的 cpu 不能用 esxi……所以最后只能 pve 了(躺)
    bao3
        36
    bao3  
       138 天前
    PVE 7 ,完全没碰到问题。。。
    lc1450
        37
    lc1450  
       138 天前
    @documentzhangx66 #21 创建一个新的 linux bridge (vmbr1) 网段自己设置,再装一个 isc-dhcp-server 给这个接口做 dhcp 服务, 虚拟机添加这个网络后就能在同局域网

    今天也遇到一个问题,不能启动 debian-live-11.5.0-amd64-xfce ,日志如下,具体啥情况也不知道
    ```
    Sep 13 13:48:35 pve pvedaemon[104439]: VM 103 qmp command failed - VM 103 qmp command 'query-proxmox-support' failed - unable to connect to VM 103 qmp socket - timeout after 31 retries
    Sep 13 13:48:36 pve qm[117755]: VM 103 qmp command failed - VM 103 qmp command 'set_password' failed - unable to connect to VM 103 qmp socket - timeout after 31 retries
    Sep 13 13:48:36 pve pvedaemon[117753]: Failed to run vncproxy.
    ```
    FstarKing
        38
    FstarKing  
       138 天前
    各位 PVE 大佬,想问下如果我有 2 个 nvme 硬盘 2 个显卡,分别直通到 pve 下的两个 windows 日常使用,能长期稳定跑吗
    yehoha
        39
    yehoha  
       138 天前
    @iBugOne 大佬,我 7 版本跑着跑着 web 管理台里图标都变灰色了,虚拟机容器有个?图标。。这种要怎么排查
    root01
        40
    root01  
       138 天前
    新装 pve7.0 2 块硬盘,一块 ssd 作为系统盘 一块 hd 竟然不会自动挂载,我重装系统是个 linux 都是会挂载,这个 pve 竟然不会
    lwch
        41
    lwch  
       138 天前
    相当的稳,顺便推销一下我做的 PVE 监控程序

    https://github.com/lwch/proxmox-exporter
    documentzhangx66
        42
    documentzhangx66  
    OP
       138 天前
    @wolf1981

    建议监控一下 N5105 的 CPU 、主板温度。我有一块主板,明明还没到 CPU 的 Tcase 温度,却总重启。然后我一怒之下,直接给这块主板,上面加了 3 个 2k 转 12cm 风扇,主板下面也装了 3 个这样的风扇,然后直接用网格铁板把主板架空,再也没重启过。

    另外建议测试一下内存条。Memtest86+。
    documentzhangx66
        43
    documentzhangx66  
    OP
       138 天前
    @lc1450

    建议试试:

    1.debian-live-11.5.0-amd64-standard+nonfree.iso

    2.debian-live-11.5.0-amd64-gnome+nonfree.iso


    如果不行,降级试试:

    debian-live-11.4.0-amd64-gnome+nonfree.iso
    documentzhangx66
        44
    documentzhangx66  
    OP
       137 天前
    @root01

    PVE 7.2 也不能自动挂载。

    不过 Linux 系其实不建议自动挂载,我建议自己用命令进行格式化、分区,然后 fstab 挂载,会更定制一点。
    deorth
        45
    deorth  
       137 天前 via Android
    看回复我看懂了一件事,就是没有 debian+手撸 qemu 命令行实现你需求的能力不要碰 pve ,因为到处都是 webui 没提供或者没做好的功能。习惯命令行操作只把 webui 当辅助的人才适合用 pve
    documentzhangx66
        46
    documentzhangx66  
    OP
       137 天前
    @deorth

    1.我会命令行。

    2.我吐槽的不是这。我吐槽的是,官网有文档,但实际与官网文档不符。

    3.如果官网以命令行形式给出,那我一开始就去研究命令行了,不会浪费这么多时间。
    lx0758
        47
    lx0758  
       137 天前
    esxi 大法好
    deorth
        48
    deorth  
       137 天前 via Android
    @documentzhangx66 不是对你,是针对本楼内的一些回复的
    xxfye
        49
    xxfye  
       137 天前 via Android
    linux 没驱动,起码还能找找。
    我 usb 蓝牙驱动就是从安卓 10 上扒下来。
    exsi 驱动没了就是真没了。
    ByteCat
        50
    ByteCat  
       137 天前
    没遇到什么坑,但是 A 卡直通好像有点问题,不能释放资源,查了一下是卡的通病,不过我就一张 A 卡,其他都是 N 卡
    ruidoBlanco
        51
    ruidoBlanco  
       132 天前
    没坑。用了快一年了。

    tune2fs -l /dev/mapper/pve-root G created
    Filesystem created: Sun Nov 14 08:15:16 2021
    linuxgo
        52
    linuxgo  
       116 天前
    从 6.1 一路升级到 7.2 ,只用 server ,没用显卡功能,没发现有问题
    Bootis
        53
    Bootis  
       100 天前   ❤️ 1
    @14 我也是 7.2-7 显卡直通有问题,升级到 5.19.7-2-pve 可以了
    14
        54
    14  
       99 天前
    @Bootis 感谢,我下次需要重启的时候试试
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   实用小工具   ·   1579 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 11:55 · PVG 19:55 · LAX 03:55 · JFK 06:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.