@kubernetes_ru

Страница 133 из 958
Artem
03.03.2017
08:03:27
ну вот записали вы в osd и он тут же отвалился

Sergey
03.03.2017
08:03:33
ну норм. у меня еще есть.

Artem
03.03.2017
08:06:10
не факт что они консистентны

Sergey
03.03.2017
08:06:44
не факт что они консистентны
факт. потому что когда мы пишем на кластер (а не на osd), запись считается произведенной при совершившейся записи на кворум в PG. то есть в случае 3:2 минимум на 2 osd.

Google
Artem
03.03.2017
08:06:44
должны быть некие consistency group с одним и тем же журналом

Artem
03.03.2017
08:08:07
http://tracker.ceph.com/issues/13295 вот типа такого

Sergey
03.03.2017
08:09:36
у вас 3 osd для pg (в pgmap). вы подключаетесь к лидеру. пишете в него объект. он пишет к себе, подключается к двум другим, дожидается ответа хотя бы от одного, отвечает вам "ок". в момент ответа "ок" в кластере есть уже минимум две копии объекта на разных osd. теперь один из osd падает. например, бывший primary. теперь osd обслуживается двумя osd, на одном из них есть актуальный объект, на другом - нет (или есть неактуальный). они сравнивают версии и неактуальный докатывается до актуального. выбирается новый osd для обслуживания этой pg. на нем нет объектов. он копирует их с оставшихся двух osd.

где здесь грязное чтение?

http://tracker.ceph.com/projects/ceph/wiki/Consistency_groups/2

это не для основной функциональности (не для распределенного блокдевайса).

Fike
03.03.2017
08:12:22
хлебом не корми, дай про цеф поговорить :3

Михаил
03.03.2017
08:14:05
Artem
03.03.2017
08:14:08
с точки зрения ceph грязного чтения тут нет. с точки зрения файловой системы поверх тут никак гарантий нет. ибо эти две сущности никак не связаны

Михаил
03.03.2017
08:14:11
Или может я)

Sergey
03.03.2017
08:14:54
с точки зрения ceph грязного чтения тут нет. с точки зрения файловой системы поверх тут никак гарантий нет. ибо эти две сущности никак не связаны
у файловой системы есть свой журнал. блокдевайс под файловой системой ведет себя корректно, грязное чтение не делает, ненастоящую запись не делает, восстановление убитых не делает.

Mikhail
03.03.2017
08:25:05
Всем доброго дня! Коллеги, а есть у кого-то хорошие статьи по возможностям кластеризации мастера? На почитать-поосваивать.

Google
Artem
03.03.2017
08:25:11
ну ок) оставим этот спор для экспериментаторов. по факту никаких гарантий я для себя не вижу. Плюс ещё замаунтится ненароком в несколько мест и точно все.

Sergey
03.03.2017
08:25:57
а если fio randwrite запустить на диск, так вообще! стораджа никуда не годятся по устойчивости к randwrite и dd if=/dev/urandom

Artem
03.03.2017
08:29:20
гладко было на бумаге (с)

а потом 20 человек неделю бд чинят сидят с воплями она же не должна так работать)

Sergey
03.03.2017
08:32:24
а потом 20 человек неделю бд чинят сидят с воплями она же не должна так работать)
возможно что-то не так в консерватории. если вы можете разломать rbd так, что он говорит, что ему хорошо, а на самом деле ему плохо - расскажите как, это интересный опыт.

и нет, кейс "мы вырубили один osd на горячую" к такому не приводит.

Михаил
03.03.2017
08:36:17
мб это как раз кейс "мы дёрнули 2 диска из кластера с двойной репликой" ?)

Artem
03.03.2017
08:42:37
да конечно, прямо на горячую специально обученные мальчики дергали. обычный цеф, 6 дц в разных регионах. интернет штука ненадежная

Перманентно все сломано в разных местах, постоянно сеть флапает, самое время накатить на сетевой рейд файлуху с бд и жить счастливо ;-)

Михаил
03.03.2017
08:49:28
А то что гланды через задницу удалить не удобно это гланды виноваты?

Sergey
03.03.2017
08:50:43
То есть вы гоняете рбд трафик между дц, а виноват в глюках цеф?!
ну справедливости ради, от абстрактного софта в вакууме я ожидаю деградацию и замедление в случае мульти-дц, а не "работать не будет совсем".

Artem
03.03.2017
08:52:21
а кто виноват? это распределенный блок девайс

Sergey
03.03.2017
08:52:40
а кто виноват? это распределенный блок девайс
а вы расскажите таки, как сделать грязное чтение/несовершенную запись?

Artem
03.03.2017
08:52:47
рбд трафик не вагонами же возить

Sergey
03.03.2017
08:53:08
я добивался перехода в ридонли/peering путем внедрения задержек и пакетлосса

но не грязных чтений

Михаил
03.03.2017
08:53:57
ну справедливости ради, от абстрактного софта в вакууме я ожидаю деградацию и замедление в случае мульти-дц, а не "работать не будет совсем".
Срравдливости ради локальная сеть и интернет разные вещи и обеспечение мульти дц отдельный функционал, который обычно отдельно заявлен

Google
Sergey
03.03.2017
08:55:00
Срравдливости ради локальная сеть и интернет разные вещи и обеспечение мульти дц отдельный функционал, который обычно отдельно заявлен
локальная сеть тоже вполне может лоссить. и что называть локальной? :) вся сеть наша. просто до группы хостов пинг 3 мс, а до группы - 120 мкс.

Artem
03.03.2017
08:58:04
я уже не вспомню, но такое точно встречали. эксперименты там закончились все пошло в прод, оставили только radosgw для cdn с картинками

работает ок

бд локально с нативной репликацией

Artem
03.03.2017
09:01:11
поверх фронтендов ipvs

+pyball

фронтенд нджиникс на стероидах с lua

Sergey
03.03.2017
09:02:24
а что за проект, если не секрет?

Artem
03.03.2017
09:02:27
Lua для проверки здоровья бекендов и выставления веса для ipvs

часть работает тут flamp.ru

остальное секрет)

пробовали прямо с фронтенда по офсету писать в rbd (lua) без радосгв. тоже работает но возни много

Sergey
03.03.2017
09:05:59
пробовали прямо с фронтенда по офсету писать в rbd (lua) без радосгв. тоже работает но возни много
а зачем в rbd, кстати? :) если объекты не очень большие, то можно сразу в rados, там тоже есть сдвиги по оффсету.

Artem
03.03.2017
09:06:02
а так посоны кодят сразу и в амазон можно идти если все совсем упало

Sergey
03.03.2017
09:06:06
и работает быстрее по задержке немножко

Artem
03.03.2017
09:06:32
радосгв не очень хорошо работал, году в 2012

Sergey
03.03.2017
09:06:33
правда, это всё же для извращенцев немного

радосгв не очень хорошо работал, году в 2012
не в радосгв, а в радос через librados

там file-like api

Google
Sergey
03.03.2017
09:06:58
http://docs.ceph.com/docs/master/rados/api/python/

Artem
03.03.2017
09:10:08
возня ненужная. можно но зачем)

Sergey
03.03.2017
09:10:41
возня ненужная. можно но зачем)
если вам дороги микросекунды и лень делать другое решение - то rados over ssd вполне шустёр.

хотя aerospike быстрее

Artem
03.03.2017
09:14:25
всё равно все в итоге в другом месте упирается. в бекенд, например. или в сеть

Михаил
03.03.2017
09:17:04
нету пока пока доклада по bluestore с конфы линукс питер(

Vladimir
03.03.2017
16:30:51
Господа, а нет ли простого способа развернуть Ceph в качестве бекенда к PV в самом Kubernetes?

Т.е. что-то вроде этого: https://github.com/ceph/ceph-docker/tree/master/examples/kubernetes но без "WARNING: This example does not survive Kubernetes cluster restart! The Monitors need persistent storage. This is not covered here."

Михаил
03.03.2017
16:57:26
пока извращенцев не было)

однако всё равно остается вопрос, а что же у тебя будет под ногами в качестве дисков?

Vladimir
03.03.2017
17:01:41
А чем диски на хостах плохи для хранения? Или ты не про это?

Михаил
03.03.2017
17:02:06
я про то, что я слабо себе представляю как работает сущность OSD в докере

отдавать ей диск целиком в этот докер? а зачем тогда докер?)

и тут до меня дошло, что можно не отдавать весь диск, а отдать папку, тогда можно ограничить объем и получить отказоустойчивость)

Paul
03.03.2017
17:28:10
в общем-то можно, через маппинг

Vladimir
03.03.2017
17:49:26
Я пытаюсь развернуть Kubernetes в Azure, и есть подозрение, что использовать ажуровские диски для персистентных данных как PV не получится. Для PV остаётся Azure File (который SMB) либо что-то кастомное (Ceph?). Сомневаюсь, что на SMB можно держать хоть какую базу данных.

Я хочу решение для PV, которое позволит перекидывать их между нодами в случае чего. По идее Ceph RBD + ext4, монтируемый эксклюзивно, это то, что может мне подойти.

Собственно, я бы попробовал Ceph, но я с ним никогда не работал, и как-то неохота потратить пару недель чтобы разобраться как его деплоить и поддерживать.

Google
Fike
03.03.2017
17:57:31
Kubernetes supports several types of Volumes: ... azureDisk

это не то что требуется?

Vladimir
03.03.2017
17:58:20
Ага, это оно, но есть ряд ньюансов

Например на небольших виртуалках количетсво дисков, которые можно так подключить сильно ограничено —- всего 2 диска, на минимальной приличной виртуалке (1 ядро, 3.5 ГБ RAM)

Плюс судя по отзывам, azureDisk просто не работает: http://dev.haufe.com/state-of-kubernetes-on-azure/

Paul
03.03.2017
18:06:02
можно цеф в том же ажуре завести

Vladimir
03.03.2017
18:08:01
А без Kubernetes насколько реально не вникая в детали Ceph развернуть его на отдельных машинах, скажем, с убунтой/дебианом?

Я понимаю, что для продакшена с Ceph скорее всего нужна отдельная команда девопсов под него, но на потыкать/примерить, мне бы подошел вариант а-ля apt-get install <ceph> и пошаговой конфигурацией. Можно это как-то без особого геморроя сделать?

Михаил
03.03.2017
18:11:56
Для ceph у нас теперь отдельный канал)

@ceph_ru

@Sn00p мы таки сделали отдельный канал

Artem
03.03.2017
18:13:45
?

Михаил
03.03.2017
18:15:21
?
Будем рады видеть всех любителей ceph

Paul
03.03.2017
18:24:12
Михаил
03.03.2017
18:26:07
вполне реально, я разворачивал. Тут @SinTeZoiD грозился выложить подробный ман.
Ну там общие рекомендации. Будут для тех, кто уже поставил

Но ман похоже надо

Тоже

Vladimir
03.03.2017
20:05:11
@rutsky по поводу персистент дисков в азуре вот issue https://github.com/Azure/acs-engine/issues/258 то есть рекомендуют до версии 1.5.3 обновиться руками. как раз собираюсь попробовать

Страница 133 из 958