kicks|装在笔记本里的私有云环境:准备篇( 二 )


kicks|装在笔记本里的私有云环境:准备篇
文章插图

为了方便读者选择,展开聊聊两者在一些细节体验上的差异。
ESXi 和 Proxmox VE 细节体验差异先聊聊大家最关注的费用问题,两者虽然同为付费软件,但是均可免费使用:前者安装之后即可免费使用,后者则需要先进行免费许可的申请,不过 ESXi 提供了两个月的试用期,这个时间足够我们申请免费许可了。
再来看看同为免费版本的软件功能差异,对于小型的虚拟化场景而言,两者在提供功能上几乎没有差别。免费版的 ESXi 存在一个每台虚拟机最多使用8个虚拟核心的限制。
在扩展定制能力上,PVE 远胜于 ESXi,你可以将前者视为安装了 QEMU 虚拟机和 KVM 内核的标准 Debian 系统,而后者则是一套经过精简的定制系统。ESXi 仅提供商业产品和硬件的支持,所以不少消费级产品的硬件设备会存在缺少驱动的问题,举几个例子:核显、指纹识别、摄像头、触摸板、有线或者无线网卡。这个情况在完全开放的标准 Linux 环境下会有好转,比如我们之前通过更新内核,来解决 Ubuntu Desktop 版本下的 AMD GPU 的支持问题;比如我们之前通过自己编译 Realtek 网卡驱动来解决无线网卡不工作的问题。
不过开放灵活背后的代价就是“稳定性”,这点需要自行掌握平衡。
额外有一个小细节是,如果我们使用笔记本作为虚拟化宿主机,PVE 可以通过调整 Debian 引导参数、添加启动脚本来实现屏幕的自动休眠,避免烧屏。而 ESXi 则无法直接在应用软件层面实现这个功能,长时间开着屏幕用,一来费电(10w以内),二来会存在硬件损耗(烧屏)。解决的方法也不是没有,官方社区曾有人也做过一些尝试,比如拆卸屏幕,制作开关;比如将显卡和显示器直通给一台虚拟机,然后在虚拟机里设置休眠;把屏幕和键盘面闭合,让屏幕断电,再设置笔记本合盖不休眠等等。
当然,有一个更省事的方法,一般笔记本在接近闭合的时候,会自行断电,所以可以考虑拿一些东西支撑在屏幕和键盘之间,这样既无需设置合盖休眠、又无需拆卸屏幕排线、还不用折腾设备直通虚拟机,节约了不少机器资源。当你需要的时候,打开屏幕,还能够直接通过笔记本操作 ESXi 管理终端,非常方便。
规划基础环境折腾完基础虚拟化环境后,接下来聊聊虚拟机的具体功能规划问题。
前文提到了我的硬件资源池只有8C16T,以及40GB左右的内存,以及1.5TB的磁盘,想要实现一个简化过的私有云还是挺紧张的。
kicks|装在笔记本里的私有云环境:准备篇
文章插图

为了维护和使用的方便,我对资源进行了这样的分配:
Base:2核心4GB内存200G磁盘Monitor:2核心4GB内存200G硬盘Database:2核心4GB内存200G硬盘Storage:2核心4GB内存200G硬盘Node1Node3:2核心8GB内存100G硬盘
上面的虚拟机分别提供“偏基础、通用服务”、“监控服务及日志存储”、“应用数据库”、“对象存储”、“应用集群运行环境”。考虑到运行稳定性,我将监控和数据库的持久化放置在一块磁盘,将剩余的机器持久化到另外一块磁盘中。
如此分配下来,基本不存在“超售”的情况,即使设备全部资源跑满,也会空闲出两个线程保证 ESXi 的运行和虚拟机的调度。因为我使用的硬盘类型是 SSD,所以我分别预留了 50G、200G 的磁盘剩余空间,避免磁盘接近写满时的性能骤降问题。
批量创建虚拟机因为我使用的是免费版的 ESXi ,无法使用 vCenter。但是批量创建虚拟机并非 vCenter 特权。PVE 有模版创建方案,ESXi 则默认支持通过批量复制虚拟机,然后在“存储库”中选择注册虚拟机,来完成批量创建。