Я запускаю Elasticsearch (ES) на небольшом компьютере с AWS Ubuntu и работаю над общей настройкой его производительности.
После недавнего развертывания с использованием Saltstack я заметил, что количество запущенных экземпляров увеличилось с двух до трех — после двух в течение нескольких месяцев. Увеличение количества экземпляров, по-видимому, соответствует увеличению использования памяти.
Я подтвердил с помощью ps, что на коробке запущены три java-процесса:
PID TTY TIME CMD
9295 ? 00:02:08 java
14398 ? 00:00:12 java
26175 ? 00:40:48 java
Когда я останавливаю ES с помощью команды «sudo service elasticsearch stop», у меня по-прежнему остаются два процесса ES, работающие в соответствии с ps:
PID TTY TIME CMD
9295 ? 00:02:08 java
26175 ? 00:40:48 java
Я перезапустил службу, а затем у меня снова было три. Это кажется мне очень странным, потому что казалось, что две службы не реагировали на команду остановки. (Может ли это быть так называемый процесс зомби или сирот?)
Я вручную убил все три процесса и перезапустил ES, и теперь у меня есть только один экземпляр ES. Я задавался вопросом, связаны ли эти своенравные Java-процессы с какой-то другой службой, но после уничтожения всех трех New Relic подтвердил значительное снижение использования памяти и процессов — так что все они определенно были процессами, связанными с ES:
Мой вопрос: почему после развертывания количество запущенных экземпляров будет увеличиваться? Есть ли для этого функциональная причина Elasticsearch или это ошибка? Что может привести к тому, что Elasticsearch или любой другой сервис в Ubuntu перейдет в это состояние без ответа?
Любое понимание очень ценится!