一直认为:只有没钱的人才会在家玩虚拟机
有人想知道iN的家里的设备是什么样子的,装修没弄完呢,绝大多数的设备还没进场呢,但是iN正在构建一个形似数据中心的家。为的就是让iN的一大群计算机有一个地方放。iN家里面有的并不是一台两台电脑,而是“一大群”具体的数量根本没有数过。
现在的装修现场除了固定的基础设施之外ip地址已经分出去了19个。
这也是iN这些年最为诡异的地方,别人家的子网掩码设置为255.255.255.0 就基本上差不多够了,而iN在好几年前就发现这种方法真心的不够用了。
有一次和朋友喝酒聊天谈起家中设备太多的问题,朋友建议:要不然你部署点虚拟机呗……iN立刻就怒了,甩一句话“只有没钱的人,才在家玩虚拟机”。
这就可能会给很多玩NAS和家庭实验室的玩家泼了一盆冷水,同时也会惹怒不少人。当然了,现在虚拟机最大的有钱玩家是@王思聪ㅤ人家百万人民币搭建一个能跑分跑到世界四的服务器搁在家里厕所里,也不能算作没有钱的人……
但就日常使用而言,家里的各种小服务器并不在强而需要“很多很多”的数量。
这个事情今天就给大家讲一讲:
很多主流在商业应用的虚拟机软件例如VMware部署方式和很多家庭玩家的认知是不一样的。
往往虚拟机并不是一个服务器,而是若干个服务器通关高速网络和光通道存储系统组成的一个大型集群。在这个大型集群内去跑成百上千台虚拟机。一旦某些服务器出现了故障,虚拟机的诊断系统可以在一瞬间就定位故障服务器,并且将故障服务器上的虚拟机迁移到另外的服务器上,这种迁移操作和故障服务器没有关系,迁移的是磁盘阵列中的数据指向和跑在高速网络上的共享内存区块分配。
也正因为如此,商用的虚拟机系统才可以真正的保障业务的不间断运行。
到了家里玩虚拟机的环境往往是变了味道的:
通常是由一个软路由或者NAS在单机跑虚拟化应用,这样做其实挺憨的。为什么这样说呢?在虚拟系统中多服务器、多交换机、多硬盘阵列……等等复数的设施优势没有继承的基础上只搞出了一个我的一个设备可以同时运行很多OS镜像“宦官虚拟化”,被阉割掉的恰恰是虚拟化系统得以真正稳定运行的精髓部分。
这样的单机虚拟化,自己用是“傻”,忽悠别人用就是“坏”了。别无其它解释。
那么在家里面怎么玩虚拟化呢?答案是——别在家搞虚拟化的东西,你玩不起!虚拟化设备并不是只需要你的CPU支持VT-x技术。
你就能够可以虚拟化自己的服务器和日常使用环境的,VT-x技术只是虚拟化正常运作的众多基础条件中最简单的一个条件而已。完整可用的虚拟化系统通常需要建立在一个故障迁移和存储共享的网络集群中。
例如上面这个虚拟化系统,大家就可以发现在图中的任意一个设备到相邻设备都有至少两条路径。这么大的规模在家里是很难搞出来的。现在有人在问几百台虚拟机的系统和几个虚拟机的系统是不是一样也都要这么大的规模呢?答案是肯定的,如果是用来干活的系统,3台虚拟机和3000台虚拟机的架构是几乎相同的。
这样一来就决定了家里的那种只有一个小服务器甚至是小NAS的虚拟机根本胜任不了“能够不间断地支持大家干活”的任务。所以说这种“宦官虚拟系统”是除了搞一点学习和实验之外是完全没有意义的。
那家里还怎么搞虚拟化?iN就劝大家一句话——千万别搞!
如果要做一些实验和有一些小应用要不间断地跑起来呢?还是乖乖地用物理机,别对虚拟化抱任何家用的幻想。
当然了,iN所指的物理机包括但不限于X86服务器、树莓派、ESP8266的小芯片。这些东西基本上都可以做到丰俭由人。
一些极端的应用,例如做一个远程渲染服务器——别犹豫,直接上2-4U的X86服务器,这些机器的配置性能和运行效率要远高于普通的PC机,也绝对的要高于虚拟机。
一些更简单繁杂的应用完全可以使用树莓来做。现在有很多集成度很高的树莓派19寸支架。
这些支架可以将树莓派很方便的收纳入服务器机柜中。
基本上在2U的高度上可以放置10台树莓派。这样的集成密度其实比虚拟机要高得多。
当然了,iN也不方便说别人家里如果都是虚拟机怎么怎么样,这样做不地道。但是iN说到自己的处理方式,大体上也就是上面说的了。iN自己的习惯就是一台电脑如果运行photoshop的话,也就不会让它再去运行Solidworks,一台电脑如果是打魔兽世界的,那么也同样在这台电脑上看不到魔兽世界之外的任何东西。
所以说iN自己的电脑单台配置其实都并不高,但运行软件都极其流畅。这就是iN的“zippo打火机原则”——做的事情越少、功能越少、故障也就越少。