Прежде всего, убедитесь, что ваш сервис Elasticsearch постоянно работает, не должен проверяться PHP.Есть другие технологии, доступные для решения таких проблем, например, Nagios.
Но в случае, если PHP - единственный вариант, который у вас есть, используйте приведенный ниже код.Вы можете хранить это в cron каждые 5 минут или как вам лучше.
<?php
$command = "ps -aef | grep elasticsearch | grep -v grep | grep '/usr/bin/java'";
exec($command, $pids);
if(count($pids) > 0){
print_r('elasticsearch service is running!');
}else{
$command = "service elasticsearch restart";
exec($command);
print_r('restarting elasticsearch service.');
}
print_r("\n");
Надеюсь, это сработает для вас.