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

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

贡献者

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

安装 Linux Unified Host Utilities

您可以从下载64-bit.rpm文件格式的NetApp Linux统一主机实用程序软件包"NetApp 支持站点"

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

步骤
  1. 从下载 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 ) 8.0 , /etc/multipath.conf 文件必须存在,但您不需要对该文件进行特定更改。RHEL 8.0 使用识别和正确管理 ONTAP LUN 所需的所有设置进行编译。

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

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

所有SAN阵列配置

全SAN阵列(ASA)配置可优化指向给定LUN的所有路径、使其保持活动状态。这样可以同时通过所有路径提供I/O操作、从而提高性能。

示例

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

# multipath -ll
3600a098038303634722b4d59646c4436 dm-28 NETAPP,LUN C-Mode
size=80G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw
`-+- policy='service-time 0' prio=50 status=active
  |- 11:0:7:1    sdfi   130:64   active ready running
  |- 11:0:9:1    sdiy  8:288     active ready running
  |- 11:0:10:1  sdml 69:464   active ready running
  |- 11:0:11:1  sdpt  131:304  active ready running
备注 一个LUN不应需要四个以上的路径。如果路径数超过四个、则可能会在存储故障期间导致路径问题。

非ASA配置

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

示例

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

# multipath -ll
3600a098038303634722b4d59646c4436 dm-28 NETAPP,LUN C-Mode
size=80G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw
`-+- policy='service-time 0' prio=50 status=active
  |- 11:0:7:1    sdfi   130:64   active ready running
  |- 11:0:9:1    sdiy  8:288     active ready running
  |- 11:0:10:1  sdml 69:464   active ready running
  |- 11:0:11:1  sdpt  131:304  active ready running
备注 一个LUN不应需要四个以上的路径。如果路径数超过四个、则可能会在存储故障期间导致路径问题。

建议设置

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

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

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

# systemctl enable multipathd
# systemctl start multipathd

不需要将设备直接添加到文件中 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

"2 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 )。配置KVM不需要进行任何更改、因为此LUN已映射到虚拟机管理程序。

已知问题

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

NetApp 错误 ID 标题 Description

"1238719"

存储故障转移操作期间,使用 QLogic QLE2672 16 Gb FC 的 RHEL8 上的内核中断

在使用 QLogic QLE2672 主机总线适配器( HBA )的 Red Hat Enterprise Linux ( RHEL ) 8 内核上执行存储故障转移操作期间,可能会发生内核中断。内核中断会导致操作系统重新启动。重新启动会导致应用程序中断,如果配置了 kdump ,则会在 /var/crash/directory 下生成 vmcore 文件。使用 vmcore 文件确定故障的发生原因。在这种情况下,中断发生在 "kmem_cache_alloc +160" 模块中。它会使用以下字符串记录在 vmcore 文件中: "[ 异常 RIP : kmem_cache_alloc+160]" 。重新启动主机操作系统以恢复操作系统,然后重新启动应用程序。

"1226783"

如果在所有光纤通道( FC )主机总线适配器( HBA )上映射了 204 个以上的 SCSI 设备,则 RHEL8 操作系统将启动至 " 紧急模式 "

如果在操作系统重新启动过程中将主机映射到 204 个以上的 SCSI 设备, RHEL8 操作系统将无法启动到 " 正常模式 " 并进入 " 紧急模式 " 。这会导致大多数主机服务变得不可用。

"1230882"

在 RHEL8 安装期间,无法在 iSCSI 多路径设备上创建分区。

在 RHEL 8 安装期间,磁盘选择中未列出 iSCSI SAN LUN 多路径设备。因此, SAN 启动设备上未启用多路径服务。

"12359998"

rescan-scsi-bus.sh -a 命令扫描的设备不超过 328 个

如果 Red Hat Enterprise Linux 8 主机映射的 SCSI 设备超过 328 个,则主机操作系统命令 rescan-scsi-bus.sh -a 仅会扫描 328 个设备。主机不会发现任何剩余的映射设备。

"1231087"

在存储故障转移操作期间,使用 Emulex LPe16002 16 Gb FC 的 RHEL8 上的远程端口传输到阻止状态

在存储故障转移操作期间,使用 Emulex LPe16002 16 Gb 光纤通道( FC )的 RHEL8 上的远程端口传输到阻止状态。当存储节点恢复到最佳状态时, LIF 也会启动,并且远程端口状态应显示为联机。有时,远程端口状态可能会继续显示为 " 已阻止 " 或 " 不存在 " 。此状态可能会导致多路径层的 LUN 路径出现 " 故障 "

"1231098"

在存储故障转移操作期间,使用 Emulex LPe32002 32 Gb FC 的 RHEL8 上的远程端口传输到 Blocked 状态

在存储故障转移操作期间,使用 Emulex LPe32002 32 GB 光纤通道( FC )的 RHEL8 上的远程端口传输到阻止状态。当存储节点恢复到最佳状态时, LIF 也会启动,并且远程端口状态应显示为联机。有时,远程端口状态可能会继续显示为 " 已阻止 " 或 " 不存在 " 。此状态可能会导致多路径层的 LUN 路径出现 " 故障 " 。