Elasticsearch是一个开源的、分布式的、高可用的、实时的搜索和分析引擎,它有助于快速收集、存储和分析大量数据,广泛应用于大规模数据的实时搜索和分析。
下面是我们的一个业务的集群,由于业务压力,经常性会丢失1~2个节点,并基于该场景做自动恢复。
2.1 脚本设计思路

集群节点数统计,对节点的数量统计,节点数不同则设置不同的值,根据实际情况设置;
对剩余节点判断,小于3则对节点直接拉起;
等待5分钟,可根据实际情况调整,对集群状态进行判断。
2.2 具体脚本
#!/bin/bas
MONITOR_HOME="/app/check_es"
app_home="/app"
hostip="xxxxxxxx"
node="node_xxxxxxx_9200"
node_number1=`curl -u username:xxxxxxxx http://xxxxxxxx:9200/_cat/nodes|grep 'xxxxxxxx'|wc -l`
if [ ${node_number1} -ne 5 ];then
curl -u username:xxxxxxxx http://xxxxxxxx:9200/_cat/nodes?v |grep 'xxxxxxxx'|awk '{print $10}' > $MONITOR_HOME/now.txt
grep -vwf $MONITOR_HOME/now.txt $MONITOR_HOME/last.txt > $MONITOR_HOME/check.txt
if [[ ${node_number1} < 3 ]];then
cd $MONITOR_HOME
./mess.sh -b "`date` $hostip ERROR: 丢失节点数超过3个,请检查" -t 18974885939,1536793399
else
if [[ ${node_number1} > 2 ]];then
for i in `cat ${MONITOR_HOME}/check.txt`
do
echo "`date` 节点${i}异常,准备重启" >> ${MONITOR_HOME}/error.log
if [ ${i} = ${node} ];then
pid=`ps -ef |grep ${i} |grep -v grep|grep -v controller|grep -v node_${hostip}_9201|grep -v node_${hostip}_9202|grep -v node_${hostip}_9203|grep -v node_${hostip}_9204|awk '{print $2}'`
else
pid=`ps -ef |grep ${i} |grep -v grep|grep -v controller|awk '{print $2}'`
fi
if [ !${pid} ];then
kill -9 ${pid}
cd ${app_home}/${i}/elasticsearch
./bin/elasticsearch -d
else
cd ${app_home}/${i}/elasticsearch
./bin/elasticsearch -d
fi
done
sleep 300s
node_number2=`curl -u username:xxxxxxxx http://xxxxxxxx:9200/_cat/nodes|grep 'xxxxxxxx'|wc -l`
node_status=`curl -u username:xxxxxxxx http://xxxxxxxx:9200/_cat/health|awk '{print $4}'`
if [ ${node_number2} -ne 5 ];then
echo "节点未恢复,请检查"
else
if [[ ${node_status} = "red" ]];then
echo "节点已重新加入集群,正在恢复"
else
echo "集群已恢复"
fi
fi
fi
fi
fi复制
自愈带来的成效:

本文作者:唐田寿(上海新炬中北团队)
本文来源:“IT那活儿”公众号

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
阿里云 Elasticsearch Serverless 检索增强型 8.17 版来袭!
阿里云大数据AI技术
361次阅读
2025-04-18 10:24:15
openGauss 7.0.0-RC1 版本正式发布!
Gauss松鼠会
207次阅读
2025-04-01 12:27:03
一键部署 Dify + MCP Server,高效开发 AI 智能体应用
阿里巴巴中间件
148次阅读
2025-04-07 09:44:48
拉卡拉 x Apache Doris:统一金融场景 OLAP 引擎,查询提速 15 倍,资源直降 52%
SelectDB
128次阅读
2025-04-02 17:52:59
DataWorks数据集成同步至Hologres能力介绍
阿里云大数据AI技术
87次阅读
2025-04-01 10:26:58
夺冠!电科金仓斩获申威赛马-数据库性能大赛第一名
金仓数据库
86次阅读
2025-03-31 10:00:44
实用工具来了,存量 OpenAPI 批量转化为 MCP Server
Se7en的架构笔记
63次阅读
2025-04-11 15:34:28
阿里云 Elasticsearch Serverless 检索增强型8.17版免费邀测!
阿里云大数据AI技术
59次阅读
2025-04-15 13:18:15
openGauss 7.0.0-RC1 版本正式发布!
openGauss
51次阅读
2025-04-01 12:27:04
来PG技术峰会捡天上的馅饼
老冯云数
44次阅读
2025-04-21 10:35:22