虚拟机多了,磁盘空间受不了了,每个虚拟机至少占 20G,并且随着虚拟机使用时间越久,临时文件多把虚拟磁盘撑满。目前想到了 2 种不需要挂载硬盘(vmdk 等)的方案,需要持久化数据时通过网络共享交换数据:
WinPE,PE 虽小但基本功能仍然有所欠缺,不知道有没有推荐的功能完备的 PE 系统,(似乎预装虚拟机的 agent 比较难)
PXE,使用 PXE 可以直接通过网络启动(虚拟机的虚拟网卡性能应该是可以的),并可以定制镜像,不是特别熟悉网络启动的工作方式,以及比较好入手的软件
希望有经验的前辈能提供一些意见,交流一下想法
1
ysc3839 2020-07-27 23:46:02 +08:00 via Android
你这两种方案最终都是 ramdisk,即数据存在内存中。这么做的话没法安装一些较大的软件,操作系统本身也缺失很多功能。
|
2
darfux 2020-07-27 23:52:04 +08:00
装完系统做个快照,用完直接回滚掉?
|
3
SgtPepper 2020-07-28 00:47:12 +08:00
加硬盘是最简单的方法
|
4
TsubasaHanekaw 2020-07-28 02:16:42 +08:00
hyperx 差分硬盘,
|
5
chihiro2014 2020-07-28 02:35:50 +08:00
其实搞个 vps,它不香么
|
6
laminux29 2020-07-28 03:13:03 +08:00
1.虚拟机的硬盘有 thin mode 瘦模式,也就是虽然显示是 XX GB,但实际上是按需分配,用多少,分配多少。一个 80G 的瘦模式硬盘,虚拟磁盘文件可能才十几 G 。
2.如果你的文件是实打实地多,这种情况瘦模式也无法满足你的需求,加钱上硬盘是你唯一选择。 不过这年头,硬盘不贵啊。 |
7
ladypxy 2020-07-28 06:58:36 +08:00 via iPhone
PXE 是没有任何问题的
|
8
devliu1 OP @ysc3839 确实,这个想尝试一下,应该不会有大型软件
@darfux 已经用了 Paralles 的回滚模式,使用过程中还是会占据比较大的空间,关机才能收回 @TsubasaHanekaw 差分其实也类似虚拟机链接克隆是一个道理,差分出来的 snapshot 也会慢慢地把空间占满 @SgtPepper @laminux29 就是不太方便加才想这些野路子,按需分配的话,运行过程中临时文件很容易撑满的,很多时候撑大了回收也只能事后处理,类似回滚模式关机才能回收 @chihiro2014 vps 网速还是不太行,带宽贵 |
10
ShinichiYao 2020-07-28 08:00:33 +08:00
先做完一个系统磁盘,后面的新系统虚拟磁盘都基于它作差分,每个系统都很小的
|
11
devliu1 OP 纯 ramdisk 也是一种思路,基于 ramdisk 做差分盘,这样临时文件只会落在 ramdisk 中,不会撑大 vmdk @ysc3839
@ShinichiYao 只要子系统不断使用,临时文件写多了也会变大,也许是我的需求有点极端了😇 |
13
cheng6563 2020-07-28 08:43:18 +08:00 via Android
把临时文件的目录单独挂个 smb 嘛
|
14
devliu1 OP |
16
zzzmh 2020-07-28 09:38:51 +08:00
600 块钱加个 4T 机械盘
|
17
laqow 2020-07-28 09:56:19 +08:00 via Android
强制关机恢复快照可以的,或者磁盘碎片整理后合并快照
|
18
leimao 2020-07-28 10:09:17 +08:00
楼主的头像很搞笑 :)
|
19
shunconf 2020-07-28 16:33:52 +08:00
@devliu1 无盘,需要做无盘服务器,然后客户端通过网络启动加载无盘服务器的镜像。缺点:关机就没数据了,得把数据存到其他指定盘
|
20
devliu1 OP |
21
no1xsyzy 2020-07-28 19:44:32 +08:00
Arch 的教程选择 /tmp 挂 tmpfs,实质上似乎就是个 ramdisk
不知道你的“临时文件”是什么情况 另外,NTFS(?) 也可以把一个盘挂在非盘符根目录的。 其实你的需求就是临时文件不落盘,ramdisk 或者 ramdisk+unionfs 之类是最好的选择。 |
22
devliu1 OP |
23
yingfengi 2020-07-28 23:40:27 +08:00
生产环境还是测试环境,测试环境可以搭好一台虚拟机作为模板,然后其他虚拟机直接基于这个虚拟机创建就好了
|