说明
使用Proxmox Virtual Environment(PVE)好几年了,看着它的版本从2.3发展到到6.1,功能越发完善和强大。一直觉得对于中小企业来说,PVE完全可以替代VMWare Vsphere。
当然作为开源的虚拟化平台,PVE并不完美,也有出问题的时候,下面是几个故障处理的实例,都是我自己踩过的坑,供PVE爱好者参考。
故障实例
迁移报错ssh登录有错误信息
Host key verification failed when migrate
Can't connect to destination address using public key
# ssh -o 'HostKeyAlias=ynode001' root@172.16.100.1
Warning: the RSA host key for 'ynode001' differs from the key for the IP address '[172.16.100.1]:60019'
Offending key for IP in /root/.ssh/known_hosts:1
Matching host key in /etc/ssh/ssh_known_hosts:1
Are you sure you want to continue connecting (yes/no)? no
Host key verification failed.
# sed -i '1d' /root/.ssh/known_host
# >/root/.ssh/known_host
迁移报错ssh登录正常
但是实际上使用ssh直接登录又可以:
错误原因和上面类似,还是ssh的认证出错,解决方法是把本机的公钥导入迁入节点的许可文件里面。
# ssh -i .ssh/id_rsa.pub root@172.17.100.12
pve-cluster不可启动
ipcc_send_rec failed: Connection refused
查看'/etc/init.d/pve-cluster'中的'start_server()'
# 'start-stop-daemon --start --quiet --pidfile /var/run/pve-cluster.pid --exec /usr/bin/pmxcfs -q'
webgui信息不同步
这通常是pveproxy服务问题,重启下即可:
也可以重启集群服务,不会影响运行的虚拟机和容器:
VNC图形接口不能运行
Host key verification failed.
TASK ERROR: Failed to run vncproxy.
LXC不能启动
# pct config ctID
# lxc-start -n ctID -F -l DEBUG -o /tmp/lxc-cdID.log
PVE不能启动
开机后没有找到pve文件卷,屏幕显示大致如下:
这种情况是因为linux下的dm模块还没有来得及加载,所以不能激活卷,自然就不能读取里面的逻辑卷。
initramfs> modprobe -q dm-mod
initramfs> lvm vgchange -aly
initramfs> exit
彻底解决很简单,延长启动时间即可,修改grub配置文件,增加一行延迟启动:
管理文件丢失
Failed to reload-or-restart pvedaemon.service: Transaction is destructive.
See system logs and 'systemctl status pvedaemon.service' for details.
dpkg: error processing package pve-manager (--configure):
subprocess installed post-installation script returned error exit status 4
dpkg: dependency problems prevent configuration of proxmox-ve:
proxmox-ve depends on pve-manager; however:
Package pve-manager is not configured yet.
dpkg: error processing package proxmox-ve (--configure):
dependency problems - leaving unconfigured
Errors were encountered while processing:
pve-manager
proxmox-ve
E: Sub-process /usr/bin/dpkg returned an error code (1)
# rm /var/lib/dpkg/info/pve-manager.*
# rm /var/lib/dpkg/info/proxmox-ve.*
# apt-get update
# apt-get dist-upgrade
# apt-get upgrade
PVE的问题其实也是GUN/Linux的问题,作为开源软件,没有商业软件那么多的开发和测试,有些时候需要用户自己动手动脑。