Dam*_*mon 7 failover redundancy drbd failovercluster
背景:我们在小型办公环境中需要一个 HA 服务器,并且正在寻找 DRBD 来提供它。我们只有大约 100GB 需要在 HA 服务器上,服务器负载将非常低。如果我们存档旧的办公室数据,数据可能每年增加约 10%-25%,如果我们不存档,则每年增加 50%-75%。
重点是我们混合使用消费级和企业级硬件,如果我们不提前计划,这将是一个问题;并且预先构建的优质服务器确实会失败,因此冗余服务器似乎是要走的路。
计划:我们认为最好找到 (2) 台最物有所值的二手服务器并同步它们。我们只需要具备 SATA/SAS 功能的服务器和足够多的驱动器空间。如果您达成交易,这些服务器似乎可以以 100-200 美元(+一些零件和额外驱动器)的价格购买。
从理论上讲,这意味着服务器可能会出现故障,如果我们花几天的时间来解决它,只要我们没有另一个巧合的故障,事情就会一直持续下去,直到我们的 IT 部门(我)能够解决它。我们将使用 Debian 作为操作系统。
一些问题
(A) DRBD 如何处理驱动器或控制器故障?也就是说This在存储驱动程序之前显示DRBD,那么当控制器发生故障并写入脏数据或驱动器发生故障但没有立即崩溃时会发生什么?数据是否镜像到另一台服务器,在这种情况下是否存在跨服务器数据损坏的风险?
(B) DRBD 的失败点是什么;理论上,只要一台服务器启动并运行,就没有问题。但是我们知道存在一些问题,那么使用 DRBD 的失败模式是什么,因为它们中的大多数理论上应该是软件?
如果我们要为此使用两台服务器,那么在每个服务器上运行 VM 并使用 MYSQL 和 Apache 进行数据库和 Web 服务器复制是否合理?(我假设是这样)
DRBD 是否足够可靠?如果不是,则不可靠性是与某些任务隔离的,还是更随机的。搜索发现了有各种问题的人,但这是互联网,似乎坏信息多于好信息。
如果数据通过 LAN 同步,DRBD 是否使用双倍带宽?也就是说,我们是否应该在 NICS 上加倍并进行一些链路聚合和中继?然后也许将它们放在单独电路上的单独路由器和单独房间中的 UPS 上,现在您真的有一些冗余!
就服务器管理而言,这对于办公室来说是否太疯狂了?是否有更简单的 REALTIME 替代方案(理论上 DRBD 似乎很简单)。
我们已经有服务器了。所以在我看来,第二台带有 DRBD 专用驱动器的二手服务器可以很容易地以 150-250 美元左右的价格购买。添加第二个路由器、更多驱动器、更多 NIC(已使用)和 (2) 个 UPS,并且正在谈论 1,000 美元 +/-。那是比较便宜的!我希望这主要是在服务器故障期间为我们争取时间。如今,使用 RAID 似乎更容易处理驱动器故障。其他硬件故障,如控制器、内存或电源,可能需要停机来诊断和修复这些问题。
对我们来说,冗余服务器意味着使用过的硬件变得更加可行,有更多的正常运行时间和更多的灵活性,让我可以在我的日程安排允许时修复问题,而不是不得不停止一切来修复服务器。
希望我没有错过这些问题有易于搜索的答案。我进行了快速搜索,但没有找到我要找的东西。
首先,您需要定义 “HA”的真正含义。您要防止什么,类型 X 和持续时间 Y 的中断的成本是多少?它将如何影响您的组织?无论如何,您在这个组织中的角色是什么,您的时间值多少钱?你可以花多少时间在这上面?之后,您必须决定此要求是否允许这种解决方案,或者您是否需要其他解决方案。
第二:在我的世界中,“我需要 HA”和“我要花 200 美元购买糟糕的二手服务器”这两个句子不太可能放在一起(事实上,对我来说,购买二手垃圾和任何类型的专业用途都不要)完全合身)。
无论如何,您的问题:
如果您将全新的数据写入 DRBD 块设备,它将正确写入未损坏的控制器。它是实际磁盘前面的一个完全透明的层,就像软件 RAID 或 LVM 一样。但是,如果由于控制器损坏或从磁盘读取错误而导致主节点上的数据损坏,这很容易传播到辅助节点,因为写入操作通常是读-修改-写循环,在这种情况下,块损坏的数据将在主节点上读取,并且此块的写操作将发送到两个节点。这带来了使用 DRBD 时最重要的一点:与 RAID 相同,它绝不能替代良好可靠的备份。
我不明白你在这里的意思。
当在单节点设置中使用 VM 很有用时,它也将在双节点设置中使用,并且如果正确完成,您将拥有可能的实时迁移的优势。
根据我的经验,是的。不过,您应该在您的环境中对其进行彻底测试,并花费大量时间模拟系统可能遇到的各种故障状态,并学习和记录如何从中恢复。虽然它是可靠的,但 DRBD 不能自我修复,需要很好地了解情况才能从故障状态中恢复。
您确实需要节点之间的专用连接。在双节点设置中,这可以是没有交换机或其他东西的点对点连接。从技术上讲,其他一切都是可能的,但这只是无稽之谈。根据您的使用模式,为此专用链路使用中继或更快的 NIC(例如 10G 以太网或 Infiniband)可能是有益的,但如果要读取或写入的大部分/所有数据来自 LAN 接口,这将无济于事,因为无论如何,您都受到局域网的限制。
这又回到了我的第一段:你对它有什么期望,你认为 HA 是什么?对于有经验的系统管理员来说,它可以是一种廉价而可靠的方法来防止一系列故障,但它需要对部件如何组合在一起有很多基本的了解。不过,许多没有经验丰富的全职 SA 的小商店最好拥有高质量的硬件和良好的支持合同。
最后:不要试图在您当前的硬件上追溯安装任何 HA 解决方案。正如我所写,您需要时间来试验设置及其故障条件。这需要大量停机时间,并且在您的生产硬件上无法合理完成。