使用 ONTAP 存储为 FCP 和 iSCSI 配置 Oracle Linux 7.0
"Linux Host Utilities (Linux主机实用程序)"软件为连接到ONTAP存储的Linux主机提供管理和诊断工具。在 Oracle Linux 7.0 主机上安装 Linux Host Utilities 时,您可以使用 Host Utilities 帮助您管理 ONTAP LUN 的 FCP 和 iSCSI 协议操作。
|
您不需要手动配置基于内核的虚拟机 (KVM) 设置,因为 ONTAP LUN 会自动映射到虚拟机管理程序。 |
第1步:(可选)启用SAN启动
您可以将主机配置为使用SAN启动来简化部署并提高可扩展性。
使用"互操作性表工具"验证您的Linux操作系统、主机总线适配器(HBA)、HBA固件、HBA启动BIOS和ONTAP版本是否支持SAN启动。
-
在服务器 BIOS 中为 SAN 启动 LUN 映射到的端口启用 SAN 启动。
有关如何启用 HBA BIOS 的信息,请参见供应商专用文档。
-
重新启动主机并验证操作系统是否已启动且正在运行、以验证配置是否成功。
第2步:安装Linux Host Utilities
NetApp强烈建议安装Linux主机实用程序、以支持ONTAP LUN管理并协助技术支持收集配置数据。
|
安装Linux Host Utilities不会更改Linux主机上的任何主机超时设置。 |
第3步:确认主机的多路径配置
您可以在Oracle Linux 7.0中使用多路径来管理ONTAP LUN。Oracle Linux 7.0 支持 Unbreakable Enterprise Kernel ( Uek ) R3 和 Uek r4 。操作系统默认使用 UEK R3 内核启动
|
您可以使用"Red Hat Enterprise Linux (RHEL) 7.0 的推荐设置"为 Oracle Linux 7.0 配置 Red Hat 兼容内核。 |
根据您的配置,选择 UEK 3 或 UEK 4 选项卡。
启用和禁用 ALUA 的 Oracle Linux UEK 3 设置都会自动更新。设置更新后,您需要启用“ALUA 处理程序”:
-
创建 initrd-image 的备份。
-
将以下参数值附加到内核以使 ALUA 和非 ALUA 正常工作:
rdloaddriver=scsi_dh_alua
示例输出kernel /vmlinuz-3.8.13-68.1.2.el6uek.x86_64 ro root=/dev/mapper/vg_ibmx3550m421096-lv_root rd_NO_LUKSrd_LVM_LV=vg_ibmx3550m421096/lv_root LANG=en_US.UTF-8 rd_NO_MDSYSFONT=latarcyrheb-sun16 crashkernel=256M KEYBOARDTYPE=pc KEYTABLE=us rd_LVM_LV=vg_ibmx3550m421096/lv_swap rd_NO_DM rhgb quiet rdloaddriver=scsi_dh_alua
-
重新创建 initrd 映像:
dracut -f
-
重新启动主机。
-
查看 `cat /proc/cmdline`命令来验证设置是否完成。
对于 Oracle Linux UEK 4,验证 `/etc/multipath.conf`文件已定义,并且已为您的 ONTAP LUN 配置了 NetApp 推荐的设置。
-
验证文件是否 `/etc/multipath.conf`退出。如果此文件不存在、请创建一个空的零字节文件:
touch /etc/multipath.conf
-
首次创建文件时
multipath.conf
、您可能需要启用并启动多路径服务以加载建议的设置:chkconfig multipathd on
/etc/init.d/multipathd start
-
每次启动主机时、空的 `/etc/multipath.conf`零字节文件都会自动加载NetApp建议的主机多路径参数作为默认设置。您无需更改 `/etc/multipath.conf`主机的文件、因为操作系统使用可正确识别和管理ONTAP LUN的多路径参数进行编译。
显示参数设置
参数 正在设置 … 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
-
验证ONTAP LUN的参数设置和路径状态:
multipath -ll
默认多路径参数支持AFF和FAS配置。在这些配置中、一个ONTAP LUN不应需要超过四个路径。如果路径数超过四个、则可能会在存储故障期间导致路径出现问题。
AFF或FAS配置应具有两组优先级较高和较低的路径。优先级较高的主动/优化路径由聚合所在的控制器提供。优先级较低的路径处于活动状态、但未进行优化、因为它们由其他控制器提供服务。只有在优化路径不可用时、才会使用非优化路径。
以下示例输出显示了具有两个主动/优化路径和两个主动/非优化路径的 AFF 或 FAS 配置中 ONTAP LUN 的正确参数设置和路径状态:
显示示例
multipath -ll 3600a0980383036347ffb4d59646c4436 dm-28 NETAPP,LUN C-Mode size=10G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw |-+- policy='service-time 0' prio=50 status=active | |- 16:0:6:35 sdwb 69:624 active ready running | |- 16:0:5:35 sdun 66:752 active ready running `-+- policy='service-time 0' prio=10 status=enabled |- 15:0:0:35 sdaj 66:48 active ready running |- 15:0:1:35 sdbx 68:176 active ready running
第4步:(可选)从多路径中排除设备
如果需要、您可以将不需要的设备的WWID添加到文件的"黑名单"部分、从而将该设备从多路径中排除 multipath.conf
。
-
确定WWID:
/lib/udev/scsi_id -gud /dev/sda
"sa"是要添加到黑名单中的本地SCSI磁盘。
例如,WWID为
360030057024d0730239134810c0cb833
。 -
将WWID添加到"黑名单"部分:
blacklist { wwid 360030057024d0730239134810c0cb833 devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^hd[a-z]" devnode "^cciss.*" }
第5步:自定义ONTAP LUN的多路径参数
如果您的主机连接到其他供应商的LUN、并且任何多路径参数设置被覆盖、则您需要稍后在文件中添加专门适用于ONTAP LUN的zas来更正这些设置 multipath.conf
。否则、ONTAP LUN可能无法按预期运行。
请检查 `/etc/multipath.conf`文件,特别是默认值部分中的设置,以了解可能覆盖的设置多路径参数的默认设置。
|
您不应覆盖ONTAP LUN的建议参数设置。要获得最佳主机配置性能、需要使用这些设置。有关详细信息、请联系NetApp支持部门、您的操作系统供应商或这两者。 |
以下示例显示了如何更正被覆盖的默认值。在此示例中、 multipath.conf`文件为和定义了与 `no_path_retry`ONTAP LUN不兼容的值 `path_checker
、您无法删除这些参数、因为ONTAP存储阵列仍连接到主机。而是通过向专门应用于ONTAP LUN的文件添加设备段来 multipath.conf`更正和 `no_path_retry`的值 `path_checker
。
显示示例
defaults { path_checker readsector0 no_path_retry fail } devices { device { vendor "NETAPP" product "LUN" no_path_retry queue path_checker tur } }
第6步:查看已知问题
带有 ONTAP 存储的 Oracle Linux 7.0 主机存在以下已知问题:
NetApp 错误 ID | 标题 | Description |
---|---|---|
OL7.0 :由于 Emulex 8G ( LPe12002 )主机上的 OL 7.0 Uek r3U5 测试版出现 "RSCN 超时 " 错误,主机丢失 LUN 的所有路径并挂起 |
您可能会发现,在对 I/O 执行存储故障转移操作期间, Emulex 8G ( LPe12002 )主机挂起,并且 I/O 中断率较高您可能会发现路径无法恢复,这是由于 RSCN 超时导致的,主机丢失所有路径并挂起。达到此问题描述的概率很高。 |
|
OL 7.0:在对I/O执行存储故障转移操作期间、QLogic 8G FC (QLE2562) SAN主机上观察到大量I/O中断 |
在对I/O执行存储故障转移操作期间、QLogic 8G FC (QLE2562)主机上可能会出现大量I/O中断主机上发生I/O中断时会发生中断和设备重置。发生此I/O中断的可能性很高。 |
|
OL7.0 : dracut 无法在 UEKR3U5 alpha 上的 initramfs 中包含 scsi_dh_alua.ko 模块 |
即使在内核命令行中添加参数 "rdloaddriver=SCSI_DH_ALUA" 并创建了 dracut , SCSI_DH_ALUA 模块也可能无法加载。因此,未按建议为 NetApp LUN 启用 ALUA 。 |
|
尽管在安装 OL 7.0 操作系统期间登录成功,但 Anacondation 仍会显示 iSCSI 登录失败消息 |
安装 OL 7.0 时, anacondation 安装屏幕会显示 iSCSI 登录成功后,对多个目标 IP 的 iSCSI 登录失败。AnacondA 显示以下错误消息: "Node Login Failed" 只有在为 iSCSI 登录选择多个目标 IP 时,您才会看到此错误。您可以单击 " 确定 " 按钮继续安装操作系统。此错误不会妨碍安装 iSCSI 或 OL 7.0 操作系统。 |
|
OL7.0 : Anacondup 不会在内核 cmd 行中添加 bootdev 参数来设置 iSCSI SANboot OS 安装的 IP 地址 |
Anaconda 不会在内核命令行中添加 bootdev 参数,您可以在 iSCSI 多路径 LUN 上安装 OL 7.0 操作系统期间设置 IPv4 地址。因此,您不能为任何配置为在 OL 7.0 启动期间与存储子系统建立 iSCSI 会话的以太网接口分配 IP 地址。由于未建立 iSCSI 会话,因此在操作系统启动时不会发现根 LUN ,因此操作系统启动失败。 |
|
在对I/O执行存储故障转移操作期间观察到QLogic 10G FCoE (QLE8152)主机内核崩溃 |
您可能会在10G FCoE逻辑(QLE8152)主机上的逻辑驱动程序模块中观察到内核崩溃。在对I/O执行存储故障转移操作期间发生崩溃发生此崩溃的可能性较高、这会导致主机上的I/O中断时间较长。 |
下一步是什么?
-
了解ASM镜像。
自动存储管理(Automatic Storage Management、ASM)镜像可能需要更改Linux多路径设置、以使ASM能够识别问题并切换到备用故障组。ONTAP上的大多数ASM配置都使用外部冗余、这意味着数据保护由外部阵列提供、ASM不会镜像数据。某些站点使用具有正常冗余的ASM来提供双向镜像、通常在不同站点之间进行镜像。有关详细信息、请参见"基于ONTAP的Oracle数据库"。