LINUX.ORG.RU
ФорумAdmin

puppet жрёт много памяти

 , ,


0

2

Всем привет, ситуация: есть сервер-шлюз на debian-е на котором установлен sqiud, ещё кое-какой софт и puppet, последний жрёт из имеющихся 512 мегабайт памяти почти 52%, как можно снизить эту цифру? Из-за него тормозит интернет у всей фирмы, отключить его нельзя потому что высшее IT-начальство не позволяет.

p.s. Определил что из-за него потому что когда его выключаешь интернет летать начинает.

Ответ на: комментарий от powerguy

Не помогает к сожалению. Я просто почему спрашиваю, нормально ли это для него жрать столько памяти? Или может кто-то что-то криво настроил.

Loalcat
() автор топика
Ответ на: комментарий от dormeur86

Этот сервер единственный с линуксом, и к сожалению вопрос о количестве тачек на фирме решаю не я, а с проблемой почему интернет не работает ко мне идут.

Loalcat
() автор топика

Какая версия puppet используется?

Речь идёт о процессе агента или мастера?

Если это агент, я бы предложил не держать его в режиме демона, а запускать по крону.

kdask
()

Думаю, что для него это типично. Сам запускал его (через puppet apply) на 512 Мб инстансе в облаке и он падал, т.к. памяти ему было недостаточно (потому что там были и другие приложения). Собственно, в т.ч. и по этой причине перешел на Ansible (не реклама).

php-coder ★★★★★
()
Ответ на: комментарий от php-coder

так а что собственно жрет память , puppet master или puppet agent. Например, у меня в случае puppet 2.7, master"у надо 128Мб на процесс, а агенту 90Мб.
Ну и совет, может там большое кол-во модулей используется, попробуй поотключать некоторые. И еще, puppet agent рекомендуют запускать не в режиме демона, а через cron : puppetd -t .

Bers666 ★★★★★
()
Ответ на: комментарий от Bers666

Например, у меня в случае puppet 2.7, master"у надо 128Мб на процесс, а агенту 90Мб.

а я еще думал внедрять паппет, сервер загнется от 200 тачек которые к нему начнут ломится...

CHIPOK ★★★
()

Renice

Можно попробоваьт сделать ренайс — сквиду приоритет высокий, а паппета - самый низкий. И посмотреть, как оно всё будет работать

asm0dey
()
Ответ на: комментарий от CHIPOK

1. Запускать puppet master через passenger, настроить кол-во тредов соответственно кол-ву RAM, чтобы не свопится.
2. Настроить агенты, чтобы ломились как-то равномерно-распределенно по времени, а не все одновременно.
3. Со стороны puppet master основная нагрузка это приготовить каталог и распарсить отчет, эти действия CPU интенсивные. Отдача же файлов (мелких) это дешевая операция.
4. При 200-х агентах еще нет смысла ни в кэшировании файлов, ни в дополнительных puppet мастерах. Загибаться начнет при 500.

Bers666 ★★★★★
()
Ответ на: Renice от asm0dey

Угу, да и зачем squid-у много RAM? cache_mem снизить.
И настроить паппет агенты, чтоб «забирали каталоги» во внерабочее время.

Bers666 ★★★★★
()
Ответ на: комментарий от Bers666

2. Не вариант, компы время от времени меняются, ломаются, добавляются новые, убираются старые, парк мягко говоря динамичный. В планах на ближайший год он должен увеличится в несколько раз, так что если это будет около 500 то беда. Плюс на серваке активно используется ftp, http, zabbix.

CHIPOK ★★★
()
Ответ на: комментарий от snaf

в продакшене нашему отделу был выделен один сервак под фтп и заббикс, но как всегда хочется добавить функционал, паппет явно туда впихать не стоит, подальше от греха. А так я хз сколько серваков, под каждый пук парочка.

CHIPOK ★★★
()
Ответ на: комментарий от CHIPOK

компы время от времени меняются, ломаются, добавляются новые, убираются старые,

ну так и в чем проблема? в том же puppet-е можно создать крон задание, которое зависит от некого уникального для данного агента значения(fqdn или uniqueid), преобразованного в число, деленного по модулю 60. Так получаем номер минуты, а час выбираем 8. В итоге все агенты подсасывают каталог от 8 до 9 утра, не образуя толпы на входе :)

Если много агентов, то берем по модулю 120, все укладываются в 2 часа. Думаю, суть ясна.

если это будет около 500 то беда

тоже ничего не беда. Где-то до 1000 компов простой вариант уменьшения нагрузки это кэширование (тупо nginx перед passenger поставить, заюзать proxy_cache) запросов к файлам, это особенно поможет, если агенты однотипные.

Уже после 1000 агентов можно разбивать нагрузку между несколькими puppet мастерами. Всё это делалось мною, не пустые слова.

Bers666 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.