#!/bin/bash
# 设置日志文件路径
LOG_FILE="/root/crontab_etcd/etcd_maintenance.log"
# 函数:执行kubectl命令并记录日志
run_kubectl_command() {
echo "$(date): Running command: $1" >> $LOG_FILE
kubectl exec -it kuboard-v3-gp-kuboard -n kuboard -- sh -c "$1" >> $LOG_FILE 2>&1
echo "$(date): Command completed." >> $LOG_FILE
echo "" >> $LOG_FILE
}
# 主要操作
echo "$(date): Starting etcd maintenance script" >> $LOG_FILE
# 列出警报
run_kubectl_command "etcdctl --endpoints=http://127.0.0.1:2379 alarm list"
# 获取当前修订版本号
rev=$(kubectl exec -it kuboard-v3-gp-kuboard -n kuboard -- sh -c "etcdctl --endpoints=http://127.0.0.1:2379 endpoint status --write-out='json' | grep -o '\"revision\":[0-9]*' | grep -o '[0-9].*'")
echo "$(date): Current revision: $rev" >> $LOG_FILE
# 压缩到当前修订版本
run_kubectl_command "etcdctl --endpoints=http://127.0.0.1:2379 compact $rev"
# 碎片整理
run_kubectl_command "etcdctl --endpoints=http://127.0.0.1:2379 defrag --command-timeout=10s"
# 解除警报
run_kubectl_command "etcdctl --endpoints=http://127.0.0.1:2379 alarm disarm"
echo "$(date): etcd maintenance script completed" >> $LOG_FILE
echo "----------------------------------------" >> $LOG_FILE
解决kuboard ETCD提示数据空间不足问题
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- Error Tips使用etcd时报错,报错信息: etcdserver: mvcc: database spac...
- 使用BRIG画质粒比对图的时候,遇到提示: 此时画出来的质粒图就是空的,没有blast比对信息。查了一下资料,可能...
- 关键词 磁盘 inode -bash: /bin/rm: Argument list too long 背景 今日...
- 最近遇到客户报了一个问题,一个报表无法显示,其他的报表都正常。经过查看,发现是sql执行失败了,显示 想起来前几天...