Proxmox 集群文件系统(“pmxcfs”)是一个数据库驱动的用于存储配置文件的系统,使用 corosync 实时复制给所有集群节点 。 我们用它来存储所有 PVE 相关的配置文件。 尽管文件系统将所有数据存储在磁盘上一个持久性数据库中,但数据的副本驻留在 RAM 中。 这限制了最大大小,目前为 30MB。 这仍然足以存储数千个虚拟机的配置。 该系统具有以下优点:
POSIX 兼容性文件系统基于 FUSE,因此行为类似于 POSIX。 但有些功能根本没有实现,因为我们不需要它们:
文件访问权限所有文件和目录都归用户 root 所有 并拥有组 www-data。 只有 root 有写权限,但组 www-data 可以读取大多数文件。 以下路径下的文件: /etc/pve/priv/ /etc/pve/nodes/${NAME}/priv/ 只能通过 root 访问。 技术我们使用 Corosync 集群引擎的集群通信,和 SQlite 数据库文件。 文件系统是在用户空间实现的,使用 FUSE 。 文件系统布局文件系统挂载在: /etc/pve 文件
符号链接
用于调试的特殊状态文件 (JSON)
启用/禁用调试您可以通过以下方式启用详细的系统日志消息: echo "1" >/etc/pve/.debug 并禁用详细的系统日志消息: echo "0" >/etc/pve/.debug 恢复如果您的 Proxmox VE 主机有重大问题,例如硬件问题,仅复制 pmxcfs 数据库文件 /var/lib/pve-cluster/config.db 可能会有所帮助并将其移动到新的 Proxmox VE 主机。 在新主机上(没有任何VM运行),您需要停止 pve-cluster 服务并替换 config.db 文件(需要权限 0600 )。 然后, 根据 丢失 Proxmox VE 主机 /etc/hostname 和 /etc/hosts,然后重新启动并检查。 (不要忘记你的 VM/CT 数据) 删除集群配置推荐的方法是删除节点后重新安装节点到你的集群。 这确保所有 secret 集群/ssh 密钥和任何共享配置数据被破坏。 在某些情况下,您可能更喜欢将节点放回本地模式,而无需重新安装,这在分离一个节点而不重新安装 从故障节点中恢复或移动Guest对于 nodes/<NAME>/qemu-server/(VMs) 和 nodes/<NAME>/lxc/(containers),Proxmox VE 将包含节点 <NAME> 视为相应Guest的所有者。 这个概念允许使用本地锁而不是昂贵的集群范围的锁来防止并发Guest配置更改。 因此,如果Guest的拥有节点发生故障(例如,由于电源停电,fencing 事件,..),常规迁移是不可能的(即使所有磁盘位于共享存储上)因为这样的本地锁 (死锁)拥有节点是无法获得的。 这对于 HA 管理的Guest来说不是问题,因为 Proxmox VE 的高可用性堆栈包括必要的(集群范围内的)锁定和看门狗功能,以确保正确从受保护的节点自动恢复Guest。 如果非 HA 管理的Guest只有共享磁盘(并且没有其他本地资源仅在故障节点上配置),手动恢复只需从失败的节点中移动Guest配置文件即可。失败节点的目录中的 /etc/pve/ 到一个在线节点的目录(其改变Guest的逻辑所有者或位置)。 例如,将 ID 为 100 的 VM 从 node1 节点恢复到另一个 node2 节点,使用以下命令在集群的任何成员节点上以 root 登录时执行: mv /etc/pve/nodes/node1/qemu-server/100.conf /etc/pve/nodes/node2/
作者:Varden
出处:http://www.cnblogs.com/varden/
本文内容如有雷同,请联系作者!
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
(责任编辑:IT) |