Ну так главный процесс занял определенное кол-во памяти при старте так и работает. И отнимать у него эту память при использовании vm.overcommit_memory = 2 не будет. А значит должен он себя адекватно вести.
У меня просто ядер много, и судя по статистики они не так сильно напрягаются как память.
Постепенно уменьшать MaxClients для меня не вариант, потому что у меня не один не два и не 10 серверов, соответственно сидеть под каждый подбирать значение затея мало перспективная. Нужны какие-то более универсальные методы. Да и апачи форки в рамках одного приложения могут занимать разное кол-во памяти, могут запустить пару тройку форком тяжелах, и не спасет MaxClients , придет оом киллер и конец. Именно для этого я и подтюнил sysctl, чтобы апач не мог занимать больше памяти чем ему может быть выделенно, лучше пускай он зафейлит некий процент запросов в момент высокой нагрузки в связи с невозможностью зафоркать , чем повесит наглухо сервак.
Мне вот еще что интересно, даю нагрузку, затем нагрузку останавливаю, при этом в сторону приложения не идет ВООБЩЕ никаких запросов, но strace показывает что апач все еще продолжает обрабатывать в течении какого-то времни какие-то запросы. Думал что это нгинкс ему доотправляет то что наполучал, но если отключить нгинкс в этот момент, то апач все равно обраюатывает какие-то запросы, как-будто из какой то очереди. Пробовал ставить ListenBacklog 1, картина та же
ЧТо касается других ваших предположений, то сообщу что на данном сервере крутится исключительно апач и нгинкс, все остальное вынесено за пределы обсуждаемого сервера.
Мнение про некоторую связь между значением MaxClients и количеством ядер весьма интересно. Пытался найти инфу об этой зависимости когда читал вышеперечисленные доки, но ничего путного не нашел. Буду рад если сможете предоставить что-то полезное на эту тему.
Ну и к слову сказать по идеи значение MaxClients можно выставить хоть 100500, потому что тюнинг sysctl
vm.overcommit_ratio = 100
vm.overcommit_memory = 2
Не даст апачу нафоркать процессов больше чем есть памяти на сервере.
P.S. Не исключено конечно что я могу и ошибаться в своих высказываниях.
Сделал как вы сказали, но результат не получил. По прежнему та же ошибка плюс еще добавилось Node 15 doesn't match the template source type. Discarded. Хотя манипуляции произвожу из под админа у которого в правах все галки стоят которые есть.
Может я что-то не понимаю. Вот что я делал:
1)положил https://www.drupal.org/project/ckeditor в /sites/all/modules, затем включил модуль через веб интерфейс.
2)Скачал модуль ckeditor.com/addon/syntaxhighlight , далее выполнил add the syntaxhighlighter-folder to your ckeditor's subfolder "plugins" and add syntaxhighlighter to the extraPlugins-entry in your config.js.
итог: Когда прошел в настройки чтобы кнопку из available buttons добавить в current toolbar, кнопку там не обнаружил, хотя плагин есть в списке плагинов и галка стоит Plugins
Auto Grow plugin. See addon page for more details.
Plugin for inserting Code Snippets. See addon page for more details. See help for additional instructions.
Plugin to count symbols, symbols without blanks and words
Plugin for inserting Drupal teaser and page breaks.
Enhanced Image plugin. See addon page for more details.
Plugin for inserting Mathematical Formula (MathJax). See addon page for more details. See help for additional instructions.
Plugin for embedding HTML snippets
Stylesheet Parser plugin. See addon page for more details.
Plugin file: syntaxhighlight
Table Resize plugin. See addon page for more details.
Choose the plugins that you want to enable in CKEditor.
Алексей Ямщиков: поменял в /etc/sysconfig/elasticsearch параметр ES_HEAP_SIZE, поставил размер соответствующий половине размера всей оперативной памяти сервера.
Алексей Ямщиков: По памяти: -Xms256m -Xmx1g.
Да действительно,вы правы. По всей видимости проблемы с памятью (как я этого сразу не заметил, ведь логи смотрел же). Вот примеры логово:
[2015-12-09 13:24:10,445][WARN ][transport ] [Ghoul] Received response for a request that has timed out, sent [32493ms] ago, timed out [17171ms] ago, action [cluster:monitor/nodes/stats[n]], node [{Ghoul}{iKfXrHg8TMeDUi59IM2xMQ}{127.0.0.1}{127.0.0.1:9300}], id [17664618]
[2015-12-09 13:29:23,195][WARN ][index.engine ] [Ghoul] [logstash-2015.12.09][1] failed engine [already closed by tragic event] java.lang.OutOfMemoryError: Java heap space
[2015-12-09 13:29:36,051][WARN ][cluster.action.shard ] [Ghoul] [logstash-2015.12.09][0] received shard failed for [logstash-2015.12.09][0], node[iKfXrHg8TMeDUi59IM2xMQ], [P], v[2], s[STARTED], a[id=-7k4xHD4T9qh6qN7Yz753g], indexUUID [RwuQB1Y8TP2OWjdVttPkgQ], message [engine failure, reason [already closed by tragic event]], failure [OutOfMemoryError[Java heap space]]
java.lang.OutOfMemoryError: Java heap space
Вопрос, почему по началу памяти хватает, а потом уже нет, куда она девается?
Можете подсказать как расточить этот параметр (я имею ввиду кол-во выделяемой памяти) ну или дайте keyword для гугла ?
НА сервере крутится только ЕЛК и больше ничего другого. Сервер 32Гб ram и 16 ядер. Под данные эластика на диске выделено 1.2Тб из них на данный момент эластик занял 20Гб. Индексов порядка 20 штук, в каждом индексе около 100000 документов. Каждый день прибавляется по одному индексу размером около 100000 документов