报错信息
原因
etcd满了,空间不足
解决
- 压缩空间,碎片整理
- 清除老旧数据
- 扩容
具体步骤
查看空间详情
# 查看详情
$ etcdctl --endpoints=ip:port endpoint status --write-out="table"
手动压缩
# 1、获取当前的版本
$ rev=$(etcdctl --endpoints=ip:port endpoint status --write-out="json" | egrep -o '"revision":[0-9]*' | egrep -o '[0-9].*')
# 2、压缩当前版本之前的所有记录
$ etcdctl compact $rev
# 3、清理多余的碎片空间
$ etcdctl defrag
# 4、解除警告
$ etcdctl alarm disarm
自动压缩设置
# 保留一个小时的历史记录
$ etcd --auto-compaction-retention=1
官方文档https://etcd.io/docs/v3.4/op-guide/maintenance/#history-compaction