etcd 进程故障导致 ETCD 服务异常告警

问题现象

etcd 进程 down、重启,管控面上报 etcd 服务异常告警

问题分析及界定

登陆故障 etcd 节点, 进入 Ruby 用户,执行命令 ps ux | grep etcd, 查看 etcd 进程是否在运行。

如果进程在,查看 etcd 进程启动时间,告警时是否重启过,联系华为工程师确认重启原因。

如果进程不在,查看 etcd 无法启动原因:

(1)cd $GAUSSLOG/bin, 查看目录下是否有 cluster_manual_start 和 etcd_manual_start 两个文件,

如果有表示集群被停止,确认停止集群的原因,之后启动集群,定位结束。

(2)cd $GAUSSHOME/bin 查看目录下是否存在 etcd 这个文件,文件权限是否正确,确认文件不存在或权限不正确的原因。

(3)检查 etcd 的数据目录所在磁盘是否满了或者故障,etcd 目录如下:cm_ctl query -Cvipd 查看

检查 etcd 的数据目录所在磁盘是否满了或者目录权限不正确(正确是 700)或者故障,

如果磁盘满,检查占用磁盘的文件并清除或者转存到其他盘,如果是 etcd 本身的文件占满,联系华为工程师分析原因。

如果目录权限不正确,修改为正确的目录权限。如果是磁盘故障,联系 IaaS 技术支持分析定位。

处理步骤

参照上述处理,如果不是以上原因,请联系华为工程师

OM 接口无法正确返回结果导致 ETCD 服务异常告警

问题现象

管控面上报 etcd 服务异常告警, 管控无法获取集群状态

问题分析及界定

查看管控面是否获取集群状态成功,是否获取空消息,联系华为工程师分析定位。

cd $GAUSSLOG/om/

查看 gs_om-xxx.log,是否有如下异常日志

例如: The status file does not exist. Path: /usr/local/temp/local_status_1611355718.58.dat.

### Kubernetes etcd 数据库空间不足解决方案 当遇到 etcd 存储配额超出的情况时,集群会触发告警并进入只读模式,此时需要采取措施来清理存储空间以恢复集群正常运行。具体步骤如下: #### 停止受影响的服务 为了防止进一步的数据写入,在处理之前应当停止所有可能向 etcd 发起请求的应用程序以及 etcd 自身的服务。 ```bash docker stop <etcd_container_id> ``` 这一步骤可以有效阻止新的键值被创建或更新,从而避免占用更多宝贵的磁盘资源[^1]。 #### 清理过期数据 对于不再使用的旧版本历史记录或其他不必要的对象,应该及时删除这些无用的信息。可以通过 `etcdctl` 工具执行相应的命令来进行批量删除操作。 ```bash ETCDCTL_API=3 etcdctl del --prefix=/some/unneeded/prefix ``` 此命令能够帮助快速定位并移除指定前缀下的所有条目,减少数据库体积的同时也提高了查询效率。 #### 执行紧凑化(Compaction) 随着时间推移,即使进行了部分数据的删除,etcd 内部仍可能存在大量已标记为废弃但尚未实际回收的空间。因此建议定期运行紧凑化进程,以便物理上彻底清除那些已经逻辑删除的内容。 ```bash ETCDCTL_API=3 etcdctl compact <revision_number> --physical=true ``` 这里 `<revision_number>` 应该设置成一个合理的修订号,通常可以选择最近一次重要变更之前的某个时刻作为基准点。完成紧缩后记得重启 etcd 实例使改动生效。 #### 复制健康节点的数据 如果存在多副本架构中的其他成员保持良好状态,则可以从健康的 master 节点复制最新的 `/var/lib/etcd/member` 文件夹内容至出现问题的那个实例之上覆盖原有结构。 ```bash scp -r /var/lib/etcd/member/* 192.168.x.y:/var/lib/etcd/member/ ``` 这种方法不仅简单直接而且能迅速让故障单元重新同步回最新的一致性视图内[^3]。 #### 验证修复效果 最后务必确认各项指标均已恢复正常水平,并且没有任何残留警告提示影响稳定性。可通过监控平台查看相关统计图表或者手动调用 API 接口测试连通性和响应速度等方式来进行验证工作。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值