Skip to main content
SAN hosts and cloud clients
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

将Red Hat Enterprise Linux 6.4与ONTAP结合使用

贡献者

您可以使用ONTAP SAN主机配置设置将Red Hat Enterprise Linux 6.4配置为目标ONTAP。

安装 Linux Unified Host Utilities

NetApp LINUX统一主机实用程序软件包以32位和64位.rpm文件的形式在上提供"NetApp 支持站点"。如果您不知道哪个文件适合您的配置、请使用验证您需要哪个文件"NetApp 互操作性表工具"

NetApp强烈建议安装Linux统一主机实用程序、但这并不是必需的。这些实用程序不会更改Linux主机上的任何设置。这些实用程序可改进管理并帮助 NetApp 客户支持收集有关您的配置的信息。

如果您当前已安装Linux Unified Host Utilities、则应将其升级到最新版本或将其删除、然后按照以下步骤安装最新版本。

步骤
  1. 从下载 32 位或 64 位 Linux Unified Host Utilities 软件包 "NetApp 支持站点" 主机。

  2. 安装软件包:

    rpm -ivh netapp_linux_unified_host_utilitis-7-1.x86_64

备注 您可以使用本文档中提供的配置设置来配置连接到的云客户端 "Cloud Volumes ONTAP""适用于 ONTAP 的 Amazon FSX"

SAN 工具包

安装 NetApp Host Utilities 软件包时,工具包会自动安装。此套件提供 sanlun 实用程序,可帮助您管理 LUN 和 HBA 。sanlun 命令可返回有关映射到主机的 LUN 的信息,多路径以及创建启动程序组所需的信息。

示例

在以下示例中, sanlun lun show 命令将返回 LUN 信息。

# sanlun lun show all

示例输出:

controller(7mode/E-Series)/            device     host               lun
vserver(cDOT/FlashRay)   lun-pathname  filename   adapter  protocol  size    Product
------------------------------------------------------------------------------------
data_vserver          /vol/vol1/lun1   /dev/sdb   host16   FCP       120.0g  cDOT
data_vserver          /vol/vol1/lun1   /dev/sdc   host15   FCP       120.0g  cDOT
data_vserver          /vol/vol2/lun2   /dev/sdd   host16   FCP       120.0g  cDOT
data_vserver          /vol/vol2/lun2   /dev/sde   host15   FCP       120.0g  cDOT

SAN 启动

您需要的内容

如果您决定使用 SAN 启动,则配置必须支持它。您可以使用 "NetApp 互操作性表工具" 验证您的操作系统, HBA , HBA 固件和 HBA 启动 BIOS 以及 ONTAP 版本是否受支持。

步骤
  1. 将 SAN 启动 LUN 映射到主机。

  2. 验证是否有多个可用路径。

    备注 在主机操作系统启动并运行多个路径后、这些路径将变为可用。
  3. 在服务器 BIOS 中为 SAN 启动 LUN 映射到的端口启用 SAN 启动。

    有关如何启用 HBA BIOS 的信息,请参见供应商专用文档。

  4. 重新启动主机以验证启动是否成功。

多路径

对于 Red Hat Enterprise Linux ( RHEL ) 6.4 , /etc/multipath.conf 文件必须存在,但您不需要对该文件进行特定更改。RHEL 6.4 会使用识别和正确管理 ONTAP LUN 所需的所有设置进行编译。要启用 ALUA 处理程序,请执行以下步骤:

步骤
  1. 创建 initrd-image 的备份。

  2. 将以下参数值附加到内核中,以使 ALUA 和非 ALUA 正常工作: rdloaddriver=SCSI_DH_ALUA

    kernel /vmlinuz-2.6.32-358.6.1.el6.x86_64 ro root=/dev/mapper/ vg_ibmx355021082-lv_root rd_NO_LUKS rd_LVM_LV=vg_ibmx355021082/ lv_root LANG=en_US.UTF-8 rd_LVM_LV=vg_ibmx355021082/lv_swap rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet rdloaddriver=scsi_dh_alua
  3. 使用 mkinitrd 命令重新创建 initrd-image 。RHEL 6x 及更高版本使用以下命令之一: mkinitrd -f /boot/ initrd-"uname -r".img uname -r 或命令: dracut -f

  4. 重新启动主机。

  5. 验证 cat /proc/cmdline 命令的输出,以确保设置完成。

您可以使用 multipath -ll 命令验证 ONTAP LUN 的设置。

以下各节提供了映射到ASA和非ASA用户身份的LUN的示例多路径输出。

所有SAN阵列配置

在全SAN阵列(ASA)配置中、指向给定LUN的所有路径均处于活动状态并已进行优化。这样可以同时通过所有路径提供I/O操作、从而提高性能。

示例

以下示例显示了 ONTAP LUN 的正确输出:

# multipath -ll
3600a0980383034466b2b4a3775474859 dm-3 NETAPP,LUN C-Mode
size=20G features='4 queue_if_no_path pg_init_retries 50 retain_attached_hw_handle' hwhandler='1 alua' wp=rw
|-+- policy='round-robin 0' prio=50 status=active
|- 1:0:8:1  sdb 8:16 active ready running
|- 2:0:8:1  sdd 8:48 active ready running
|- 1:0:9:1  sdc 8:32 active ready running
|- 2:0:9:1  sde 8:64 active ready running
备注 一个LUN不应需要四个以上的路径。如果路径数超过四个、则可能会在存储故障期间导致路径问题。

非ASA配置

对于非ASA配置、应具有两组具有不同优先级的路径。优先级较高的路径为主动/优化路径、这意味着它们由聚合所在的控制器提供服务。优先级较低的路径处于活动状态、但未进行优化、因为它们是从其他控制器提供的。只有在优化路径不可用时、才会使用非优化路径。

示例

以下示例显示了具有两个主动 / 优化路径和两个主动 / 非优化路径的 ONTAP LUN 的正确输出:

# multipath -ll
3600a0980383034466b2b4a3775474859 dm-3 NETAPP,LUN C-Mode
size=20G features='4 queue_if_no_path pg_init_retries 50 retain_attached_hw_handle' hwhandler='1 alua' wp=rw
|-+- policy='round-robin 0' prio=50 status=active
| |- 1:0:8:1  sdb 8:16 active ready running
| `- 2:0:8:1  sdd 8:48 active ready running
`-+- policy='round-robin 0' prio=10 status=enabled
  |- 1:0:9:1  sdc 8:32 active ready running
  `- 2:0:9:1  sde 8:64 active ready running
备注 一个LUN不应需要四个以上的路径。如果路径数超过四个、则可能会在存储故障期间导致路径问题。

建议设置

RHEL 6.4 操作系统经过编译,可识别 ONTAP LUN ,并自动为 ASA 和非 ASA 配置正确设置所有配置参数。

`multipath.conf`要启动多路径守护进程、必须存在该文件。如果此文件不存在、您可以使用命令创建一个空的零字节文件 `touch /etc/multipath.conf`。

首次创建 `multipath.conf`文件时、可能需要使用以下命令启用并启动多路径服务:

# chkconfig multipathd on
# /etc/init.d/multipathd start

您无需直接向文件中添加任何内容 multipath.conf、除非您的设备不需要多路径管理、或者您的现有设置会覆盖默认值。要排除不需要的设备、请在 `multipath.conf`文件中添加以下语法、将<DevId>替换为要排除的设备的WWID字符串:

blacklist {
        wwid <DevId>
        devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
        devnode "^hd[a-z]"
        devnode "^cciss.*"
}

以下示例将确定设备的WWID并将其添加到文件中 multipath.conf

步骤
  1. 确定WWID:

    # /lib/udev/scsi_id -gud /dev/sda
    360030057024d0730239134810c0cb833

    `sda`是要添加到黑名单中的本地SCSI磁盘。

  2. 添加 WWID 到黑名单中 /etc/multipath.conf

    blacklist {
         wwid   360030057024d0730239134810c0cb833
         devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
         devnode "^hd[a-z]"
         devnode "^cciss.*"
    }

您应始终检查 `/etc/multipath.conf`文件、尤其是在默认部分中、以了解可能会覆盖默认设置的原有设置。

下表显示了 `multipathd`ONTAP LUN的关键参数和所需值。如果主机连接到其他供应商的LUN、并且这些参数中的任何一个被覆盖、则必须通过 `multipath.conf`文件中专门适用于ONTAP LUN的后续条款进行更正。如果不进行此更正、ONTAP LUN可能无法按预期运行。只有在与NetApp和/或操作系统供应商协商后、并且只有在充分了解影响后、才应覆盖这些默认值。

参数 正在设置 …​

detect_prio

是的。

dev_los_TMO

" 无限 "

故障恢复

即时

fast_io_fail_sMO

5.

features

"3 queue_if_no_path pG_init_retries 50"

flush_on_last_del

是的。

硬件处理程序

0

no_path_retry

队列

path_checker

"TUR"

path_grouping_policy

"Group_by-prio"

path_selector

" 循环 0"

Polling interval

5.

PRIO

ONTAP

产品

lun.*

Retain Attached Hw_handler

是的。

rr_weight

" 统一 "

user_friendly_names

供应商

NetApp

示例

以下示例显示了如何更正被覆盖的默认值。在这种情况下, multipath.conf 文件会为 path_checkerno_path_retry 定义与 ONTAP LUN 不兼容的值。如果由于其他 SAN 阵列仍连接到主机而无法删除这些参数,则可以专门针对具有设备实例的 ONTAP LUN 更正这些参数。

defaults {
   path_checker      readsector0
   no_path_retry      fail
}

devices {
   device {
      vendor         "NETAPP  "
      product         "LUN.*"
      no_path_retry     queue
      path_checker      tur
   }
}

KVM设置

您也可以使用建议的设置来配置基于内核的虚拟机( KVM )。由于 LUN 已映射到虚拟机管理程序,因此配置 KVM 不需要进行任何更改。

已知问题

带有ONTAP版本的RHEL 6.4存在以下已知问题:

NetApp 错误 ID 标题 Description

"673009"

在 LV 上创建 ext4 文件系统,并在 15 个或更多启用了丢弃且精简配置的多路径设备上进行条带化,这会触发 "request botched" 内核错误

当用户尝试在启用了丢弃的精简配置多路径设备上创建 ext4 文件系统时,出现 " 请求 blotched" 内核错误。因此,创建 ext4 文件系统可能需要较长时间才能完成,偶尔会发生中断。只有在运行 Red Hat Enterprise Linux 6.x 和 Data ONTAP 8.1.3 及更高版本且以 7- 模式运行的系统上,用户尝试在 LV 上创建 ext4 文件系统时,才会发生此问题描述。之所以出现问题描述,是因为内核错误地尝试合并丢弃请求,而 Red Hat Enterprise Linux 6.x 目前不支持这种做法。发生此问题描述时,系统会将以下消息的多个实例写入系统日志( /var/log/messages ): kernel : blk : request botched 。因此,文件系统创建所需时间可能比预期要长。