etcd成員報空間不足問題處理過程

一、場景描述
用戶無法正常訪問部署在k8s上的服務(wù)和使用我們的PaaS平臺。

二、問題描述
某環(huán)境的etcd集群全部掛掉,導(dǎo)致k8s集群部署的服務(wù)都無法正常提供使用,查看etcd狀態(tài)和報錯日志,如圖所示


image.png

image.png
圖中報錯顯示etcd成員的空間不足

三、問題處理過程描述
當(dāng)時根據(jù)etcd的報錯日志,先到對應(yīng)的主機(jī)查看了下磁盤和內(nèi)存的使用情況,發(fā)現(xiàn)etcd所在的主機(jī)資源都是充足的,然后一起重啟了下三臺etcd,發(fā)現(xiàn)還是沒能解決,看來萬能的重啟不能解決了,看看日志還是報etcd成員的空間不足,看了下etcd的官方文檔;啟動 etcd 時,–quota-backend-bytes 默認(rèn)為 2G,查看我們etcd集群當(dāng)前的存儲使用情況:
image.png
發(fā)現(xiàn)etcd的當(dāng)前存儲使用情況已經(jīng)是2.2G,已經(jīng)大于2G了,空間配額etcd可確保群集以可靠的方式運(yùn)行。如果沒有空間配額,etcd如果使用空間過大,可能會導(dǎo)致性能不佳,或者可能僅會耗盡存儲空間,從而導(dǎo)致不可預(yù)測的群集行為。如果任何成員的鍵空間的后端數(shù)據(jù)庫超出空間配額,etcd則會引發(fā)整個群集范圍的警報,該警報會將群集置于維護(hù)模式,該模式僅接受鍵讀取和刪除。只有在釋放鍵空間中足夠的空間并對后端數(shù)據(jù)庫進(jìn)行碎片整理以及清除空間配額警報之后,集群才能恢復(fù)正常運(yùn)行。
這個時候只能通過刪除過多的鍵空間數(shù)據(jù)并對后端數(shù)據(jù)庫進(jìn)行碎片整理將使群集重新回到配額限制內(nèi):
#get current revision
$ rev=$(ETCDCTL_API=3 etcdctl --endpoints=:2379 endpoint status --write-out=“json” | egrep -o ‘“revision”:[0-9]’ | egrep -o '[0-9].’)
#compact away all old revisions
$ ETCDCTL_API=3 etcdctl compact $rev
compacted revision 1516
#defragment away excessive space
$ ETCDCTL_API=3 etcdctl defrag
Finished defragmenting etcd member[127.0.0.1:2379]
#disarm alarm
$ ETCDCTL_API=3 etcdctl alarm disarm
memberID:13803658152347727308 alarm:NOSPACE
注:分別在三臺etcd集群中執(zhí)行。
執(zhí)行完發(fā)現(xiàn)etcd的空間使用空間已經(jīng)小于2G了,etcd集群恢復(fù)正常:
image.png

這個時候其實(shí)還沒有結(jié)束,檢查pod報錯沒有權(quán)限,發(fā)現(xiàn)集群中所有的node都是notready了,之前是好的:


image.png

image.png
查看之前的授權(quán)admin權(quán)限都是在的,重啟所有節(jié)點(diǎn)的kubelet和proxy,節(jié)點(diǎn)全部都恢復(fù)正常,檢查業(yè)務(wù)都o(jì)k,到此問題處理完成。

注:刪除操作前記得對etcd進(jìn)行快照的備份,etcd的配額大小可以進(jìn)行配置,需要到etcd.service文件中添加如下參數(shù):
ExecStart=/usr/bin/etcd --quota-backend-bytes ‘8589934592’(根據(jù)自己實(shí)際需求來改)

關(guān)于etcd的碎片清理和空間配額設(shè)置,可以參考etcd的官方文檔:https://etcd.io/docs/v3.4/op-guide/maintenance/
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容