VMware vSphere 中的虛擬機器效能分析。 第 3 部分:存儲

VMware vSphere 中的虛擬機器效能分析。 第 3 部分:存儲

第 1 部分。關於 CPU
第 2 部分:關於內存

今天我們來分析vSphere中磁碟子系統的指標。 儲存問題是虛擬機器速度緩慢的最常見原因。 如果就 CPU 和 RAM 而言,故障排除僅限於虛擬機器管理程式級別,那麼如果磁碟出現問題,則可能需要處理資料網路和儲存系統。

我將使用儲存系統的區塊存取範例來討論該主題,儘管對於文件訪問,計數器大致相同。

一點理論

在談論虛擬機器磁碟子系統的效能時,人們通常會專注於三個相互關聯的參數:

  • 輸入/輸出操作數(每秒輸入/輸出操作數,IOPS);
  • 吞吐量;
  • 輸入/輸出操作的延遲(延遲)。

IOPS數 通常對於隨機工作負載很重要:存取位於不同位置的磁碟區塊。 此類負載的範例可以是資料庫、業務應用程式(ERP、CRM)等。

容量 對於順序載入很重要:訪問一個接一個的區塊。 例如,檔案伺服器(但不總是)和視訊監控系統可以產生這樣的負載。

吞吐量與 I/O 操作的數量相關,如下所示:

吞吐量 = IOPS * 區塊大小,其中區塊大小是區塊大小。

塊大小是一個相當重要的特性。 現代版本的 ESXi 允許區塊大小最大為 32 KB。 如果塊更大,則將其分成幾個。 並非所有儲存系統都可以有效地處理如此大的區塊,因此 ESXi 進階設定中有一個 DiskMaxIOSize 參數。 使用它,您可以減少虛擬機管理程式跳過的最大區塊大小(更多詳細信息 這裡)。 在更改此參數之前,我建議您諮詢儲存系統製造商或至少在實驗室工作台上測試變更。 

大的區塊大小可能會對儲存效能產生不利影響。 即使 IOPS 數量和吞吐量相對較小,大塊大小也會導致高延遲。 因此,請注意該參數。

潛伏 – 最有趣的性能參數。 虛擬機器的 I/O 延遲包括:

  • 虛擬機器管理程式內部的延遲(KAVG,平均核心毫秒/讀取);
  • 資料網路和儲存系統提供的延遲(DAVG,Average Driver MilliSec/Command)。

來賓作業系統中可見的總延遲(GAVG、平均來賓毫秒/指令)是 KAVG 和 DAVG 的總和。

測量 GAVG 和 DAVG,並計算 KAVG:GAVG–DAVG。

VMware vSphere 中的虛擬機器效能分析。 第 3 部分:存儲

讓我們仔細看看 KAVG。 在正常操作期間,KAVG 應趨於零或至少遠小於 DAVG。 據我所知,KAVG 預期較高的唯一情況是 VM 磁碟上的 IOPS 限制。 在這種情況下,當您嘗試超過限制時,KAVG 將會增加。

KAVG 最重要的組成部分是 QAVG - 虛擬機器管理程式內的處理佇列時間。 KAVG 的其餘成分可以忽略不計。

磁碟適配器驅動程式中的佇列和到衛星的佇列具有固定大小。 對於高負載環境,增加此大小可能很有用。 這裡 描述如何增加適配器驅動程式中的佇列(同時到衛星的佇列也會增加)。 當只有一個虛擬機器與月球一起工作時,此設定有效,這種情況很少見。 如果月球上有多個VM,也必須增加此參數 Disk.SchedNumReqOutstanding (指示  這裡)。 透過增加佇列,可以分別減少 QAVG 和 KAVG。

但同樣,首先閱讀 HBA 供應商的文件並在實驗室工作台上測試變更。

SIOC(儲存 I/O 控制)機制的加入可能會影響到月球的佇列大小。 它透過動態變更伺服器上的 Moon 佇列,提供叢集中所有伺服器對 Moon 的統一存取。 也就是說,如果其中一台主機正在運行需要不成比例的效能的虛擬機器(雜訊的鄰居虛擬機器),SIOC 會將該主機上的佇列長度縮短到月球 (DQLEN)。 更多細節 這裡.

我們已經整理好了 KAVG,現在來介紹一下 DAVG。 這裡一切都很簡單:DAVG是外部環境(資料網路和儲存系統)引入的延遲。 每個現代和不太現代的儲存系統都有自己的效能計數器。 要使用 DAVG 分析問題,查看它們是有意義的。 如果 ESXi 和儲存端一切正常,請檢查資料網路。

為了避免效能問題,請為您的儲存系統選擇正確的路徑選擇策略 (PSP)。 幾乎所有現代儲存系統都支援 PSP 循環(有或沒有 ALUA,非對稱邏輯單元存取)。 此策略允許您使用儲存系統的所有可用路徑。 對於 ALUA,僅使用擁有月球的控制器的路徑。 並非 ESXi 上的所有儲存系統都有設定循環策略的預設規則。 如果您的儲存系統沒有規則,請使用儲存系統製造商的插件,該插件會在叢集中的所有主機上建立相應的規則,或者您自己建立規則。 細節 這裡

此外,一些儲存系統製造商建議將每個路徑的IOPS 數量從標準值1000 更改為1。在我們的實踐中,這使得可以從儲存系統中「榨取」更多效能,並顯著減少故障轉移所所需的時間如果控制器故障或更新。 檢查供應商的建議,如果沒有禁忌症,請嘗試更改此參數。 細節 這裡.

基本虛擬機器磁碟子系統效能計數器

vCenter 中的磁碟子系統效能計數器會收集在資料儲存、磁碟、虛擬磁碟部分:

VMware vSphere 中的虛擬機器效能分析。 第 3 部分:存儲

在第 數據存儲 VM 磁碟所在的 vSphere 磁碟儲存(資料儲存)有一些指標。 在這裡您可以找到以下標準計數器:

  • IOPS(每秒平均讀/寫請求), 
  • 吞吐量(讀取/寫入速率), 
  • 延遲(讀/寫/最高延遲)。

原則上,一切都從櫃檯名稱中一目了然。 讓我再次提醒您注意,這裡的統計資料不是針對特定 VM(或 VM 磁碟),而是針對整個資料儲存的一般統計資料。 我認為,在 ESXTOP 中查看這些統計數據更方便,至少基於最小測量週期為 2 秒的事實。

在第 圓盤 VM 使用的區塊設備有一些指標。 有求和類型的 IOPS 計數器(測量期間輸入/輸出操作的數量)和幾個與區塊存取相關的計數器(命令中止、匯流排重設)。 我認為在ESXTOP中查看這些資訊也更加方便。

章節 虛擬磁盤 – 從尋找 VM 磁碟子系統效能問題的角度來看最有用。 在這裡您可以看到每個虛擬磁碟的效能。 正是需要此資訊來了解特定虛擬機器是否有問題。 除了 I/O 操作數、讀取/寫入量和延遲的標準計數器之外,本節還包含顯示區塊大小的有用計數器:讀取/寫入請求大小。

下圖中是 VM 磁碟效能圖表,您可以在其中看到 IOPS 數量、延遲和區塊大小。 

VMware vSphere 中的虛擬機器效能分析。 第 3 部分:存儲

如果啟用了 SIOC,您也可以查看整個資料儲存的效能指標。 以下是平均延遲和 IOPS 的基本資訊。 預設情況下,只能即時查看此資訊。

VMware vSphere 中的虛擬機器效能分析。 第 3 部分:存儲

ESXTOP

ESXTOP 有多個螢幕,提供整個主機磁碟機系統、各個虛擬機器及其磁碟的資訊。

讓我們從虛擬機器的資訊開始。 使用“v”鍵呼叫“Disk VM”畫面:

VMware vSphere 中的虛擬機器效能分析。 第 3 部分:存儲

NVDISK 是VM磁碟的數量。 若要查看每個磁碟的信息,請按“e”並輸入感興趣的 VM 的 GID。

此畫面上其餘參數的含義從其名稱中可以清楚看出。

故障排除時另一個有用的畫面是磁碟轉接器。 透過「d」鍵呼叫(下圖選擇欄位A、B、C、D、E、G):

VMware vSphere 中的虛擬機器效能分析。 第 3 部分:存儲

NPTH – 從此適配器可見的通往衛星的路徑數量。 若要取得適配器上每個路徑的信息,請按「e」並輸入適配器的名稱:

VMware vSphere 中的虛擬機器效能分析。 第 3 部分:存儲

阿克倫 – 適配器上的最大佇列大小。

此畫面上還有我上面提到的延遲計數器: KAVG/cmd、GAVG/cmd、DAVG/cmd、QAVG/cmd.

按下「u」鍵即可調出磁碟裝置螢幕,該畫面提供有關各個區塊裝置 - 衛星的資訊(下圖中選擇了欄位 A、B、F、G、I)。 在這裡您可以看到衛星佇列的狀態。

VMware vSphere 中的虛擬機器效能分析。 第 3 部分:存儲

德克蘭 – 區塊設備的佇列大小。
交流電視 – ESXi 核心中的 I/O 指令數。
奎德 – 佇列中 I/O 指令的數量。
%美元 – ACTV / DQLEN × 100%。
加載 – (ACTV + QUED) / DQLEN。

如果 %USD 較高,您應該考慮增加隊列。 佇列中的指令越多,QAVG 越高,對應的 KAVG 也越高。

您也可以在磁碟裝置畫面上查看儲存系統上是否正在執行 VAAI(用於陣列整合的 vStorage API)。 為此,請選擇欄位 A 和 O。

VAAI機制可​​讓您將部分工作從Hypervisor直接轉移到儲存系統,例如歸零、複製區塊或阻塞。

VMware vSphere 中的虛擬機器效能分析。 第 3 部分:存儲

如上圖所示,VAAI 在此儲存系統上工作:積極使用零和 ATS 原語。

有關優化 ESXi 上磁碟子系統工作的提示

  • 注意塊大小。
  • 設定 HBA 上的最佳隊列大小。
  • 不要忘記在資料儲存上啟用 SIOC。
  • 根據儲存系統製造商的建議選擇 PSP。
  • 確保 VAAI 正在運行。

有用的相關文章:http://www.yellow-bricks.com/2011/06/23/disk-schednumreqoutstanding-the-story/
http://www.yellow-bricks.com/2009/09/29/whats-that-alua-exactly/
http://www.yellow-bricks.com/2019/03/05/dqlen-changes-what-is-going-on/
https://www.codyhosterman.com/2017/02/understanding-vmware-esxi-queuing-and-the-flasharray/
https://www.codyhosterman.com/2018/03/what-is-the-latency-stat-qavg/
https://kb.vmware.com/s/article/1267
https://kb.vmware.com/s/article/1268
https://kb.vmware.com/s/article/1027901
https://kb.vmware.com/s/article/2069356
https://kb.vmware.com/s/article/2053628
https://kb.vmware.com/s/article/1003469
https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/performance/vsphere-esxi-vcenter-server-67-performance-best-practices.pdf

來源: www.habr.com

添加評論