QuTS Hero 6.0 的 QTier 功能

我在執行 10 秒系統重置後,QTier 出現無法運作的問題。

我的硬體配置如下:

TS-h1090FU :2 顆 NVME SSD 作為 Hot Tier(兩顆 8TB 硬碟組成 RAID 0),另外一個獨立的 SATA 系統 SSD(500GB)

還有一個 TL-R2400PES-RP 擴充櫃,透過 QXP-3X8PES 擴充卡連接。裡面裝有 24 顆 24TB 硬碟,組成 8x3 RAID 6 陣列。

QTier 原本運作正常,但在我進行系統重置(為了修正之前設定的 ACL 權限錯誤)後,QTier 就再也沒啟動過。它設定為每日固定時間運行,但完全沒有反應。Hot Tier 上有資料應該要寫入低速 Tier 卻沒動靜。

我目前使用的韌體版本:QuTS hero h6.0.0.3500

有辦法強制讓 QTier 啟動嗎?還是只能等新韌體釋出時才可能解決?

謝謝,

Gaetan

6.0.2

試試看這個軟體更新

根據我使用 Qtier 的經驗,我建議你先使用自動模式。

我不清楚你在 NAS 上存的是哪類資料,但一般來說 Qtier 的設計理念就是讓常存取的「熱」資料留在快速的 NVMe 層,而較少存取的「冷」資料則可以移到 HDD 層。Qtier hero 會根據存取模式和你設定的政策來決定資料應該放到哪個層。

舉例來說,如果你的內容大部分是影片,而且某個影片每天只被存取一次,我認為那不算真正的「熱」資料。沒必要將這些內容都留在 NVMe 層。

因此,我個人建議讓 Qtier 自動運作,不必手動指定每次搬移。系統會根據你的工作負載和設定的分層政策來最佳化資料分布。

你可以嘗試這樣做:

先將 Qtier 設定為自動,然後監控幾天的情況。查看 Qtier 的統計資料/歷史紀錄,看看資料是否真的在各層間移動。QNAP 提供了統計工具可以評估分層活動。

如果自動分層沒有達到你想要的結果,可以在低負載時段嘗試手動排程。我不建議一開始就每小時執行一次,分層本身會產生額外的儲存作業,通常最好在 NAS 繁忙度較低時讓它運作。

如果你真的需要 SSD/NVMe 層能儘快存放最新或最常用的資料,可以嘗試頻繁排程並比較結果。這樣的優點是活躍資料可以更快提升至較快的層,但缺點是頻繁分層會帶來額外搬移和寫入。

所以我的建議如下:

第一步:自動模式 → 觀察幾天 → 查看 Qtier 統計資料。

第二步:如果效果不好,試著在低負載時段排程分層,然後比較結果。

不過,你的狀況還有一個重要因素:你說 Qtier 在系統重置前運作正常,之後就再也沒執行過。如果 Qtier 完全沒在運作,不管排程怎麼設定,我會判斷這可能是 Qtier 或配置問題,不只是選擇排程的問題。這時我建議先檢查 Qtier 狀態和系統日誌,在對儲存池做任何改動前先排查。

另外,你正在使用 h6.0.0.3500,就是你提到的韌體版本。Qtier hero 是 QuTS hero h6.0 新推出的功能,所以我也會先確認你的韌體是不是目前支援的最新版本,否則就等未來韌體修正也未必是唯一解決方案。QNAP 是在 QuTS hero h6.0 引入 Qtier hero 的。

總結來說,我不會一開始就強制 Qtier 每小時執行。我會先用自動模式,觀察行為和統計資料,只有工作負載真的需要時才提高執行頻率。

RAID0 就像 Qtier 一樣風險很高。

我還沒在 QuTS 上使用過,但如果 QTS 的 QTier 無法運作,所有分層儲存的資料都會無法存取,這邊不是這樣嗎?

@dolbyman 我只是想澄清幾件事:QTier 儲存池由兩個 8TB NVME(RAID 1 快速層級)和 24 顆 24TB HDD 作為慢速池(RAID 6,3x8)組成。整個儲存池都在正常運作。快速層級已填滿,並且在層級滿時正如預期地運作:它只是將資料寫入低速層級。Volume 設定為「目標層級」:低速,並將「寫入加速模式」設為「寫入緩衝」。所以唯一的問題是層級化現在就是不再運行了。

@Gunis 據我所知,QuTS Hero QTier 沒有自動模式…只有排程層級化。

我接下來會嘗試最新韌體,也許這樣能讓它恢復運作。

有沒有什麼地方可以查看 log,看看為什麼 Qtier 沒有按排程啟動?

謝謝,

Gaetan

這裡你提到快速層是 RAID0,所以我才這麼說

你說 Qtier「不工作」,我猜你的意思是分層機制停止了(如果整個 Qtier 壞掉,那代表整個儲存池都壞了)

啊,對…我剛才的確說了要用 RAID 0 做高速層。那真是太蠢了!

不是這樣

如果你安排排水,務必盡快,30分鐘以上

@qverified 請問要如何安排手動排水?我找不到相關操作方式。

謝謝,

Gaetan

我知道如何設定排程。QTier 在重置之前 完全 正常運作。它現在仍然有設定,請看下方。不過問題是在 21:55,完全沒發生任何事情。沒有資料移動,狀態一直是「閒置」。系統好像完全忽略了觸發。請問有沒有地方可以取得 log 檔來看看 qtier 應該觸發時到底有沒有任何動作?

謝謝,

Gaetan

根據我們的常見問題,重置後只會保留用戶帳號和資料夾資料,因此您的設定可能已被清除。請您嘗試重新設定,看看是否一切運作正常?

另外,關於重置後設定被清除但畫面上仍然顯示的問題,我們會請內部團隊確認這是否是個漏洞。感謝您的反饋!

如何重置 NAS 設定並保留資料完整?| QNAP

@SteveKo 我需要修改哪個設定?我已經多次調整 Qtier 設定,但都沒有效果。這對我來說肯定像是一個 bug,重設後後端有些使用者看不到的東西被改變了,但卻無法再修改。

謝謝。

Gaetan

你的意思是,即使你在重置後重新設定 Qtier,它還是無法運作嗎?我們這邊還沒辦法重現這個問題。

能否幫忙提供你的排程設定畫面和 Cron 表的截圖,好讓我們檢查一下?另外提醒一下—重置也會重設時區,建議你檢查看看時間設定是不是有影響。謝謝!

是的。即使重新配置後,Qtier 還是無法運行。我在它第一次預定運行但沒有運行時,發現了時區的問題。然後我意識到時區是錯的,並將其修正了。這個問題還真有點棘手!

我在下面附上了三張圖片。

我可以在 crontab 上看到最後一項:

30 8 * * * /sbin/zfs_storage_util --tier_migration pool_id=2 >/dev/null 2>&1

這對應於(目前設定的)每天 8:30 執行的分層遷移排程。這和重置前有所不同,所以我可以確認變更分層設定會反應到 crontab 上。

我可以自行執行這個指令來看看結果是否安全嗎?

謝謝,

Gaetan

如果你真的執行那個指令,請不要加上轉向 null,這樣你就會看到一些輸出。:wink:

經過一些探索後,zfs_storage_util 指令並沒有將 --tier_migration 列為其命令選項之一。進一步探索發現 zpool 有個 ztier 選項:

ztier [-l <raid|tier|stats>] ... [-s <tier>] [-S|-R] [-p|-r|-c] <pool> [vdev]

我可以使用 -l 來查看 raid、tier 和 stats。例如,stats 指令顯示的內容和 GUI 一樣:沒有任何位元組被移動:

zpool ztier -l stats zpool2
zpool2 tier 1 data-in 0 data-out 0
zpool2 tier 2 data-in 0 data-out 0
zpool2 tier 3 data-in 0 data-out 0
zpool2 tier 4 data-in 0 data-out 0
zpool2 tier 5 data-in 0 data-out 0

可惜我找不到任何說明告訴我剩下的選項 [-s <tier>] [-S|-R] [-p|-r|-c] 到底是做什麼的。

謝謝,

Gaetan

當然。我確實執行過了。它立刻回傳,而且終端機上完全沒有任何輸出。所以實際上沒什麼幫助 :slight_smile:

我們之前曾有主題討論過直接操作 ZFS 結果都很慘。請檢查 qcli 指令是否有分層(tiering)選項。

我查過了,但是沒有看到任何跟分層(tiering)有關的東西。