扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
将测试和生产环境虚拟机(VM)分隔需要两套环境。但是,维护这种物理上的分隔是十分昂贵的。而开销并不是唯一需要考虑的方面。主要的考虑点之一是测试服务器的故障可能会生产服务器造成影响。
VMware和其他hypervisor都包含了控制机制来对资源池、预留值和极限值进行了限制。这种资源控制机制允许管理员根据虚拟机的角色和重要性来保证或者限制硬件资源,包括虚拟机的CPU、内存、网络和输入/输出带宽。这种控制机制允许使用更为细化的粒状控制来阻止一台虚拟机占用主机上的所有资源。
所以,如果在一台主机上将测试和生产环境虚拟机混合使用是安全的,并且可以节约开支,为什么没有更多的人使用这种方式?部分原因在于传统的思维方式,以及事实上,有限的节约开支并不能证明混合使用的正确性。但是,如果我告诉你,和传统的观点相反,将测试环境和生产环境分隔对于你的环境来说更加危险,你会怎样做?
主机服务器可能并且将会发生故障,这是很正常的事情。不论我们怎样做,hypervisor仍然会出现死机,硬件也会发生故障。了解并且接受最终都会遇到问题这个事实可以帮助我们从另外一个角度来了解我们的环境。如果我们拥有10台生产环境主机和5台测试主机,那么生产环境主机发生死机或者硬件故障的几率要比测试环境高一倍,仅仅因为生产环境中可能发生死机的主机数量比测试环境多一倍。如果我们能够选择,那我们宁愿失去一台不那么重要的测试主机,但是死机不会按照我们希望的时间和地点发生。
如果发生故障会怎样?我们假设每台服务器(测试和生产环境)承载了30台虚拟机,则一共有450台虚拟机。如果我们失去了一台生产环境主机,30台虚拟机就需要在其余的主机上重启,平均每台主机增加9.9台虚拟机。重启需要花费一些时间,但是真正的问题是出现死机的生产环境虚拟机数量。在这个例子当中,10%的生产环境服务器将会受到影响。
但是,如果我们将测试和生产环境合并,就可以降低失去一台生产服务器可能面临的风险。对于一个拥有15台主机的合并池,我们仍然可以在每台主机上运行30台虚拟机,但是通过使用分布式资源调度(DRS)机制,我们可以在每台主机上放置20台生产虚拟机和10台测试虚拟机。每台主机上减少生产环境虚拟机的数量意味着如果一台主机出现死机,我们失去的是20台生产环境虚拟机,而不是30台。这样减少了33%的生产环境虚拟机数量,再结合良好的DRS机制,可以为你的公司提供很大的空间将影响最小化。通过减少出现死机的生产环境虚拟机的数量,并且在集群中增加额外的主机,虚拟机重启队列就从每台主机上的3.3台生产环境虚拟机下降到每台主机1.4台生产环境虚拟机。
减少的故障虚拟机数量和更快的重启速度并不是将测试和生产环境进行合并的唯一好处。假设你拥有一台全部运行生产环境虚拟机的主机,如果发生资源短缺的情况将会怎样?资源池、预留值和极限值可以帮助你管理资源,但是会强制你决定那台生产服务器更加重要。并不是所有的生产负载都同样重要,但是需要尝试将这些告诉应用程序的所有者。如果需要为生产环境虚拟机提供更多的资源,通过将生产环境和测试环境合并,就可以从测试服务器中转移一部分。这种额外的缓冲允许你在不产生中断的情况下处理故障或者资源紧缺的问题。
合并测试和生产环境当然已经超越了已经建立很久的思维方式,需要对现有的环境进行改动。但是,随着VMware不断推进从传统环境向软件定义数据中心的转变,其中的规则都还未最终确定,仍然处在不断变化的阶段,摆脱传统数据中心的思维方式就需要付出一些努力。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者