首页 > 其他分享 >ETCD存储满了如何处理?

ETCD存储满了如何处理?

时间:2024-01-17 14:36:11浏览次数:30  
标签:存储 处理 0.1 etcdctl -- 2379 ETCD endpoints

一、前言

当运行 ETCD 日志报 Erro: mvcc database space exceeded 时,或者查看健康状态显示 failed to commit proposal: Active Alarm(s): NOSPACE 说明ETCD存储不足了(默认ETCD存储是2G),配额会触发告警,然后 Etcd 系统将进入操作受限的维护模式。

通过下面命令可以查看ETCD存储使用情况

$ etcdctl --endpoints="http://127.0.0.1:2379" --write-out=table endpoint status

二、临时解决方案

PS: 压缩前做好快照备份,注意,快照备份文件不要放在etcd 目录内

 etcdctl snapshot save backup.db

通过 ETCD 数据压缩来临时解决问题,具体如下操作

# 获取当前版本
$ rev=$(ETCDCTL_API=3 etcdctl --endpoints=http://127.0.0.1:2379 endpoint status --write-out="json" | egrep -o '"revision":[0-9]*' | egrep -o '[0-9].*')
 
# 压缩所有旧版本
$ ETCDCTL_API=3 etcdctl --endpoints=http://127.0.0.1:2379 compact $rev
 
# 整理多余的空间
$ ETCDCTL_API=3 etcdctl --endpoints=http://127.0.0.1:2379 defrag
 
# 取消告警信息
$ ETCDCTL_API=3 etcdctl --endpoints=http://127.0.0.1:2379 alarm disarm

# 再次查看ETCD存储使用情况
$ ETCDCTL_API=3 etcdctl --endpoints="http://127.0.0.1:2379" --write-out=table endpoint status

三、最终解决方案

在 ETCD 启动命令中添加下面两个参数:


# 表示每隔一个小时自动压缩一次
--auto-compaction-retention=1
# 磁盘空间调整为 8G,官方建议最大 8G(单位是字节)
--quota-backend-bytes=8388608000

参考官方文档:https://etcd.io/docs/v3.4/op-guide/maintenance/

标签:存储,处理,0.1,etcdctl,--,2379,ETCD,endpoints
From: https://www.cnblogs.com/alioth01/p/17969938

相关文章

  • 实现HTTP请求的重定向处理
    HTTP重定向是一种常见的Web技术,用于将用户从一个URL地址导向到另一个URL地址。重定向可以用于多种目的,例如网站重新设计、临时移动页面或处理URL重写。理解如何处理HTTP重定向对于Web开发者来说是至关重要的。以下是实现HTTP请求重定向处理的基本步骤:1.确定重定向需求首先,你需要明......
  • 图解函数脚本处理传入参数
    1.函数脚本传入参数:1.1.先修改函数脚本文件: 1.2.开发一个新脚本,执行该函数: 1.3.执行该脚本func3.sh:2.图解shell脚本处理参数: ......
  • 记录一次SQLServer复制监控器(replication monitor)复制延迟数值为NULL的异常处理
     现象在SQLServer复制(订阅发布),在正常运行的情况下,发布节点一直有写入,订阅节点也正常复制到了这些数据,但分发节点的复制监控器面板(replicationmonitor)无法看到部分发布对象的延迟信息。如下,经过重启SQLServer服务,重启SQLServerAgent服务,重启操作系统等尝试后,均无效,依旧显示不......
  • mysql基本数据类型范围与存储说明
    一、整型数据类型存储方式整型数据类型是Mysql中最常用的数据类型之一,其存储方式如下:(默认是有符号,即取值范围是正负范围;无符号,即取值范围就是正值范围)1.TINYINT:占用1个字节,范围为-128~127。2.SMALLINT:占用2个字节,范围为-32768~32767。3.MEDIUMINT:占用3个字节,范围为-8388608~8......
  • 软件测试|解决‘pip‘ 不是内部或外部命令,也不是可运行的程序或批处理文件
    当出现错误信息“‘pip’不是内部或外部命令,也不是可运行的程序或批处理文件”时,这通常意味着在命令行中输入pip命令时,系统无法找到pip可执行文件的位置。本文将介绍解决这个问题的各种方法。问题原因当出现错误信息“‘pip’不是内部或外部命令,也不是可运行的程序或批处理......
  • ceph分布式存储部署(ceph-deploy)
    ceph分布式存储部署(ceph-deploy)ceph学习ceph简介和特性ceph时一个多版本存储系统,它把每一个待管理的数据量切分为一到多个固定带下的对象数据,并以其为原子单元完成数据存取。对象数据的地处存储服务是由多个主机组成的存储集群,该集群也被称为RADOS存储集群即可靠、自动化、分布式......
  • Gin 文件上传 按照日期存储
    Gin文件上传按照日期存储1实现步骤/* 1.获取上传的文件 2.获取后缀名判断类型是否正确.jpg.png.gif.jpeg 3.创建图片保存目录static/upload/20240101 4.生成文件名称和文件保存的目录 5.保存*/2代码//获取当前的日期funcGetDay()string{ template:="......
  • zabbix异常处理解决方案
                                    zabbix异常处理解决方案1、zabbix批量添加一百多台交换机导致,可以登录zabbix但是所有的监控值都无数据解决方案:       1》.查看zabbix-server.log   2......
  • [疑问] 为什么 Apple Silicon 处理器 MacBook 自带的 zsh 是 x86 架构的?
    问题如题,我有一台MacBookPro2021,某天我突发奇想测试了一下机器自带zsh的架构,输出的结果令人震惊:至于为什么不是ARM架构的,目前不得而知。不过我已经使用Homebrew装上了ARM架构的zsh。解决将默认Shell切换为Homebrew安装的zsh由于Homebrew安装的zsh不在......
  • 第七天:磁盘存储、分区和文件系统
    一、磁盘结构1、设备放在/dev文件下面硬盘:sdanvme虚拟:xvdvdmknod:创建设备2、硬盘类型接口类型:IDESCSISATASASUSBM.2机械硬盘和固态硬盘3、open(),read(),write(),close()文件操作二、分区类型设备分区、创建文件系统、挂载新的文件系......