2008年(8065)
分类: 服务器与存储
2008-12-14 14:07:59
传统的方法有两种,多系统启动和虚拟化。第一种方法牵扯到每个操作系统要用不同的分区和卷,第二种则是在一个操作系统下运行一个虚拟机,这样两个系统可以同时运行。而我们今天讨论的是哪种方式比较好,为什么。当然,说哪种方式好也没有绝对的评判标准,也许随着发展还会有新的变化。
对于一个整体的服务器来说,显然是虚拟化这种方法要好一些,因为这种做法让人觉得也很自然,但是,如果是一个临时的解决方案任务,你采用多系统启动的方式就会更加适合,因为这是突发性的事件,没必要为其建立一个虚拟机。
说起虚拟化,它是一个由整合工具发展出来的技术,可以用一个机器来未成几台机器的任务,但是,显然虚拟化也不是魔法,它只是将你闲置的资源利用起来,而不是凭空变出什么新东西。
比如你现在运行的Vista系统,2GB的内存跑32位的应用,你可以分出1GB来运行虚拟机,不会有什么问题。但是,如果你运行过多的64位应用,而你的系统配置如果关于低的话,那虚拟化技术也不能提高什么系统性能。
在虚拟化应用的过程中还有一个问题,就是在主机系统中打开虚拟机,那么虚拟机的操作系统的那些属性在用起来可能不如其原来那么简单方便。举个例子来说就是如果你现在在运行Windows,然后打开Linux的虚拟机,那么Linux的很多属性在虚拟机环境下就不会像自己系统那么顺畅。
再翻回来说多系统启动,几乎所有的管理员都知道,对于服务器来说,重启倒换到另一系统是非常昂贵和费时的,在执行任务时几乎不会采取这种方式。但是,它也有超过虚拟化方式的优点,那就是可以让不同的操作系统运行在相同的机器上,就是不是同一时间而已。显然,对于你要霸占整个系统的资源的任务来说,倒换到新的系统要比虚拟机好很多,因为它没有什么限制。比如操作系统要执行一些像系统数据移植这样的任务,如果你的另一虚拟机也会访问磁盘的数据,那么最好还是采用单一的系统。比如,Linux是可以直接访问FAT和NTFS格式的文件的,但是,如果没有第三方的转换,Windows系统却不可以直接访问ext2 和 ext3格式的文件。
其实,根据用户自己对系统的需求,也还有一些其它的解决方法,最通用的方法是在Windows下运行Linux的修正版本——coLinux,它其实是一个在Windows下运行的Win32程序。还有就是可以采用像Xen或者VMware的ESX Server上的hypervisor方案,跟虚拟机类似,当然你的硬件系统要支持Xen,因为不是所有的设备都支持。