#! /bin/bash date_time() { date +'%Y-%m-%d %H:%M:%S' } if [[ -e /tmp/es_curl_resp ]]; then last_resync_date=$(date -r /tmp/es_curl_resp "+%Y-%m-%d %H:%M:%S") time_to_check=$(TZ='UTC0' date -d "$last_resync_date UTC +12 hours" +'%Y-%m-%d %H:%M:%S') if [[ "$(date_time)" < "$time_to_check" ]]; then echo "$(date_time) [WARNING] Full resync has been initiated less than 12 hours ago (at $last_resync_date)." echo "$(date_time) [WARNING] Will not restart elasticsearch as resync could be still running" exit 0 fi fi echo "$(date_time) Retarting elasticsearch services" echo "service elasticsearch stop:" /sbin/service elasticsearch stop sleep 10 echo "killall java:" killall java sleep 5 echo "killall -9 java:" killall -9 java sleep 5 echo "service elasticsearch start:" /sbin/service elasticsearch start sleep 10 echo "service elasticsearch status:" /sbin/service elasticsearch status