ESXi 與 iSCSI SAN 搭配使用時,請遵循 VMware 提供的建議以避免出現問題。

請洽詢儲存區代表,確定儲存區系統是否支援 Storage APIs- Array Integration 硬體加速功能。如果支援硬體加速,請參閱廠商說明文件,以在儲存區系統端啟用硬體加速支援。如需詳細資訊,請參閱 vSphere 中的儲存區硬體加速

防止出現 iSCSI SAN 問題

ESXi 與 SAN 搭配使用時,必須遵循特定準則才能避免 SAN 問題。

遵循下列提示:

  • 每個 LUN 上僅放置一個 VMFS 資料存放區。
  • 請勿變更系統為您設定的路徑原則,除非您瞭解做出此類變更的影響。
  • 將所有資訊記錄下來。其中包括涉及以下項目的資訊:組態、存取控制、儲存區、交換器、伺服器和 iSCSI HBA 組態、軟體和韌體版本,以及儲存區纜線規劃。
  • 對失敗情況進行規劃:
    • 製作多個拓撲對應複本。考慮每一元素發生故障時對 SAN 的影響。
    • 除去不同的連結、交換器、HBA 和其他元素,確保在設計中未遺漏嚴重故障點。
  • 確保根據插槽和匯流排速度,將 iSCSI HBA 安裝到 ESXi 主機上的正確插槽。在伺服器中的可用匯流排之間平衡 PCI 匯流排負載。
  • 在所有可見度點 (包括 ESXi 效能圖、乙太網路交換器統計資料及儲存區效能統計資料),熟悉儲存區網路中的各個監控點。
  • 僅在 LUN 上部署的 VMFS 資料存放區沒有執行中的虛擬機器時,變更 LUN 識別碼。如果您變更此識別碼,VMFS 資料存放區上執行的虛擬機器可能會發生故障。

    變更 LUN 的識別碼後,您必須重新掃描儲存區,以重設您主機上的識別碼。如需使用重新掃描的相關資訊,請參閱ESXi 儲存區的重新掃描作業

  • 如果變更 iSCSI 介面卡的預設 iSCSI 名稱,請確保輸入的名稱是全球唯一的,且格式正確。若要避免儲存區存取問題,即使在不同的主機上,也請勿將相同的 iSCSI 名稱指派給不同的介面卡。

最佳化 iSCSI SAN 儲存區效能

要最佳化一般 SAN 環境,需要考慮多個因素。

如果正確設定了網路環境,則 iSCSI 元件將為 iSCSI 啟動器和目標提供足夠的輸送量及足夠低的延遲。如果網路壅塞,並且連結、交換器或路由器處於飽和狀態,則 iSCSI 效能會下降,可能無法滿足 ESXi 環境的需求。

儲存區系統效能

儲存區系統效能是影響整個 iSCSI 環境效能的主要因素之一。

如果儲存區系統效能發生問題,請參閱儲存區系統廠商說明文件,以取得任何相關資訊。

指派 LUN 時,請注意,您可以透過多台主機存取每個共用的 LUN,而且每台主機上都可執行多台虛擬機器。由 ESXi 主機使用的一個 LUN 可向不同作業系統上執行的許多不同應用程式提供 I/O 服務。由於此工作負載的多樣性,包含 ESXi LUN 的 RAID 群組不應包括其他主機所使用的 LUN,這些主機未執行 ESXi 用於 I/O 密集應用程式。

啟用讀取快取和寫入快取。

負載平衡是將伺服器 I/O 要求分散到所有可用的 SP 及其相關聯的主機伺服器路徑的程序。目的是針對輸送量 (每秒 I/O 流量、每秒 MB 數或回應時間) 實現最佳效能。

SAN 儲存區系統需要不斷進行重新設計和調整,確保所有儲存區系統路徑間的 I/O 負載獲得平衡。若要滿足此需求,請在所有 SP 間散佈到 LUN 的路徑,以提供最佳負載平衡效果。密切監控可指示何時需要手動重新平衡 LUN 的散佈。

調整靜態平衡儲存區系統,即監控特定效能統計資料 (如每秒 I/O 作業數、每秒區塊數及回應時間) 並透過散佈 LUN 工作負載將工作負載分散到所有 SP。

iSCSI 伺服器效能

若要確保最佳的 ESXi 主機效能,需考慮多個因素。

每個伺服器應用程式存取其指定儲存區時必須滿足下列條件:

  • 高 I/O 速率 (每秒 I/O 作業次數)
  • 高輸送量 (每秒 MB)
  • 最小延遲 (回應時間)

由於各應用程式的需求不同,您可以選取儲存區系統上的適當 RAID 群組來達成上述目標。

若要實現效能目標,請遵循以下準則:

  • 將每個 LUN 置於提供必要效能層級的 RAID 群組。監控指派的 RAID 群組中其他 LUN 的活動和資源使用。對於高效能 RAID 群組,因為有過多應用程式對其執行 I/O 作業,它可能無法滿足 ESXi 主機上執行的應用程式所需的效能目標。
  • 若要實現尖峰期間主機上所有應用程式的輸送量上限,請安裝足夠的網路介面卡或 iSCSI 硬體介面卡。將 I/O 分散在多個連接埠,可為各個應用程式提供更快的輸送量及較少的延遲。
  • 若要為軟體 iSCSI 提供冗餘,請確定啟動器連線到用於 iSCSI 連線的所有網路介面卡。
  • ESXi 系統配置 LUN 或 RAID 群組時,請注意多個作業系統將使用和共用該資源。ESXi 主機所需的 LUN 效能可能比您使用一般實體機器時高得多。例如,如果預計執行四個 I/O 密集應用程式,請為 ESXi LUN 配置四倍大小的效能容量。
  • 將多個 ESXi 系統與 vCenter Server 一起使用時,儲存區效能需求會增加。
  • ESXi 系統上執行的應用程式所需的未完成 I/O 數目必須與 SAN 能處理的 I/O 數目相符。

網路效能

一般 SAN 包含透過交換器網路連線到一系列儲存區系統的電腦集合。多台電腦通常會存取同一儲存區。

下圖顯示了多個透過乙太網路交換器連線到儲存區系統的電腦系統。在此組態中,每個系統都透過單一乙太網路連結連線到交換器。交換器透過單一乙太網路連結連線到儲存區系統。

圖 1. 到儲存區的單一乙太網路連結連線
該圖顯示了多個透過單一乙太網路交換器連線到儲存區系統的系統。

系統從儲存區讀取資料時,儲存區透過傳送足夠的資料以填滿儲存區系統與乙太網路交換器之間的連結來回應。任何單一系統或虛擬機器不太可能充分利用網路速度。但是,當許多系統共用一個儲存裝置時,可以預期這種情況。

將資料寫入儲存區時,多個系統或虛擬機器可能會嘗試填滿其連結。因此,在系統與儲存區系統之間的交換器可能會捨棄網路封包。由於交換器傳送到儲存區系統的流量超過單一連結可以承載的流量,可能會發生資料捨棄。交換器可傳輸的資料量受到其與儲存區系統之間的連結速度限制。

圖 2. 捨棄的封包
該圖顯示了伺服器和儲存區系統之間捨棄資料的交換器。

從捨棄的網路封包復原會導致效能明顯降低。除了花費時間判定資料是否已捨棄之外,重新傳輸還會使用網路頻寬,否則網路頻寬將用於目前交易。

iSCSI 流量透過傳輸控制通訊協定 (TCP) 進行網路傳輸。TCP 是一個可靠的傳輸通訊協定,可確保重試捨棄的封包並使其最終到達目的地。TCP 旨在從捨棄的封包復原並快速、順暢地將其重新傳輸。但是,如果交換器定期捨棄封包,則網路輸送量會降低。網路會塞滿重新傳送資料的要求以及已重新傳送的封包。傳輸的資料少於網路未壅塞時的資料。

大多數乙太網路交換器可緩衝或儲存資料。此技術可為每個嘗試傳送資料的裝置提供到達目的地的同等機會。這種緩衝部分傳輸資料,與許多限制未完成命令數目的系統組合使用的功能可減少小型高載的傳輸。多個系統的高載可以依序傳送到儲存區系統。

如果交易較大,且多個伺服器透過單一交換器連接埠傳送資料,可能會超過緩衝能力。在此案例中,交換器會捨棄無法傳送的資料,且儲存區系統必須要求重新傳輸已捨棄的封包。例如,如果乙太網路交換器可緩衝 32 KB,但伺服器傳送 256 KB 至儲存裝置,則會捨棄部分資料。

大多數受管理交換器都會提供所捨棄封包的相關資訊,類似於下列形式:

*: interface is up
IHQ: pkts in input hold queue     IQD: pkts dropped from input queue
OHQ: pkts in output hold queue    OQD: pkts dropped from output queue
RXBS: rx rate (bits/sec)          RXPS: rx rate (pkts/sec)
TXBS: tx rate (bits/sec)          TXPS: tx rate (pkts/sec)
TRTL: throttle count
表 1. 交換器資訊範例
介面 IHQ IQD OHQ OQD RXBS RXPS TXBS TXPS TRTL
* GigabitEthernet0/1 3 9922 0 0 476303000 62273 477840000 63677 0

在此 Cisco 交換器範例中,使用的頻寬為 476303000 位元/秒,低於連線速度的一半。連接埠將緩衝傳入封包,但已捨棄數個封包。此介面摘要最後一行的 IQD 資料行指示此連接埠已捨棄近 10,000 個輸入封包。

為避免此問題而對組態進行變更時需確保多個輸入乙太網路連結不縮減為一個輸出連結,否則會導致連結超額訂閱。如果在幾乎滿載時進行傳輸的多個連結切換為較小數目的連結,則可能發生超額訂閱的情況。

一般而言,向儲存區寫入大量資料的應用程式或系統必須避免共用儲存裝置的乙太網路連結。透過與儲存裝置的多個連線,這些類型的應用程式可實現最佳效能。

[交換器與儲存區的多個連線] 顯示了交換器與儲存區的多個連線。

圖 3. 交換器與儲存區的多個連線
該圖顯示了交換器與儲存區的多個連線。

使用 VLAN 或 VPN 不能針對共用組態中的連結超額訂閱問題提供合適的解決方案。VLAN 和網路的其他虛擬磁碟分割可提供邏輯設計網路的方式。但是不會變更交換器之間連結和主幹的實體功能。當儲存區流量和其他網路流量共用實體連線時,可能會出現超額訂閱和遺失封包的情況。此情況也適用於共用交換器間主幹的 VLAN。設計 SAN 的效能時,必須考慮網路的實體限制,而不是邏輯配置。

檢查乙太網路交換器統計資料

許多乙太網路交換器提供多種方式來監控交換器的健全狀況。

如果連接埠需要經常執行接近上限的輸送量,則交換器將無法提供最佳效能。如果 iSCSI SAN 中的連接埠需要執行接近上限的輸送量,請減少負載。如果連接埠已連線到 ESXi 系統或 iSCSI 儲存區,您可使用手動負載平衡來減少負載。

如果連接埠與多個交換器或路由器連線,請考慮在這些元件間安裝其他連結來處理更多負載。乙太網路交換器通常還提供有關傳輸錯誤、已排入佇列的封包和已捨棄的乙太網路封包的資訊。如果交換器定期報告有關用於 iSCSI 流量之連接埠的上述狀況,iSCSI SAN 的效能將受影響。