Elasticsearch索引定時清理
阿新 • • 發佈:2018-10-30
$? 頁面 -i 發現 curl .sh 通過 連接超時 jaf 問題
近期,kibana頁面上出現Elasticsearch plugin is red錯誤信息,重啟elasticsearch後又頻繁出現該問題,觀察elasticsearch發現各節點之間出現連接超時的現象.
解決方法
懷疑是索引條目太多,導致Elasticsearch性能下降造成的,通過查詢api發現大量索引是yellow狀態:
curl -XGET ‘http://127.0.0.1:9200/_cat/indices/?v‘
yellow open user_audit-2018-08-08 Lx5YlsSxSDW7Z6dKwHLy4Q 5 1 159 0 265.5kb 265.5kb yellow open user_audit-2018-04-18 Rz7opEo7Tn-mfBsc0SyrDg 5 1 619 0 614.6kb 614.6kb yellow open net_switch-2017-11-18 7RZBwJGES1Ck2SI6Zsc_mA 5 1 16504 0 3.7mb 3.7mb yellow open user_audit-2018-06-07 _mapb6GpRkKP4bNqxI0tkg 5 1 130 0 212.4kb 212.4kb yellow open net_switch-2018-02-02 HL-saNdaSiuvDBfLyGNgrg 5 1 190 0 246.1kb 246.1kb yellow open user_audit-2018-01-05 BXO_atQmTl-ud_KCiHnSvw 5 1 288 0 309.1kb 309.1kb yellow open user_audit-2018-04-11 lDn7O9ZcRoKO4NwPArPcWg 5 1 166 0 243kb 243kb yellow open net_switch-2018-03-29 F7UeMBvZTou1n0OeZJjbyg 5 1 191 0 334.2kb 334.2kb yellow open domain_log-2018-07-07 b2hg9sIFSE-Pm6DHom7Q6Q 5 1 11742465 0 5.3gb 5.3gb yellow open user_audit-2018-05-12 g1q6jrWtQYaagoUbSigRsw 5 1 23 0 185.4kb 185.4kb yellow open net_switch-2018-05-16 yQL5rwlvQD2whqASws1Yaw 5 1 182 0 311.2kb 311.2kb yellow open domain_log-2018-08-27 7kM3sl0nTNOPN0XbwmYULw 5 1 13788549 0 6.7gb 6.7gb yellow open domain_log-2018-07-06 hb5ZL-Z1Rk6DyhYXTBGnrw 5 1 10434848 0 4.8gb 4.8gb yellow open domain_log-2018-05-12 0Q8uLeSVTtW7GyGJNdd5FA 5 1 10753882 0 5.6gb 5.6gb yellow open user_audit-2018-05-22 ryLHjAhNS2-5kjqRjccH_A 5 1 653 0 680kb 680kb yellow open user_audit-2018-07-23 DSGn1gXTQaub35FS34z28g 5 1 36 0 235.1kb 235.1kb yellow open domain_log-2018-03-02 H54jaFt2Rgq-ktC81tROJw 5 1 17530752 0 9gb 9gb
一、api刪除
curl -XDELETE ‘http://127.0.0.1:9200/domain_log-2018-*‘
清理掉了所有 2018年domain的索引文件
二、腳本加api刪除(推薦)
cat ES-index-clear.sh
#/bin/bash #指定日期(7天前) DATA=`date -d "1 week ago" +%Y-%m-%d` #當前日期 time=`date` #刪除7天前的日誌 curl -XGET "http://127.0.0.1:9200/_cat/indices/?v"|grep $DATA if [ $? == 0 ];then curl -XDELETE "http://127.0.0.1:9200/*-${DATA}" echo "於 $time 清理 $DATA 索引!" fi
三、添加到任務計劃
#每天定時清理索引0 1 * * * /bin/sh /root/shscript/ES-index-clear.sh >> /root/shscript/log/es-index-clear.log
Elasticsearch索引定時清理