Skip to main content
SAN hosts and cloud clients
本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

將 Citrix XenServer 搭配 ONTAP 使用

貢獻者

您可以使用 FC 、 FCoE 和 iSCSI 通訊協定、為 Citrix XenServer 7 系列作業系統版本設定 ONTAP SAN 主機組態設定。

SAN開機

您需要的產品

如果您決定使用SAN開機、則組態必須支援SAN開機。您可以使用 "NetApp 互通性對照表工具" 驗證是否ONTAP 支援您的作業系統、HBA、HBA韌體和HBA開機BIOS及BIOS版本。

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

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

    註 在主機作業系統啟動並在路徑上執行之後,就可以使用多個路徑。
  3. 在伺服器BIOS中為SAN開機LUN對應的連接埠啟用SAN開機。

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

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

多重路徑

Citrix XenServer中的多重路徑支援是以Device對應器Multibathd元件為基礎。不會自動為所有顯示給XenServer的LUN建立裝置對應器節點、而且只有當儲存管理層(API)主動使用LUN時、才會進行資源配置。Citrix XenServer Storage Manager API外掛程式可自動啟動及停用多重路徑節點。

由於與整合式多重路徑管理架構不相容、Citrix建議您使用Citrix XenCenter應用程式來管理儲存組態。如果需要手動查詢Device Mapper表的狀態、或在系統上列出作用中的裝置對應器多重路徑節點、您可以使用「/sbin/mpathutils STATUS」命令來驗證ONTAP 您的還原LUN設定。如需詳細資訊、請參閱Citrix XenServer的標準廠商文件。

非 ASA 組態

對於非 ASA 組態、應該有兩個路徑群組、其優先順序不同。優先順序較高的路徑為主動 / 最佳化、表示它們由集合所在的控制器提供服務。優先順序較低的路徑是作用中的、但未最佳化、因為它們是由不同的控制器提供服務。非最佳化路徑只有在最佳化路徑無法使用時才會使用。

範例

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

# mpathutil status
show topology
3600a098038303458772450714535317a dm-0 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='service-time 0' prio=50 status=active
| |- 2:0:2:0   sdc   8:32    active ready running
| |- 12:0:5:0  sdn   8:208   active ready running
| |- 2:0:6:0   sdg   8:96    active ready running
| `- 12:0:0:0  sdi   8:128   active ready running
|-+- policy='service-time 0' prio=10 status=enabled
  |- 2:0:0:0   sda   8:0     active ready running
  |- 2:0:1:0   sdb   8:16    active ready running
  |- 12:0:3:0  sd1   8:176   active ready running
  `-12:0:6:0   sdo   8:224   active ready running
[root@sanhost ~]#
註 單一 LUN 不應需要四個以上的路徑。如果路徑超過四條,可能會在儲存設備故障期間造成路徑問題。

所有SAN陣列組態

在「All SAN Array(ASA 整個SAN陣列)」(ESAN Array)組態中、所有通往特定邏輯單元(LUN)的路徑都會啟用並最佳化。這表示I/O可同時透過所有路徑提供服務、進而提升效能。

範例

下列範例顯示ONTAP 所有四個主動/最佳化路徑之用、正確輸出的列舉之一:

# mpathutil status
show topology
3600a098038303458772450714535317a dm-0 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='service-time 0' prio=50 status=active
| |- 2:0:2:0   sdc   8:32    active ready running
| |- 12:0:5:0  sdn   8:208   active ready running
| |- 2:0:6:0   sdg   8:96    active ready running
| `- 12:0:0:0  sdi   8:128   active ready running
[root@sanhost ~]#
註 單一 LUN 不應需要四個以上的路徑。如果路徑超過四條,可能會在儲存設備故障期間造成路徑問題。

建議設定

Citrix XenServer 7.x OS是以辨識及正確管理ONTAP VMware LUN所需的所有設定所編譯。對於Citrix XenServer 7.x、必須存在空白的零位元組「/etc/multipath.conf」檔案、但您不需要對該檔案進行特定變更。

從* XenCenter Management Portal/*啟用主機多重路徑服務、並確認多重路徑服務已啟用並正在執行。

# systemct1 status multipathd
multipathd.service - Device-Mapper Multipath Device Controller
  Loaded:  load (/usr/lib/systemd/system/multipathd.service; enabled; vendor preset: enabled)
 Drop-In:  /etc/systemd/system/multipathd.service.d
             slice.config
  Active:  active (running) since Fri YYYY-MM-DD 00:00:26 IST; 1 month 9 days ago
Main PID:  3789 (multipathd)
  CGroup:  /control.slice/multipathd.service
            3789  /sbin/multipathd
`/etc/multipath.conf`除非您有不想要多重路徑管理的裝置、或是現有的設定會覆寫預設值、否則不需要將內容附加至檔案。您可以在 `multipath.conf`檔案中新增下列語法、以排除不需要的裝置。
# cat /etc/multipath.conf
blacklist {
     wwid    <DevId>
     devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
     devnode "^hd[a-z]"
     devnode "^cciss.*"
}
註 將*取代為您要排除之裝置的WWID字串。
範例

在以下 Citrix XenServer 7.x 範例中 sda、是您要新增至黑名單的本機 SCSI 磁碟。

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

    # lib/udev/scsi_id -gud /dev/sda
    3600a098038303458772450714535317a
  2. 將此WWID新增至「/etc/multipath.conf」中的黑名單節:

    #cat /etc/multipath.conf
    blacklist {
      wwid    3600a098038303458772450714535317a
      devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9*]"
      devnode "^hd[a-z]"
      devnode "^cciss.*"
    }

請使用「$multipathd show config」命令來參考多重路徑參數執行時間組態。您應該一律檢查執行中的組態、查看可能會覆寫預設設定的舊版設定、尤其是在預設值區段。

下表顯示ONTAP 適用於整個過程的關鍵*多路徑d*參數、以及所需的值。如果主機連接至其他廠商的LUN、且任一參數被覆寫、則需要在*多重路徑.conf *中的稍後儲存區加以修正、以特別適用於ONTAP 整個LUN。如果沒有這麼做、ONTAP 則可能無法如預期般運作。下列預設值僅應在諮詢NetApp和/或作業系統廠商、且必須完全瞭解其影響時予以覆寫。

參數 設定

"Detect_prio"

是的

「DEEV_Loss」TMO

"無限遠"

故障恢復

立即

「fast_io_fail _tmo」

5.

功能

"3 queue_if_no_path pg_init_retries 50"

「Flush」

"是"

硬體處理常式

「0」

"path_checker_"

"周"

"path_grouping_policy_"

"群組by_prio"

"path_selector"

"服務時間0"

"Polling_時間 間隔"

5.

《prio》

「NetApp」ONTAP

《產品》

LUN.*

"REATH_ATHOND_HW_Handler"

是的

"rr_weight(rrr_weight)"

"統一"

《user_fuse_names》

「第一」

NetApp

範例

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

# cat /etc/multipath.conf
defaults {
  path_checker readsector0
  detect_prio no
}
devices{
        device{
                vendor "NETAPP "
                product "LUN.*"
                path_checker tur
                detect_prio yes
        }
}
註 Citrix XenServer建議針對所有Linux和Windows型客體VM使用Citrix VM工具、以進行支援的組態。

已知問題

使用 ONTAP 版本的 Citrix XenServer 沒有已知問題。