以下内容来自Shyam Iyer - Dell 的 Linux 设计团队的一名工程师
存储配置是一项繁琐、耗时且复杂的程序,Dell 一直与操作系统合作伙伴开展合作以简化这一过程。在 2009 RedHat 峰会上,我们发布了一款新的架构,通过行业标准的 iSCSI 和 iSNS 协议来简化存储配置。在 RHEL6 上,我们最终完成了这一架构,为我们的 Linux 客户带来新的存储配置的简化途径。
借助这一实施,管理员可轻松从 iSCSI SAN 配置或移除存储,iSCSI 启动程序将自动注册/注销存储 LUN。如果是正在从虚拟机运行直接 iSCSI 会话的虚拟化车间,您会发现一旦初始配置完成,存储配置的自动化将易如反掌。
所实施的解决方案可使用最新的 RHEL 6 beta 按照以下步骤实现:
RHEL 6 Linux iSNS 服务器配置
安装 isns-utils 软件包
# yum install isns-utils
# service isnsd start
# chkconfig isnsd on
存储端配置
配置 iSCSI SAN 以注册到 iSNS 服务器
RHEL 6 iSCSI 启动程序(主机)配置
安装 iscsi-initiator-utils 软件包
# yum install iscsi-initiator-utils
# service iscsid start
# chkconfig iscsid on
新建 iscsi iface
# iscsiadm -m iface -o new -I isns_iface
# iscsiadm -m iface -o opdate -I isns_iface -n iface.transport_name -v tcp
创建 iSNS discoverydb 记录
# iscsiadm -m discoverydb -t isns -p <iSNS server>:<iSNS port> -o new
# iscsiadm -m discoverydb -t isns -p <iSNS server>:<iSNS port> -o update -n discovery.isns.use_discoveryd -v Yes
设置轮询间隔以探测 iSNS 服务器
# iscsiadm -m discoverydb -t st -p <iSNS server>:<iSNS port> -o update -n discovery.isns.discoveryd_poll_inval -v 30
重启 iscsid 使更改生效
# service iscsid restart
大功告成!每当您在目标创建/移除存储 LUN,启动程序会自动对其注册/注销。
当然,您可以自找麻烦,在 LUN 正在使用时从 SAN 移除,但假设您清楚从 SAN 移除 LUN 意味着什么。如果您在主机端还有更多自动化空间的 SAN 添加存储 LUN,我们非常希望得到您对于此解决方案更多期望的反馈。
注:启动程序配置的第 2 步是必需的,因为现在的 iSCSI 启动程序不允许限定特定 iface 进行基于 iSNS 的发现,并且所有创建的 iface 都将由启动程序尝试注册/注销。