VMware 提供高效能外掛程式 (HPP),以提升 ESXi 主機上儲存裝置的效能。
HPP 會取代用於高速裝置 (例如 NVMe) 的 NMP。HPP 是宣告 NVMe-oF 目標的預設外掛程式。ESXi 支援沒有端對端 NVMe 和 SCSI 到 NVMe 的模擬。HPP 僅支援主動/主動和隱含 ALUA 目標。
從 vSphere 7.0 Update 2 開始,HPP 將成為本機 NVMe 和 SCSI 裝置的預設外掛程式,但您可以將它取代為 NMP。
HPP 支援 | vSphere 7.0 Update 2 及更新版本 |
---|---|
儲存裝置 | 本機 NVMe 和 SCSI 共用 NVMe-oF (僅限主動/主動和隱含 ALUA 目標) |
多重路徑 | 是 |
第二層外掛程式 | 否 |
SCSI-3 持續性保留區 | 否 |
採用軟體模擬的 4Kn 裝置 | 是 |
路徑選取配置
若要支援多重路徑,HPP 會在選取 I/O 要求的實體路徑時使用路徑選取配置 (PSS)。
您可以使用 vSphere Client 或 esxcli 命令來變更預設的路徑選取機制。
如需在 vSphere Client 中設定路徑機制的相關資訊,請參閱變更路徑選取原則。若要使用 esxcli 命令進行設定,請參閱 ESXi esxcli HPP 命令。
ESXi 支援下列路徑選取機制。
- 固定
-
使用此配置時,會將指定的慣用路徑用於 I/O 要求。如果未指派慣用路徑,該主機會選取在開機時探索到的第一個工作路徑。如果慣用路徑無法使用,主機將選取替代的可用路徑。當該路徑可再次使用時,主機會回到先前定義的慣用路徑。
將 FIXED 設定為路徑選取機制時,請選取慣用路徑。
- LB-RR (負載平衡 - 循環配置資源)
-
這是由 HPP 宣告的裝置的預設配置。在目前路徑上傳輸指定數量的位元組或 I/O 後,該配置會使用循環配置資源演算法來選取路徑。
若要設定 LB-RR 路徑選取機制,請指定下列內容:
- IOPS 指出路徑上的 I/O 計數,該計數要用作準則以切換裝置的路徑。
- Bytes 指出路徑上的位元組計數,該計數要用作準則以切換裝置的路徑。
- LB-IOPS (負載平衡 - IOPs)
-
在目前路徑上傳輸指定數量的 I/O 後 (預設值為 1000),系統會選取具有最少未完成 I/O 數量的最佳路徑。
設定此機制時,請指定 IOPS 參數,以指出路徑上的 I/O 計數,該計數要用作準則以切換裝置的路徑。
- LB-BYTES (負載平衡 - 位元組)
-
在目前路徑上傳輸指定數量的位元組後 (預設值為 10 MB),系統會選取具有最少未完成位元組數量的最佳路徑。
若要設定此機制,請使用位元組參數,以指出路徑上的位元組計數,以作為切換裝置路徑的準則。
- 負載平衡 - 延遲 (LB-Latency)
-
若要改善負載平衡結果,該機制會考慮下列路徑特性以動態選取最佳路徑:
- 延遲評估時間參數指出必須評估路徑延遲的時間間隔 (以毫秒為單位)。
- 每個路徑的取樣 I/O 參數可控制每個路徑上必須發出多少個樣本 I/O,才能計算路徑的延遲。
HPP 最佳做法
若要透過高速儲存裝置實現最快輸送量,請遵循以下建議。
- 使用支援 HPP 的 vSphere 版本。
- 針對本機 NVMe 和 SCSI 裝置以及 NVMe-oF 裝置使用 HPP。
- 如果您使用 NVMe over Fibre Channel,請遵循光纖通道儲存區的一般建議。請參閱將 ESXi 與光纖通道 SAN 搭配使用。
- 如果您使用 NVMe-oF,請勿混用傳輸類型來存取相同的命名空間。
- 使用 NVMe-oF 命名空間時,請確保向主機呈現作用中路徑。在探索到作用中路徑之前,無法登錄命名空間。
- 設定虛擬機器時,可以使用 VMware Paravirtual 控制器或新增 NVMe 控制器。這兩種類型各有優缺點。若要瞭解哪種方式最適合您的環境,請參閱vSphere 虛擬機器管理說明文件中的 SCSI、SATA 和 NVMe 存放控制器條件、限制和相容性。
- 設定延遲敏感臨界值。
- 如果單一虛擬機器承擔大量共用裝置的 I/O 工作負載,請考慮將 I/O 分散在多個虛擬磁碟之間。將磁碟連結到虛擬機器中的單獨虛擬控制器。
否則,由於負責在特定虛擬儲存區控制器上處理 I/O 之 CPU 核心飽和,I/O 輸送量可能會受到限制。
如需有關僅支援 NGUID 識別碼格式的 NVMe 裝置的裝置識別碼資訊,請參閱具有 NGUID 裝置識別碼的 NVMe 裝置。
啟用高效能外掛程式和路徑選取配置
高效能外掛程式 (HPP) 是預設外掛程式,可宣告本機 NVMe 和 SCSI 裝置以及 NVMe-oF 目標。如有必要,您可以將其取代為 NMP。在 vSphere 7.0 Update 1 版及更早版本中,NMP 將保持為本機 NVMe 和 SCSI 裝置的預設外掛程式,但您可以將它取代為 HPP。
使用 esxcli storage core claimrule add 命令,在 ESXi 主機上啟用 HPP 或 NMP。
若要執行 esxcli storage core claimrule add,您可以使用 ESXi Shell 或 vSphere CLI。如需詳細資訊,請參閱ESXCLI 入門和ESXCLI 參考。
必要條件
設定 VMware NVMe 儲存區環境。如需詳細資訊,請參閱 關於 VMware NVMe 儲存區。
程序
設定延遲敏感臨界值
將 HPP 用於儲存裝置時,請設定該裝置的延遲敏感臨界值,以便 I/O 可避免 I/O 排程器。
依預設,ESXi會透過 I/O 排程器傳遞每個 I/O。不過,使用排程器可能會建立內部佇列,這對於高速儲存裝置來說無效。
您可以設定延遲敏感臨界值,並啟用可協助 I/O 略過排程器的直接提交機制。透過啟用此機制,I/O 會直接從 PSA 通過 HPP 傳遞至裝置驅動程式。
為了使直接提交正常運作,觀察的平均 I/O 延遲必須低於您指定的延遲臨界值。如果 I/O 延遲超過延遲臨界值,系統會停止直接提交,並暫時還原為使用 I/O 排程器。如果平均 I/O 延遲再次低於延遲臨界值,會恢復直接提交。
您可以為 HPP 宣告的裝置系列設定延遲臨界值。使用廠商和型號配對、控制器型號,或 PCIe 廠商識別碼與子廠商識別碼配對來設定延遲臨界值。
程序
ESXi esxcli HPP 命令
您可以使用 ESXi Shell 或 vSphere CLI 命令來設定和監控高效能外掛程式。
請分別參閱 ESXCLI 入門和 ESXCLI 參考,以瞭解相關簡介以及 esxcli 命令使用的詳細資料。
命令 | 說明 | 選項 |
---|---|---|
esxcli storage hpp path list | 列出目前由高效能外掛程式宣告的路徑。 | -d|--device=device 顯示特定裝置的資訊。
|
esxcli storage hpp device list | 列出目前受高效能外掛程式控制的裝置。 | -d|--device=device 顯示特定裝置。 |
esxcli storage hpp device set | 對 HPP 裝置進行設定。 | -B|--bytes=long 路徑上的最大位元組數,在此之後便切換路徑。
-P|--pss=pss_name 要指派給裝置的路徑選取配置。如果未指定值,則系統會選取預設值。如需路徑選取配置的說明,請參閱
VMware 高效能外掛程式和路徑選取配置。選項包括:
|
esxcli storage hpp device usermarkedssd list | 列出使用者標記或取消標記為 SSD 的裝置。 | -d|--device=device 限制特定裝置的輸出。 |