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

админские истории продолжение в комментах 
Что-то в последнее время у меня слишком много админских событий, что не очень радует... не люблю я нервничать.

Сегодня в комментах я расскажу про проблему, что была сегодня. Прилагаю график просмотров. Видно, что количество просмотров упало в 2 раза.
админские истории,разное,продолжение в комментах
Подробнее

админские истории,разное,продолжение в комментах
Еще на тему
Развернуть
После неудачных попыток с ceph, я не опустил руки. И сейчас пытаюсь собрать кластер на iscsi + lvm + gfs2. По сути, это рейд между серверами. Он уже сконфигурирован и я запустил его синхронизироваться. При этом просто оба диска на двух серверах заполняются одинаковыми нулями. Таким образом, после начальное синхронизации они будут полностью одинаковыми и дальше можно будет синхронизовать только изменения.

Запустил я синхронизацию где-то в 12-13 и пошёл спать (мама заставляет меня спать днём - говорит так расту быстрее). А через 2 часа вдруг начался какой-то пипец.

Пропущу, как я расследовал это и сразу перейду к результатам расследования:
1) на одном из серверов сервис iscsi начал радостно писать на диск изменённые данные. Ничего не предвещало беды.
2) писать надо было много, поэтому ядро начало активно использовать память для кэширования данных, которые надо записать на диск. Надо сказать, что памяти там было навалом. 16Гб всего. Из них 5Гб используются на мемкэш и 1Гб на всякие апачи.
3) ядро скушало оставшиеся 10Гб памяти под дисковые кэши и подумало что ему мало. Но памяти уже нет. Значит надо или умерить свои дисковые кэши, или начать свопить.
4) проведя беглый анализ, ядро решило, что мемкэш использует кучу памяти, но к части из неё обращается редко. И решило его засвопить.
5) мемкэш начинает потихоньку перекидываться в своп. Там и вправду есть элементы, к которым обращаются раз в неделю. Но так как этих элементов там дофига, то постепенно вероятность попадания запроса в своп всё росла и росла
6) установилась положительная обратная связь:
- апач с большой вероятностью "попадает" в своп при обращении к кэшу в мемкэше.
- из-за этого количество процессов апача начало расти (ибо каждый стал дольше ждать когда мемкэш ответи).
- из-за этого апач стал кушать больше памяти.
- из-за этого ядро стало с ещё большими усилиями свопить мемкэш.
- из-за этого апач с большое вероятностью попадает в своп.

Когда я проснулся и скушал полдник (стакан молока с печенькой), то обнаружил такую картину:
1) запросы выполняются по 15-30 секунд.
2) мемкэш на 3.5Гб засвоплен.
3) большая часть памяти отдана ядру под буферы ввода-вывода
koka koka 28.03.201318:12 ответить ссылка 3.0
ну и решение было простое и быстрое:
1) перезагружаем мемкэш (регенерация кэша идёт достаточно быстро и производительность проседает в основном только в первые секунды)
2) устанавливаем vm.swappiness=10 вместо дефолтного vm.swappiness=60
3) ставим своп на мониторинг. Пока ничего не свопилось...
koka koka 28.03.201318:14 ответить ссылка 1.5
Приятно почитать, как проблема действительно анализируется до конца.
А то у меня на работе обычно "ну я хуйнул этот патч, и вроде заебись, а чо, ёба?"
А вапросик можна? php-fpm не пробовали вместо апача?
вот тут обсуждали - http://joyreactor.cc/post/701470#comment1958089 =)
В данном случае, php-fpm просто немного отсрочил бы падение. Но не думаю, что сильно =).
koka koka 28.03.201319:42 ответить ссылка -0.3
Так там про cgi, а тут fpm. Бэкенд присоединяется через сокет.
php-fpm - это просто продвинутый fastcgi. Он работает на том же протоколе cgi.
По поводу скорости - то же самое. В гугле пишут, что чистая скорость в качестве бэкэнда у всех почти одинаковая.
Вот чувак не может настроить php-fpm быстрее апача:
http://stackoverflow.com/questions/12056861/configuring-haproxynginxphp-fpm-to-out-perform-apachemod-php

По памяти - сейчас специально зашёл на ресурс, который использует php-fpm. На один процесс php-fpm - 35-40Mb. На один процесс апача - 45-50Mb. Разница небольшая. Если запущено 30 процессов, то разница в 300Мб.

А 30 запущенных процессов - это уже какой-то пипец. Ну и апач намного гибче настраивается
koka koka 28.03.201319:49 ответить ссылка 0.0
Ну тут как бы "ХЗ", я не гуру и не буду ничего утверждать. Просто спросил. :)
У меня как-то на апаче было запущено более 100 процессов, и ничего - норм всё работало, но после перехода на php-fpm+nginx я вообще забыл про нагрузку на сервер...
p.s. http://tinyurl.com/d27m3kq
не путай апач в качестве фронтэнда и апач в качестве бэкэнда =).
В качестве фротэнда апач нельзя использовать, это да. А вот что использовать в качестве бэкэнда - это по сути всё равно.

То есть,
apache << nginx + any
nginx + apache =~= nginx + php-fpm
koka koka 28.03.201320:28 ответить ссылка 0.0
Ок ок, без проблем. Один вопрос, что за рисовалка/сравнивалка "количества просмотров"?
профит от php-fpm это, в основном, уменьшение потребление памяти.
(как я помню) процесс апача включает все его модули, те если у тебя включены mod_php mod_python, то все это будет включено в процесс, даже если ты отдаешь 404.

Те это оптимизация по памяти, а не по быстродействию.

Как говорили парни из disqus - "не важно что ты юзаешь апач или нжинХ - горлышко это твой код"
Собственно тесты в вакуууме такими и остаются. Для реальных тестов нужно реальное приложение, те тут нельзя опираться на "в интернете сказали, что так не выстрелит".

Это как придирка - в любом случае ты никого тут не послушаешь и сделаешь по-своему
xD

К списку своих экспериментов посмотри на https://code.google.com/p/leveldb/
Кроме шуток - попробуй похранить картинки в бд.

Ну и пора уже высматривать параметры ядра связанные с кешами.

ИМО играться с кластеризацией ФС не стоит - там все равно будет единая точка отказа и чем крече система, тем глебже в коде она будет.

Сконцентрируйся на разделении контента по разным серверам как это делают в вк/фб
как раз кластерная фс на то и кластерная, что не будет иметь единой точки отказа.
leveldb написано "Only a single process (possibly multi-threaded) can access a particular database at a time." - а значит тоже есть единая точка отказа.

Я думал по поводу Cassandra - ещё попробую её потестить.
koka koka 30.03.201316:22 ответить ссылка 0.0
А может быть проблема в плохом контенте?
господа, может быть не по адресу, но всё же.
тема такая: когда открываю на реакторе любой пост с большим количеством комментов и картинок в них, страница начинает скролиться с дикими тормозами, на других сайтах не наблюдай. браузер хром.
monstr monstr 29.03.201300:13 ответить ссылка 0.0
гифки грузятся... на других сайтах их мало, обрати внимание на загрузку инет канала во время просмотра большого кол-ва гивок на странице. В наше время гифки весят до одурения =)
даже когда куча джипегов и гифок нет в комментак и то долго грузится.
monstr monstr 29.03.201323:38 ответить ссылка 0.0
1) дай пример поста
2) стоят какие-то плагины?
koka koka 30.03.201308:54 ответить ссылка 0.0
блин, где-то с месяц тормозило, как спросил так перестало :(
если проблема появится снова - отпишусь. плагина стоит 2: addblock и gismeteo.
monstr monstr 30.03.201312:04 ответить ссылка 0.0
ну если тормоза заметишь - попробуй выключить плагины
koka koka 30.03.201312:14 ответить ссылка 0.0
Не, это как раз тормоза браузера.
С этим вообще интересно поэксперементировать, как фронтендщику.

:3
Может это совпадение но уменя примерно в это же время скорость упала
Может же уже более-менее адекватно копать если хочет...
Dr_Quake Dr_Quake 29.03.201300:31 ответить ссылка 0.0
не интересно
Dzodee Dzodee 29.03.201300:58 ответить ссылка -0.2
ни хуя не понял, но вы, парни, молодцы
Подписался на тег. Маме привет!
линуксоиды... веселые...))) дорогой слетаем в отпуск на гаваи? хорошо дорогая, только сначала изобретем самолет проведем испытания устраним все технические неисправности и вот тогда в путь, ах да дорогая так же необходимо изобрести и самим собрать двигатели, авионику и т.д. и т.п. ...
SPIDI SPIDI 30.03.201313:53 ответить ссылка 0.0
а да и еще дорогамя нам придется освоить професси пилотов борт инженеров мотористов электриков проэктировщиков и разработчиков и т.д. и т.п. ...
SPIDI SPIDI 30.03.201313:55 ответить ссылка 0.0
всем похуй
andrew_b andrew_b 30.03.201315:10 ответить ссылка 0.0
Кстати я нашёл бэкпорт 3.6 на цент, но без src и даже headers.
Dr_Quake Dr_Quake 01.04.201302:39 ответить ссылка 0.0
ну так а чо там с gfs2+lvm? неужели работает все хорошо?
Неа, всё плохо =). Оставил кластер на пару дней, пока с основной сервак бэкапился и старые картинки удалял. Сейчас зашёл - там процессор cmirrord жрёт 100% проца. В реальной конфигурации для решения этой проблемы надо перезагружать ноду, у которой это сглючило. Но мирится с тем, что серваки будут перегружаться постоянно из-за мелких багов не хочется.

Сейчас смотрю в сторону openstack swift
koka koka 01.04.201313:20 ответить ссылка 0.0
а не ковырял elliptics?
давно хочу его запустить в продакшен, проект вроде бы достойный, но ссыкатно - саппорта нет, опыта реальной работы мало и документации кот наплакал
слишком мало информации о нём. Да и в стандартных дистрибах нет
koka koka 01.04.201314:14 ответить ссылка 0.0
Только зарегистрированные и активированные пользователи могут добавлять комментарии.
Похожие темы

Похожие посты
3 3 3 3 lS 3 3 3 S 3 3 3 Ü3333gg 3 3 3 3 3 3 3 3
1
S 3 3 3 3 g 3 3 3 3 3 3 3 3 ¡ 3 s i S 3 g g 3 3 3 3 3 3 3 3 !
!=Ë Si I I I 1
servl2: CPU Loads (lh)
3 3 3 3 3 ^ 3 3 3 3 3 3 3-ÜÜ 3 3 3 3 3 3 3 3 3 3 3
I
Sa Si I I 11 1
SS 3 3 3 1 3 3 3 S S 3 3 3 ^ i i 1 i 3 3 3 3 S 3 3 3 3 3 3 S0
I	i
:=11
подробнее»

админские истории разное ceph и все все все openstack swift

3 3 3 3 lS 3 3 3 S 3 3 3 Ü3333gg 3 3 3 3 3 3 3 3 1 S 3 3 3 3 g 3 3 3 3 3 3 3 3 ¡ 3 s i S 3 g g 3 3 3 3 3 3 3 3 ! !=Ë Si I I I 1 servl2: CPU Loads (lh) 3 3 3 3 3 ^ 3 3 3 3 3 3 3-ÜÜ 3 3 3 3 3 3 3 3 3 3 3 I Sa Si I I 11 1 SS 3 3 3 1 3 3 3 S S 3 3 3 ^ i i 1 i 3 3 3 3 S 3 3 3 3 3 3 S0 I i :=11