我有一个UPS的服务器,在电池上的生活是20-30分钟左右,服务器有一个2405 / 128MB没有BBU,我只是困惑,我真的需要一个BBU卡吗? 当然,如果UPS正在工作,在电源故障期间,应该有足够的时间让caching写入? 还是我错过了什么? 我真的不想为了一个BBU而花一大笔钱,应用程序更倾向于阅读,而不是写在大约5-1的比例上,是否真的有这样一个风险,没有BBU即使是一个很好的UPS?
虽然这涵盖了8月份重复提出的一些理由,但是我不打算再次回答这个问题,因为答案相当差。
BBU磁盘控制器的确提供了停电保护function,但是它(与日志logging或日志结构的文件系统配合使用)可以防止服务器操作系统崩溃和磁盘硬件故障 – 而UPS不支持。 这不是解决可用性问题的唯一方法 – 另一种方法是复制服务器,UPS和磁盘,并使用适当的群集工具。
此外,通过更大的非易失性caching,操作系统可以更快速地将写入操作卸载到磁盘上 – 操作系统无需等待磁盘子系统确认写入已提交。 有一个更大的缓冲区给予写扇区到磁盘(在这种情况下是磁盘控制器)的东西更多的范围来调度操作,以优化它们,进一步的性能优势。 而且,如果您使用的是固态硬盘,则可以通过减less写入磨损来运行大型编组缓冲区,从而获得一点好处。
应用程序更倾向于阅读,而不是写在5-1左右的比例
真? 我会说这是写得很重。
我真的不想花大钱
而我上次看的时候,一个低端的UPS仍然比一个基本的BBU磁盘控制器便宜,后者可以有大约100英镑(150美元)。 你只需要寻找一下。 我宁愿有一个BBU磁盘控制器和廉价的磁盘比昂贵的磁盘和没有BBU – 性能和可用性。
RAID卡和UPS上的BBU有不同的用途。
BBUdevise用于在电源丢失时保持高速caching存活,以便在磁盘处于活动状态时将数据刷新到磁盘。
UPSdevise用于在短暂停电期间使服务器保持运行,或者在电力完全丧失之前允许有序closures服务器。 它旨在最大限度地减less停机时间。 大多数UPS将保持服务器运行30分钟或更长时间(取决于电池容量和负载)。 大多数停电是相对较短,所以UPS是有用的。
尽pipe如此,UPS本身并没有防止数据在电源closures之前没有被完全写入。
如果服务器没有完全closures,那么UPS将在长时间停电时无用。 因此,当电力下降到一定水平时,您总是需要让UPS发出断电信号,并让他们closures干净的电源。
当电源丢失时,BBU将保持高速caching存储器活动,并且不依赖于您正确设置UPS和UPS电池电量不足。 如果你真的想要防止腐败,获取RAID卡的BBU。
这取决于正在使用的操作系统,您的读/写模式以及对风险的容忍度。
我倾向于尽可能使用BBU / BBWC,因为写入性能通常不受影响。 您应该能够将控制器configuration为在没有电池的情况下运行,并且仍然提供加速写入caching。 但是有风险。
你可以运行ZFS – 然后通过适当的设置,你将最小化BBU的缺乏。 ZFS现在可用于Linux,我强烈build议它为一些工作负载。