如何让 Ubuntu Server 12.04 实现多路径运行

如何让 Ubuntu Server 12.04 实现多路径运行

我正在开展一个项目,旨在利用在企业级硬件上运行的 Ubuntu 服务器。在我们的案例中,这意味着 IBM HS23E 刀片服务器、QLogic 4GB 光纤通道扩展卡和带有两个控制器的相当老旧的 IBM DS4500 磁盘阵列。目前,我们只有光纤通道作为启动选项,Ubuntu Server 12.04 安装得很好,无需多路径即可启动。我本人不是 Linux 专业人士,但我们的团队中有人会理解技术方面的东西。不要让我的帖子混淆 :)

目前的情况是,我们只有一个光纤通道连接到单个磁盘阵列控制器。实际情况当然会大不相同。我们至少应该有两个光纤通道端口连接到两个不同的交换机和两个不同的控制器。

但是,我们不知道如何设置多路径工具。DM-MPIO 是合适的软件吗?至少我们应该能够在有多个连接可用时启动,并在其中任何一个连接关闭时实现容错。

由于磁盘阵列不是最新的硬件,我设法找到的 RDAC 驱动程序源仅适用于 2.6.x 内核。而我们使用的是 3.2.x。另一个问题是构建 multipath.conf。所述驱动程序源来自 IBM 支持,而提供给 Ubuntu 安装程序的 QLogic 驱动程序来自 Ubuntu 站点。RHEL 和 SLES 似乎有近乎开箱即用的支持,但对于我们的项目来说这不是一个选择。

实际问题: - Ubuntu Server 12.04 推荐使用哪种多路径软件工具? - 是否有可用的预制配置或模板?它是否需要磁盘阵列/控制器特定设置或执行更通用的配置工作? - 您是否有类似设置的经验并愿意分享知识?

我将为您提供您可能需要的任何其他信息。

答案1

多路径工具在 Ubuntu 12.04 中仍然是正确的,尽管我不确定启动设备的多路径功能能否很好地工作。

下面的配置是一个入门配置,有一些设备特定的配置(几乎都不是必需的,但您可能不想要默认配置)。任何两个具有相同 WWID 的设备都将分组为单个 mpath 设备;您可能希望使用别名明确命名它们,就像我下面所做的那样。

如果您在让 RDAC 确定状态时遇到问题,则可以使用 readsector0 作为后备,但这是您需要用真实硬件进行测试并可能与您的供应商讨论的事情。

devices {
        device {
                vendor "DELL"
                product "MD32xxi"
                path_grouping_policy group_by_prio
                prio rdac
                polling_interval 5
                path-selector "round-robin 0"  
                path_checker rdac
                prio_callout "/sbin/mpath_prio_rdac /dev/%n"
                hardware_handler "1 rdac"
                failback immediate
        }
}

multipaths {
    multipath {
        wwid 36842b2b0004c340e000003fb4c8702e2
        alias "iscsi-data1"
    }
    multipath {
        wwid 36842b2b0004c2ace000004d74cf701d4
        alias "iscsi-data2"
    }
}

相关内容