我们的虚拟环境被分割成每个工作angular色(DNS,DC,System Center CM,文件服务器,日志聚合,IIS等)的虚拟机。 如果磁盘性能不重要,是否真的有必要在逻辑上将Windows操作系统文件从应用程序文件/数据/日志中分离出来? 作为Windows 2000/2003和NT4(gasp!)的先前标准,我们的商店将减lessC:和D:驱动器之间的工作负载,即使它们由相同的底层磁盘arrays提供服务。
假设您不需要单独的磁盘arrays来获得性能,例如SQL Server场景,那么这种分离仍然是最佳的还是必要的? 这几天在不同的卷上分割你的OS +数据有什么好处/不利之处?
我可以考虑的一个有利于多卷的优势是可以在不需要重启的情况下以交互方式运行chkdsk(这为我节省了一些停机时间)。
感谢您的帮助 – 我们有几个新的公用事业服务器正在build设,不想过度工程。
如果你只是问是否应该有一个“系统”分区和一个单独的“应用程序”分区,我没有看到它的价值,特别是现在。
过去,对于UNIXtypes的系统来说,这是惯例,因为如果系统卷溢出数据,可能会导致无法启动或无法使用的情况,所以分区的分离是一种伪物理方式,无人看pipe的日志文件填满你的启动分区。
如果你正确地维护系统,今天你不应该看到很多好处。 你现在可能真的有问题,更新是巨大的,系统升级是如此之大, 在10G的Windows安装分区中曾经有过的事情现在很less。 由于Windows通过networking传输文件的方式以及暂时下载的方式填充了系统分区,并且不能在之后的任何地方复制它们,所以我也遇到了一些问题,并且在文件系统上可怕地增加了碎片问题。
如果你正在虚拟化这个系统,那么你甚至不会争辩说,由于虚拟机是从物理磁盘层抽象出来的,无论虚拟机有多less个分区/驱动器,性能都会提高。
如果您的应用程序对于不能将磁盘检查系统closures的时间敏感(希望您很less需要它),那么您应该已经制定了具有故障转移支持,维护窗口和在虚拟机的情况下,如果需要的话,在诊断快照问题或在沙盒中复制问题时,您可能有办法保持虚拟机运行。 如果操作非常重要,那么如果机器出现故障,您应该已经制定了相应的计划以保持可用的服务。 这就构build了在不中断服务的情况下修复虚拟框的能力。 否则,用户将不得不忍受一段停机时间。
而且,Windows终于获得了更大的灵活性(而且Linux已经拥有了这种灵活性),可以创builddynamic卷pipe理,从而可以扩大和缩小驱动器,并将它们组合成更大的卷(如Linux LVM支持)。 Windows正逐渐远离以驱动器为中心的模式,更多地转向服务器上的卷pipe理模式。
你提到的服务已经有一些内置的冗余,如果你使用的是Windows DC,那么chkdsk的时间不应该成为许多问题。
总的来说,除非你直接需要创build一个单独的卷作为驱动器盘符,否则我会创build一个大驱动器并将其保留。 它更简单,在路上更加灵活,整体而言是一个更小的PITA来处理。
我不认为这是一个标准,尽pipe这是一个被广泛实施的惯例。 我从来没有看到这样做的价值,但仍然没有。 我理解为了备份/恢复原因而想要将数据从操作系统中分离出来的原因,但是出于性能原因,通过在同一物理磁盘上创build单个逻辑卷来将操作系统与应用程序和数据分离是一个错误的尝试。 如果有的话,你将会在磁盘I / O上产生更多的性能负载,因为你的操作系统和应用程序正在争夺相同的底层物理磁盘。 如果您需要将磁盘I / O密集型应用程序与操作系统(如SQL或Exchange)分开,则需要使用单独的物理磁盘或磁盘arrays来执行此操作。
某些文件系统操作可能更容易,因为您可能已经知道(chkdsk)。 例如备份,这取决于您的备份系统如何工作。
此外,计划可能会更简单。 如果您的操作系统的磁盘需求不变,但是您的应用程序需求会有所不同,那么在部署虚拟机时,如果您只需将应用程序磁盘附加到模板化的基本VM,则可能会有更大的灵活性。
我相信还有其他的优点和缺点,但相关性取决于你的组织的运作方式。
这种做法源于在UNIX(系统V和以前版本)中可以耗尽启动卷上的inode并且能够使系统无法启动的可观的时间。 在现代的UNIX和Windows中,这不再是这种情况。 Windowspipe理员只是模仿分区scheme。 Windowspipe理员我知道,过去有一种误导的信念(基于我认为的旧做法),即将操作系统与操作系统分开,这意味着如果启动卷变坏,就会使数据免受损坏。 无论如何,分离数据的唯一原因是可移植性和可扩展性。 扩展独立分区比扩展启动卷容易得多。
虽然在单独的驱动器上运行操作系统和数据会带来性能上的提升,但是也有一个令人惊讶的常见误解,即这也适用于操作系统和数据(或应用程序,或其他)的单独分区。 这不可能是更错误的。
单个物理驱动器或arrays上的多个分区导致性能下降。 原因很简单。 头部组件的物理运动造成了最大的性能损失。 驱动器甚至不能开始读或写,直到磁头到达正确的位置并停止横向移动。 当运行多个分区时,磁头需要比单个分区移动多得多。 旅行的平均距离也大得多。
当驱动器非常小时,如果只是为了确保每个驱动器都有足够的空间,则将操作系统和数据分开是有意义的。 随着现代驾驶能力,这是没有意义的,除非有一个更有说服力的理由,只是为了这样做而分开他们。 当然,如果你使用物理上独立的驱动器或者arrays,那么分离的确很有意义。 例如,高需求的数据库服务器可能需要专用驱动器才能应付。
从清洁的angular度来看,我仍然希望在另一个逻辑卷上专门提供数据。 这意味着你可以在磁盘的根目录下拥有任何你喜欢的文件夹结构,而不必担心Windows对它的感觉。
在虚拟化环境中,这也是有益的,因为这意味着您可以轻松分离包含数据的虚拟硬盘,并重新连接到另一台计算机,而无需手动复制虚拟硬盘中的文件,这可能会使您在维护窗口或中断时具有灵活性。 您还可以轻松地缩放该虚拟磁盘的大小,而不会由于其系统分区突然变化而导致操作系统出现故障。
至于应用程序,我一般都认为(尤其是当你使用一个逻辑机器的每个工作负载),应用程序的二进制文件几乎不用担心磁盘空间的问题,所以你不必担心太多您的操作系统驱动器扩展超过需要,因此可以安全地与操作系统一起安装。
另一个面向未来的思想是,如果由于某种原因,服务器变得非常瓶颈,那么您可以轻松地拿起包含其数据的虚拟硬盘,并将其移动到更快的存储后端,同时使操作系统在较慢的存储上不受影响。