etcd 日誌壓縮 ETCD磁碟空間爆滿解決方案

2021-10-17 01:53:55 字數 3314 閱讀 4994

etcd磁碟報警處理

etcd預設的空間配額限制為2g,超出空間配額限制就會影響服務,所以需要定期清理

檢視etcd日誌

8月 04 17:00:04 1.novalocal etcd[24848]: read-only range request "key:\"*********************" " with result "range_response_count:1 size:3775" took too long (1.354750458s) to execute

8月 04 17:00:05 1.novalocal etcd[24848]: read-only range request "key:\"*********************" range_end:\"*********************" " with result "range_response_count:2303873 size:1274241272" took too long (11.31986*********************

8月 04 17:05:09 1.novalocal etcd[24848]: read-only range request "key:\"*********************" " with result "range_response_count:1 size:3775" took too long (1.136787261s) to execute

8月 04 17:05:10 1.novalocal etcd[24848]: read-only range request "key:\"*********************" range_end:\"*********************" " with result "range_response_count:2303873 size:1274241272" took too long (11.68081*********************

8月 04 17:05:11 1.novalocal etcd[24848]: warning: 2020/08/04 17:05:11 grpc: server.processunaryrpc failed to write status connection error: desc = "transport is closing"

8月 04 17:10:14 1.novalocal etcd[24848]: read-only range request "key:\"*********************" " with result "range_response_count:1 size:3775" took too long (1.173390639s) to execute

8月 04 17:10:15 1.novalocal etcd[24848]: read-only range request "key:\"*********************" range_end:\"*********************" " with result "range_response_count:2303873 size:1274241272" took too long (11.42705*********************

8月 04 17:15:19 1.novalocal etcd[24848]: read-only range request "key:\"*********************" " with result "range_response_count:1 size:3775" took too long (1.311071626s) to execute

8月 04 17:15:20 1.novalocal etcd[24848]: read-only range request "key:\"*********************" range_end:\"*********************" " with result "range_response_count:2303873 size:1274241272" took too long (11.22721*********************

發現存在大量 took too long (11.42705********************* 日誌

檢視etcd集群狀態

檢視集群狀態

etcdctl_api=3 ./etcdctl --endpoints=$ip:$port --write-out=table endpoint status

| endpoint | id | version | db size | is leader | raft term | raft index |

| | 728d3145169b227d | 3.3.10 | 2.1 gb | false | 6 | 3616392 |

檢視etcd集群報警情況

etcdctl_api=3 ./etcdctl --endpoints=$ip:$port alarm list

meberid:*************** alarm:nospace

此處 alarm 提示 nospace,需要公升級 etcd 集群的空間(預設為2g的磁碟使用空間),或者壓縮老資料,公升級空間後,需要使用 etcd命令,取消此報警資訊,否則集群依舊無法使用

增加etcd的容量,由2g-->8g,增加以下三個引數

vi /etc/systemd/system/rio-etcd.service

## auto-compaction-retention 引數#(單位⼩時)

--auto-compaction-mode=revision --auto-compaction-retention=24 --quota-backend-bytes=8589934592

獲取當前etcd資料的修訂版本(revision)

rev=$(etcdctl_api=3 etcdctl --endpoints=$ip:$port endpoint status --write-out="json" | egrep -o '"revision":[0-9]*' | egrep -o '[0-9].*')

echo $rev

整合壓縮舊版本資料

etcdctl_api=3 etcdctl --endpoints=$ip:$port compact $rev

執行碎片整理

etcdctl_api=3 etcdctl --endpoints=$ip:$port defrag

解除告警

etcdctl_api=3 etcdctl --endpoints=$ip:$port alarm disarm

驗證可以新增新資料

etcdctl_api=3 etcdctl --endpoints=$ip:$port put newkeytestfornospace 123

參考文件

關於解決linux 磁碟空間爆滿的問題

sudo ncdu 之後可以根據據具體情況該刪的刪 注意不要把別人還要使用的檔案刪掉 我的是 var lib docker overlay2 這個目錄檔案占用特別大,這裡可以參考這篇部落格 我是通過以下命令來清理的 sudo docker system prune a f清理之後磁碟空間寬敞多了,n...

解決tomcat日誌造成磁碟空間不足

有一台的伺服器是tomcat伺服器,發現disk已經達到90 需要對其進行清理,否則可能影響效能。但是這台上的tomcat的日誌是不允許刪除的,那麼我的解決策略如下 1.清空catalina.out動態日誌 rm rf是無效的 echo catalina.out 2.對按照日期的分割的日誌進行壓縮來...

解決應為tomcat日誌造成磁碟空間不足

有一台的伺服器是tomcat伺服器,發現disk已經達到90 需要對其進行清理,否則可能影響效能。但是這台上的tomcat的日誌是不允許刪除的,那麼我的解決策略如下 1.清空catalina.out動態日誌 rm rf是無效的 echo catalina.out 2.對按照日期的分割的日誌進行壓縮來...