@ru_devops

Страница 354 из 999
Марк ☢
09.08.2017
19:08:53
И да. Если логи по факту нужно отдавать в сеть то срание на диск ни к чему

Sergey
09.08.2017
19:08:57
потому что раббиты и кафки в определенный момент могут быть легко недоступны.

а логи надо сохранять

Марк ☢
09.08.2017
19:09:28
а логи надо сохранять
Буферблоат блеать

Google
Sergey
09.08.2017
19:09:48
@spuzirev у нас в конторе кластера рэббита вообще на разных материках находятся. Схема фанаутов, топиков и очередей для приложений на этой шине ханимает несколько страниц документации.
не пытался присобачить раббит для этой задачи, не пользовался никогда и комментировать не смогу. коллеги пытались, решили, что производительность в районе нихрена и выходит крайне дорого. защищать их позицию не смогу и не стану.

Dmitrii
09.08.2017
19:09:55
Смотри, у нас схема например такая что если выходит кластер в Европе из строя то кластер в Америке просто накапливает у себя. Америка работает только с HA Америки

Dmitrii
09.08.2017
19:10:32
Это 10 строк кода )

Марк ☢
09.08.2017
19:10:44
Sergey
09.08.2017
19:10:49
Это 10 строк кода )
а сколько строк кода обработка невозможности плюнуть в раббит? :)

обработка буферизации сообщений, которые не плюнулись в раббит?

Dmitrii
09.08.2017
19:10:58
Ну ладно, еще fail safe драйвер с раундробином для выбора ноды. Еще +100

Марк ☢
09.08.2017
19:11:07
Прога срет в юникссокет в сислогный демон который уже например срет в рабит или куда там надо

Dmitrii
09.08.2017
19:11:23
У нас кстати fail safe драйвер тоже запилен

Марк ☢
09.08.2017
19:11:40
Вернее 10 прог все срут в сислог. По СТАНДАРТНОМУ протоколу

Dmitrii
09.08.2017
19:11:52
Такого чтобы прилег весь кластер в одном из регионов... Ну если весь регион недоступен то у тебя проблемы гораздо больше чем отсутствие логов

Марк ☢
09.08.2017
19:12:03
Без выебонов. Хочешь буфферизовать логи ? Делай это в своем хитровыебанном сислоге

Google
Sergey
09.08.2017
19:12:20
Марк ☢
09.08.2017
19:12:39
между приложением и сислогом тоже нужна буферизация.
Если энтот сислог написать правильно то можно забить

Марк ☢
09.08.2017
19:12:50
Рантайм прио в тхреаде и млокалл

Dmitrii
09.08.2017
19:12:59
Короче на самом деле дискуссия ни о чем пока не определятся критерии дюрабилити для логов

Марк ☢
09.08.2017
19:13:09
нельзя
Обоснуй

Sergey
09.08.2017
19:13:42
Обоснуй
если UDP - то мы теряем евенты. если TCP - то мы вынуждены уметь обрабатывать ситуацию, когда мы пишем бёрст логов, а с той стороны не успевают вычитывать. буфера ОС нам будет мало.

Sergey
09.08.2017
19:14:18
Рантайм прио же у сислога
охуеть и он теперь что, начал работать быстро?

Марк ☢
09.08.2017
19:14:34
охуеть и он теперь что, начал работать быстро?
Блять ну сделай мультитхреадным

Явно в цпу не упрется жи. А в писалку. Тоесть в сеть или диск

Марк ☢
09.08.2017
19:15:16
ты удивишься
Подробнее

Sergey
09.08.2017
19:15:54
неважно куда он упрется, на самом деле. вопрос в том что он может не уметь читать настолько быстро, насколько тебе надо в эти пять секунд писать.

он просто не станет читать сокет, потому что в этот момент он, сука, рестартнулся и порвал коннект.

Sergey
09.08.2017
19:16:25
в нем - да. но это его буфер.

Google
Sergey
09.08.2017
19:16:36
Это аварийная ситуация
поднимем ручки и заплачем.

Марк ☢
09.08.2017
19:16:47
А вдруг кернел паник ?

А вдруг бед сектор ? Оом ?

Sergey
09.08.2017
19:16:57
одно из хороших правил при программировании - с той стороны сокета вам вообще никто ничего не должен :)

Марк ☢
09.08.2017
19:17:00
Метеорит ?

Но кагбе при писании на диск тебе тоже не очень то и много должны

Sergey
09.08.2017
19:18:23
Но кагбе при писании на диск тебе тоже не очень то и много должны
диск во всяком случае не рестартуется в процессе. и когда диск становится недоступен на запись - это ситуация уровня кернел-паник. а закрытый TCP-сокет или моргнувшая сеть - абсолютно штатная.

Sergey
09.08.2017
19:19:13
А диск имеет свойство внезапно притормаживать
реже фсинкай и не дрочи свой сеф.

Марк ☢
09.08.2017
19:19:21
И врайты зависнут. И их даже евентлупом не обработать. Ток в тхреаде

Марк ☢
09.08.2017
19:19:43
В итоге пиздец сложнейший код пологированию

Sergey
09.08.2017
19:19:52
И врайты зависнут. И их даже евентлупом не обработать. Ток в тхреаде
а то. впрочем, писать логи в отдельном треде - это вообще гудпрактис

Марк ☢
09.08.2017
19:19:53
В каждом приложении

Sergey
09.08.2017
19:20:11
правда мы щас дойдем до буферизации сообщений между тредами и на запись

:)

как хорошо что я девопс и не занимаюсь ничем этим, а просто жму кнопочку "build & deploy & make zbs" :)

Михаил
09.08.2017
19:34:10
На таких объемах можно других китайцев прогнуть. aic например

kevit
09.08.2017
19:50:26
Дело в том что логи не нужны

Google
kevit
09.08.2017
19:51:29
Они нужны только когда что-то сломалось, что решается трейсингом.

Vladimir
09.08.2017
19:52:10
A lex
09.08.2017
21:08:35
q

Vitaliy
09.08.2017
21:39:06
да, да. кафка тоже теряет сообщения.
зависит от настроек. вообще не должна, если правильно кластер приготовить

Admin
ERROR: S client not available

Vitaliy
09.08.2017
21:40:14
Надо гарантию — кластер рэбита и так далее
вот реббит точно гарантирует только потерю данных на не-мастере при split brain

и вообще никакой консистентности не обещает

Dmitrii
09.08.2017
21:41:27
А кто тебе будет гарантировать такое в таких условиях?

Vitaliy
09.08.2017
21:45:39
A lex
09.08.2017
21:45:41
русько-склавенский врач гарантирует

Viktor
09.08.2017
21:46:45
да, да. кафка тоже теряет сообщения.
С дефолтными настройками - точно теряет )

Dmitrii
09.08.2017
21:46:46
И где в zookeeper очереди или стримы?

Я просто не очень понял почему ты сейчас zookeeper привел в пример )

Vitaliy
09.08.2017
21:49:10
Я просто не очень понял почему ты сейчас zookeeper привел в пример )
заведи в zookeeper очередь — будет очередь. я делал, работала надёжно и быстро.

Dmitrii
09.08.2017
21:50:04
А топики? А фанауты? А раутинг из коробки?

Какой смысл сравнивать несравнимое, я об этом.

Vitaliy
09.08.2017
21:51:43
вы дрочите на то, что легко делается в приложении

Dmitrii
09.08.2017
21:53:58
Уже бегу тратить время на то, что можно взять и использовать

Куча middleware демонов которые перегребают из одной очереди/топика в другой — вот еще мне этого не хватало. Особенно в наших масштабах

Google
Vitaliy
09.08.2017
21:55:04
да бог с вами, используйте что хотите. просто не говорите, что остальные решения так же бодро теряют данные, как и ваше

Pavel
09.08.2017
22:28:50
Я вот думаю что если взять 5 самых умных девопсов, и закрыть их вместе в офисе на пару месяцев...

... то придя туда через 2 месяца, нет, вы не найдете идеально работающую инфраструктуру. Вы найдете 5 мертвых девопсов, перегрызших друг другу глотки. А на серверах установленные rabbitmq zookeeper elasticsearch docker lxc kubernetes collectd statsd kibana terraform ansible prometheus concourseci postgres kafka mongodb cassandra jenkins bamboo. И все это не работает.

А стены исписаны разными требованиями друг к другу, к бизнесу и от бизнеса.

Dmitrii
09.08.2017
22:36:31
Ты имеешь ввиду, что она будет выглядеть как типичный берлинский клуб? http://varlamov.me/img/ger_berlin/28.jpg ?

Let Eat
10.08.2017
06:48:00
Какая разница чья задача есть throughput в итоге такой что все пиздой накрывается?
мы тут от одних перцев вообще логи запросов включить заставить не можем :) говорят тормозят, так и сидим в тишине :)))

так он не падает. она просто проебывает маленькую порцию сообщений. молча.
занятно. там в протоколе есть ack от сервера, если его запросить, с ним тоже терялось??

kevit
10.08.2017
06:57:36
Да ладно, сколько процентов логов читается?)

Let Eat
10.08.2017
06:58:00
ротация необязательна даже, во многих кейсах можно тупо транкейтить файлы (если объемы единичных write'ов невелики)
как truncate без потерь сделать? там же гонка между последним чтением, записью от приложения и truncate

Sergey
10.08.2017
07:35:26
Let Eat
10.08.2017
09:56:52
хм. воистину, раздуплил, транкейт неатомарен. был неправ.
есть FALLOC_FL_COLLAPSE_RANGE, но я не думаю, что где-нибудь это используется :) к тому же оно на практике реализовано через обязательный fsync внутрях

Phil
10.08.2017
11:08:27
Кто есть дока по убунте 16.04 - там в инсталяшке можно thin lvm thinpool and mirror сразу сделать, или надо в консоль и... и RAID1 не понимает GRUB...

Phil
10.08.2017
11:13:02
А с рейдом чего делать? Я хочу, а... а вот этот простой mirror я даже по доке е понял зачем существует

Страница 354 из 999