本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

使用Oracle Linux 6.4搭配NetApp ONTAP 功能

貢獻者

安裝Linux Unified Host Utilities

NetApp Linux Unified Host Utilities軟體套件可在上取得 "NetApp 支援網站" 在32位元和64位元的.rpm檔案中。如果您不知道哪一個檔案適合您的組態、請使用 "NetApp 互通性對照表工具" 驗證您需要哪一個。

強烈建議安裝Linux Unified Host Utilities、但並非必要。公用程式不會變更Linux主機上的任何設定。這些公用程式可改善管理、並協助NetApp客戶支援部門收集您的組態相關資訊。

如果您目前安裝的是Linux Unified Host Utilities版本、您應該將其升級或移除、然後使用下列步驟來安裝最新版本。

  1. 從下載32位元或64位元Linux Unified Host Utilities軟體套件 "NetApp 支援網站" 站台到主機。

  2. 使用下列命令安裝軟體套件:

    「rpm -ivh netapp_Linux統一化_host_utilities - 7-1.x86_64」

SAN工具套件

當您安裝NetApp主機公用程式套件時、會自動安裝此工具套件。此套件提供「資源」公用程式、可協助您管理LUN和HBA。「lanlun」命令會傳回對應至主機的LUN資訊、多重路徑、以及建立啟動器群組所需的資訊。

在以下範例中、「左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開機、則組態必須支援SAN開機。您可以使用 "NetApp 互通性對照表工具" 驗證是否ONTAP 支援您的作業系統、HBA、HBA韌體和HBA開機BIOS及BIOS版本。

步驟
  1. 將SAN開機LUN對應至主機。

  2. 確認有多個可用路徑。

    請記住、只有在主機作業系統啟動並在路徑上執行之後、才能使用多個路徑。

  3. 在伺服器BIOS中為SAN開機LUN對應的連接埠啟用SAN開機。

    如需如何啟用HBA BIOS的相關資訊、請參閱廠商專屬的文件。

  4. 重新啟動主機、確認開機成功。

多重路徑

對於Oracle Linux 6.4、/etc/multipath.conf檔案必須存在、但您不需要對檔案進行特定變更。Oracle Linux 6.4是以辨識及正確管理ONTAP 支援LUN所需的所有設定所編譯。若要啟用ALUA處理常式、請執行下列步驟:

  1. 建立initrd-image的備份。

  2. 將下列參數值附加至核心、以便ALUA和非ALUA正常運作:「rdaloaddriver=scsi_d_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
  3. 使用「mkitrd」命令重新建立initrd-image。Oracle 6x及更新版本可使用以下命令:命令:「mkitrd -f /boot/ initrd-"uname -r"。imguname -r"或命令:「Dracut -f」

  4. 重新啟動主機。

  5. 驗證「cat /proc/cmdline」命令的輸出、以確保設定完成。您可以使用「multiPath -ll」命令來驗證ONTAP 您的各個LUN的設定。應該有兩種路徑群組具有不同的優先順序。優先順序較高的路徑為「主動/最佳化」、表示它們是由集合體所在的控制器提供服務。優先順序較低的路徑為作用中、但未最佳化、因為它們是從不同的控制器提供。未最佳化的路徑只有在沒有可用的最佳化路徑時才會使用。

下列範例顯示ONTAP 使用兩個主動/最佳化路徑和兩個主動/非最佳化路徑的正確輸出。

# multipath -ll
3600a09803831347657244e527766394e dm-5 NETAPP,LUN C-Mode
size=80G 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
| |- 0:0:26:37 sdje 8:384   active ready running
| |- 0:0:25:37 sdik 135:64  active ready running
|-+- policy='round-robin 0' prio=10 status=enabled
  |- 0:0:18:37 sdda 70:128  active ready running
  |- 0:0:19:37 sddu 71:192  active ready running
附註 請勿使用過多的路徑來通往單一LUN。不需要超過4個路徑。在儲存設備故障期間、超過8個路徑可能會導致路徑問題。

建議設定

Oracle Linux 6.4作業系統經過編譯、可辨識ONTAP 出各種不完整的LUN、並自動正確設定所有組態參數。

多重路徑精靈必須存在multipath.conf檔案、才能啟動、但您可以使用命令「Touch /etc/multipath.conf」建立空白的零位元組檔案、這是您第一次建立此檔案時、可能需要啟用及啟動多重路徑服務。

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

除非您有不想由多重路徑管理的裝置、或您有覆寫預設值的現有設定、否則不需要直接將任何內容新增至multipath.conf。您可以將下列語法新增至多重路徑.conf檔案、以排除不需要的裝置。

附註 將<DevID>取代為您要排除的裝置WWID字串。使用下列命令來判斷WWID:
blacklist {
        wwid <DevId>
        devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
        devnode "^hd[a-z]"
        devnode "^cciss.*"
}

在此範例中、sda是我們需要列入黑名單的本機SCSI磁碟。

  1. 執行下列命令來判斷WWID:

    # /lib/udev/scsi_id -gud /dev/sda
    360030057024d0730239134810c0cb833
  2. 將此WWID新增至/etc/multipath.conf中的黑名單stanza:

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

您應該隨時檢查您的「/etc/multipath.conf」檔案是否有舊版設定、尤其是在預設值區段、這可能會覆寫預設設定。下表顯示ONTAP 了關鍵的「多路徑d」參數、以及所需的值。如果某個主機連接到其他廠商的LUN、且其中任何參數都被覆寫、則需要在稍後的「多重路徑.conf」中修正這些參數、以特別適用於ONTAP 整個LUN。如果沒有這麼做、ONTAP 則可能無法如預期般運作。只有在完全瞭解影響的情況下、才應在諮詢NetApp和/或作業系統廠商的意見下覆寫這些預設值。

參數 設定

DETECT(偵測)_prio

是的

開發損失_tmo

"無限遠"

容錯回復

立即

fast_io_f故障_tmo

5.

功能

"3 queue_if_no_path pg_init_retries 50"

Flip_on_last刪除

"是"

硬體處理常式

「0」

no_path_retry

佇列

path_checker_

"周"

path_grouping_policy

"群組by_prio"

path_selector

"循環資源0"

Polling_時間 間隔

5.

優先

「NetApp」ONTAP

產品

LUN.*

Retain附加的硬體處理常式

是的

RR_weight

"統一"

使用者易記名稱

廠商

NetApp

下列範例說明如何修正被覆寫的預設值。在這種情況下、「multiPath.conf」檔案會定義「path_checker'」和「detect_prio'」的值、這些值與ONTAP 不相容於哪些LUN。如果因為主機仍連接其他SAN陣列而無法移除、則可針對ONTAP 具有裝置例項的LUN、特別修正這些參數。

defaults {
 path_checker readsector0
 detect_prio no
 }
devices {
 device {
 vendor "NETAPP "
 product "LUN.*"
 path_checker tur
 detect_prio yes
 }
}
附註 若要設定Oracle Linux 6.4 RedHat Enterprise核心(RHCK)、請使用 "建議設定" 適用於Red Hat Enterprise Linux(RHEL)6.4。

已知問題與限制

NetApp錯誤ID 標題 說明 Bugzilla ID

"713555"

在OL6.4和OL5.9上會顯示QLogic介面卡重設、在控制器故障(例如接管/恢復、重新開機)上顯示UEK2

當控制器發生故障時(例如接管、恢復和重新開機)、使用UEK2(kernel-uek-2.6.39至400.171.el6uek)或使用UEK2(kernel-uek-2.6.39 400.171.el5uek)的OOL5.9主機(例如、接管、恢復和重新開機)、可在OOL6.4主機上看到QLogic介面卡重設。這些重設是間歇性的。當這些介面卡重設發生時、可能會發生長時間的I/O中斷(有時甚至超過10分鐘)、直到介面卡重設成功、而且路徑的狀態會由dm-multipath.在/var/log/Messages中、當此錯誤發生時、會看到類似下列的訊息:kernel:qla2xxx [0000:11:00.0]-8018:0:介面卡重設核發的nexus=0:2:13。這是在OOL6.4上的核心版本:kernel-uek-2.6.39-400.171.el6uek on OL5.9:kernel-uek-2.6.39-400.171.el5uek中觀察到的

"13999"

"715217"

使用UEK2的OL6.4或OL5.9主機路徑恢復延遲、可能會導致控制器或網路故障延遲I/O恢復

當控制器故障(儲存容錯移轉或恢復、重新開機等)或光纖網路故障(FC連接埠停用或啟用)發生於Oracle Linux 6.4或Oracle Linux 5.9主機搭配UEK2核心時、DM-Multifpath的路徑恢復需要很長時間(4分鐘)。至10分鐘)。有時、在路徑恢復至作用中狀態期間、也會看到下列lffc驅動程式錯誤:核心:SD 0:0:8:3:[ldps]結果:hostbyte=did_errors driverbyte=driver_OK、因為在故障事件期間路徑恢復延遲、I/O恢復也會延遲。ol 6.4版本:device-mapper-1.02.77-9.el6設備映射器-multipath-0.4.9-64.0.1.el6 kernel-uek-2.6.39-400.171.el6uek OL 5.9版本:設備對應器-1.02.77-9.el5設備對應器-multipath-0.4.9-64.0.1.el5-2.6-4uek .5e.ek核心.5k

"14001.."

"709911"

使用UEK2核心的OL6.4和OL5.9 iSCSI上的DM多重路徑、在儲存設備故障後需要很長時間才能更新LUN路徑狀態

在執行Oracle Linux 6 Update 4和Oracle Linux 5 Update 9 iSCSI及Unbreakable Enterprise Kernel Release 2(UEK2)的系統上、發生儲存故障事件時、DM多重路徑(DMP)需要約15分鐘才能更新裝置對應程式(DM)裝置(LUN)的路徑狀態、這是一項問題。如果您在此時間間隔內執行「multipath-ll」命令、則該DM裝置(LUN)的路徑狀態會顯示為「執行中的容錯移轉」。路徑狀態最終會更新為「作用中的就緒執行中」。 此問題出現於下列版本:Oracle Linux 6 Update 4:UEK2核心:2.6.39-400.171.el6uek.x86_64多重路徑:device-mapper-multipath-0.4.9-64.0.1.el6.x86_64 iSCSI:iscsiscs-initiator -utils-6.2.0.873-2.1.1.el6.x86_64 net_utils.urok2-64.64urok2-640.64urok2-udor.5urokor.5net.64kor.64urok.64urok.64urok.64urok.5u.64urok.64k.64_64urok.urok.v mite-64urok.64urok.urok.64urokore.5urok.v 64uro

"13984."

"739909"

在使用UEK2的OL6.x和OL5.x主機發生FC故障之後、SG_IO ioctl系統呼叫在dm-multipaths裝置上失敗

在使用UEK2核心的Oracle Linux 6.x主機和使用UEK2核心的Oracle Linux 5.x主機上、發現問題。多重路徑裝置上的sg_*命令會在發生光纖故障之後失敗、並顯示EAGAIN錯誤代碼(errno)、使作用中路徑群組中的所有路徑都關閉。僅當多重路徑裝置沒有I/O發生時、才會出現此問題。以下為範例:# sg_inq -v /dev/mapper/3600a098041764937303f436c75337370查詢cdb:12 00 00 24 00 ioctl(SG_IO v3)失敗、作業系統(errno)= 11查詢:通過OS錯誤:資源暫時無法使用HDIO_Get_iocl:身分識別失敗 資源暫時無法使用[11]在/dev/mapper/3600a098041764937303f436c75337370 #上、SCSI查詢和擷取ATA資訊都失敗。此問題發生的原因是、當DM-Multipath裝置上沒有I/O時、ioctl()呼叫期間不會啟動路徑群組切換至其他作用中群組。以下版本的kernel-uek和device-mapper-multipaths套件出現此問題:OL6.4版本:kernel-uek-2.6.39-400.171.el6uek設備-mapper-multipath-0.4.9-64.0.1.el6 OL5.9版本:kernel-uek-2.6.39-400.171.el5uek設備-640.4.0.4-multipathmapper.5.

"14082"

附註 如需Oracle Linux(Red Hat相容核心)已知問題、請參閱 "已知問題" 適用於Red Hat Enterprise Linux(RHEL)6.4。

版本資訊

ASM鏡射

ASM鏡射可能需要變更Linux多重路徑設定、以允許ASM辨識問題並切換至其他故障群組。大部分關於「不完整」的ASM組態ONTAP 都使用外部備援、這表示資料保護是由外部陣列提供、而ASM不會鏡射資料。某些站台使用具有一般備援的ASM來提供雙向鏡像、通常是跨不同站台。請參閱 "Oracle資料庫ONTAP" 以取得更多資訊。