NAS存儲(chǔ)卷FAQ
本文為您介紹NAS存儲(chǔ)卷常見(jiàn)問(wèn)題的處理方法。
NAS存儲(chǔ)卷掛載時(shí)間延長(zhǎng)
問(wèn)題現(xiàn)象:
NAS存儲(chǔ)卷掛載時(shí)間延長(zhǎng)。
問(wèn)題原因:
若您在應(yīng)用模板中配置了securityContext.fsgroup參數(shù),kubelet在存儲(chǔ)卷掛載完成后會(huì)執(zhí)行chmod
或chown
操作,導(dǎo)致掛載時(shí)間延長(zhǎng)。
解決方法:
- 若應(yīng)用模板中配置了securityContext.fsgroup參數(shù),請(qǐng)刪除securityContext下的fsgroup參數(shù)。
- 若需要將掛載目錄內(nèi)文件變成期望的UID和mode,可以手動(dòng)將目標(biāo)目錄掛載到一臺(tái)ECS。關(guān)于ECS實(shí)例掛載文件系統(tǒng),請(qǐng)參見(jiàn)通過(guò)控制臺(tái)實(shí)現(xiàn)ECS實(shí)例一鍵掛載文件系統(tǒng)。再通過(guò)命令行執(zhí)行
chown
和chmod
,完成后通過(guò)Flexvolume使用NAS存儲(chǔ)卷。關(guān)于如何通過(guò)Flexvolume使用NAS存儲(chǔ)卷,請(qǐng)參見(jiàn)使用NAS靜態(tài)存儲(chǔ)卷和使用NAS動(dòng)態(tài)存儲(chǔ)卷。 - 對(duì)于1.20及之后版本的Kubernetes集群,除了上述兩種解決方法外,也可通過(guò)將fsGroupChangePolicy配置為OnRootMismatch,這時(shí)只有在首次啟動(dòng)時(shí)才會(huì)執(zhí)行
chmod
或chown
操作,導(dǎo)致存在掛載時(shí)間延長(zhǎng)的問(wèn)題,后續(xù)掛載NAS存儲(chǔ)卷時(shí)掛載時(shí)間將恢復(fù)正常。關(guān)于fsGroupChangePolicy參數(shù)的更多信息,請(qǐng)參見(jiàn)為Pod或容器配置安全性上下文。
NAS存儲(chǔ)卷掛載失敗時(shí)出現(xiàn)timeout錯(cuò)誤
問(wèn)題現(xiàn)象:
NAS存儲(chǔ)卷掛載失敗時(shí)出現(xiàn)timeout錯(cuò)誤。
問(wèn)題原因:
NAS掛載點(diǎn)和集群不在同一VPC內(nèi)。
解決方法:
選擇與集群在同一VPC內(nèi)的NAS掛載點(diǎn)。
使用NAS存儲(chǔ)卷時(shí),提示chown: option not permitted
問(wèn)題現(xiàn)象:
使用NAS存儲(chǔ)卷時(shí),提示chown: option not permitted。
問(wèn)題原因:
您的容器沒(méi)有權(quán)限使用該NAS存儲(chǔ)卷。
解決方法:
您需要使用root權(quán)限啟動(dòng)容器。
掛載NAS存儲(chǔ)卷失敗
問(wèn)題現(xiàn)象:
Unable to mount volumes for pod "dp-earnings-pod_default(906172c6-3d68-11e8-86e0-00163e00****)": timeout expired waiting for volumes to attach/mount for pod "default"/"dp-earnings-pod". list of unattached/unmounted volumes=[vol1 vol2]
問(wèn)題原因:
您沒(méi)有安裝Flexvolume插件。
解決方法:
您需要安裝Flexvolume插件。具體操作,請(qǐng)參見(jiàn)安裝與升級(jí)Flexvolume組件。
使用NAS動(dòng)態(tài)存儲(chǔ)卷時(shí)Controller的任務(wù)隊(duì)列已滿且無(wú)法創(chuàng)建新的PV
問(wèn)題現(xiàn)象:
使用NAS動(dòng)態(tài)存儲(chǔ)卷時(shí),若創(chuàng)建子目錄寫入速度快于Controller刪除子目錄速度,將可能導(dǎo)致Controller的任務(wù)隊(duì)列阻塞且無(wú)法創(chuàng)建新的PV。
問(wèn)題原因:
當(dāng)集群使用動(dòng)態(tài)NAS存儲(chǔ)卷時(shí),配置的StorageClass回收策略reclaimPolicy為Delete且archiveOnDelete為false。
解決方法:
將archiveOnDelete配置為true,當(dāng)刪除PV時(shí)只是修改NAS文件系統(tǒng)中子目錄的名稱,而不是真正刪除文件。
具體的文件刪除操作需要您自行處理,例如:在某個(gè)節(jié)點(diǎn)過(guò)載根目錄啟動(dòng)定時(shí)刪除機(jī)制,或啟動(dòng)多個(gè)Pod并發(fā)刪除某種格式的子目錄。