Avamar - 如何設定 Avamar 用戶端快取的大小,以防止快取溢位造成備份效能問題
Summary: 本文說明如何設定 Avamar 用戶端快取,以避免可能導致備份效能緩慢的快取溢位。
Instructions
檢查用戶端快取是否需要調整。
如果快取檔案大小適當,請勿變更,這不會對效能造成任何有益影響。
調整最大快取大小的規則
確保緩存變得非常大,以至於客戶端最終進行了交換,因為它沒有足夠的物理 RAM 來處理所有進程。交換是指在 RAM 和磁碟之間移動記憶體分頁。
調整最大快取大小的最佳做法:
- 切勿允許總緩存大小超過可用總物理 RAM 的四分之一。
- 將最大檔和哈希緩存大小設置為總可用物理 RAM 的一小部分。使用負整數指定檔和哈希緩存大小。
- 將總快取大小限制為大約物理 RAM 的四分之一。
- 將其中一個緩存設置為 -5(這相當於用戶端 RAM 的 20%),並將另一個緩存設置為 -32(用戶端 RAM 的 3%)。
- 例如,對於大型資料庫用戶端,請使用以下設置:
--filecachemax=-32
--hashcachemax=-5 - 如果使用預設緩存大小以外的其他內容,請在用戶端上的avtar.cmd檔中包含自定義的最大緩存設置。
- 有時,唯一的選擇可能是增加用戶端上的物理 RAM 量。您也可以使用多個較小的資料集來備份用戶端。
- 如有必要,請將緩存的大小限制在最佳值以下:
- 對於典型的文件伺服器,首先為文件緩存分配所需的 RAM。
- 對於典型的資料庫客戶機,首先將所需的 RAM 分配給哈希緩存。
調整檔案快取
如果檔案快取已刪除、未使用或大小不足,則必須處理檔案快取中未命中的每個檔案。處理涉及對文件內容進行讀取、分塊、壓縮和哈希處理。
在 Avamar 程序可以檢查雜湊是否先前已傳送至 Avamar 伺服器之前,就會發生這種情況。
如果檔案快取中存在檔案,則不需要由 avtar 讀取。
這節省了大量的時間和處理過程,並最大限度地減少了備份持續時間。
根據預設,檔案快取最多可佔用 Avamar 用戶端上實體 RAM 的八分之一。
例如,如果用戶端有 4 GB 的 RAM,則檔緩存限製為 4 GB 除以 8 或最大 512 MB。
每次需要增加檔緩存時,檔緩存的大小都會增加一倍。
檔案快取大小可以是 (MB):5.5 MB、11 MB、22 MB、44 MB、88 MB、176 MB、352 MB、704 MB 和 1,408 MB。
由於 avtar 程式是 32 位應用程式,因此 avtar 可以使用的最大檔案快取大小限制為小於 2 GB。
在用戶端有 4 GB RAM 的範例中,檔快取的最大大小為 352 MB。
檔案快取中的每個項目都包含一個 4 位元組標頭和兩個 20 位元組 SHA-1 哈希(總共 44 個字節):
- 檔案屬性的 SHA-1 雜湊項目。
檔案屬性包括:檔案名稱、檔案路徑、修改時間、檔案大小、擁有者、群組和權限。 - 實際檔案內容雜湊的 SHA-1 雜湊項目,與檔案屬性無關。
檔案快取規則
如果客戶端包含 N 百萬個檔,則文件快取必須至少為 N 百萬個檔 x 4400 萬位元組/百萬個檔。這意味著文件快取必須至少為 N x 44 MB,其中 N 是備份中的數百萬個文件數。
範例 - 檔案快取
當用戶端有 400 萬個檔時,檔緩存必須至少為 176 MB (4 x 44 MB)。必須允許文件快取增加到 176 MB,以容納所有檔。
最佳實務:
文件快取必須至少為 N x 44 MB,其中 N 是備份中的數百萬個文件數。檔快取每次增長時大小都會增加一倍。若要適當調整檔案快取的大小:
- 按如下方式設定 --filecachemax 值:
--filecachemax = 2 x N x 44
其中 N 是備份中數百萬個文件的數量。 - 將 --hashcachemax 設定為較小的值,例如:
--hashcachemax=30
調整雜湊快取
如果 avtar 程序發現雜湊快取中未包含區塊的雜湊,則會查詢 Avamar 伺服器是否存在雜湊。
根據預設,雜湊快取最多可佔用 Avamar 用戶端上實體 RAM 的十六分之一。
使用「調整檔緩存」中所述的具有 4 GB RAM 的同一用戶端,哈希緩存限制為 4 GB/16 或最大 256 MB。
每次需要增加哈希緩存的大小也會增加一倍。
目前的雜湊快取大小以 MB 為單位:24 MB、48 MB、96 MB、192 MB、384 MB、768 MB 等。在此範例中,用戶端有 4 GB 的 RAM,哈希緩存的最大大小為 192 MB。
哈希緩存中的每個條目都包含一個 4 位元組標頭以及每個塊或複合的一個 SHA-1 哈希,這是塊或複合內容的哈希。
雜湊快取規則
如果用戶端由 Y GB 資料庫數據組成,則哈希緩存必須至少為 YGB/平均塊大小 x 2400 萬位元組/百萬塊。
使用 24 KB 作為所有備份的平均區塊大小。
哈希緩存必須至少為 Y MB,其中 Y 是備份中資料庫數據的 GB 數。
範例 - 哈希快取
當資料庫客戶機具有 500 GB 的資料庫數據時,必須允許哈希緩存增加到至少 500 MB。
必須允許哈希緩存增加到下一個增量大小 (768 MB),以容納資料庫備份中所有塊的哈希。
最佳實務
哈希緩存必須至少為 Y MB,其中 Y 是要備份的資料庫的大小(以 GB 為單位)。
哈希緩存每次增長時的大小都會增加一倍。
若要適當調整雜湊快取的大小,請按如下所示方式設定 --hashcachemax 值:
--hashcachemax = 2 x Y
其中 Y 是要備份的資料庫的大小(以 GB 為單位)。