Sergey
16.01.2017
20:39:31
я от балды размер сказал, если чо
Марк ☢
16.01.2017
20:39:31
10К нодов это не космически много (наверно)
Sergey
16.01.2017
20:39:38
Марк ☢
16.01.2017
20:39:48
ну так а размер осдмапа зависит же от числа нодов
Google
Марк ☢
16.01.2017
20:39:56
он же местоположение обжекта ВЫЧИСЛЯЕТ а не хранит
или я протупил ?
Sergey
16.01.2017
20:40:44
скажем так, если бы я имел задачу построить кластер под что-то наподобие региона в aws, скорее всего, я бы имел кластера фиксированного среднего размера с асинхронной реплиацией в соседнюю зону отказоустойчивости.
объекта - да, вычисляет.
а сам osdmap - хранит и постоянно обновляет.
Марк ☢
16.01.2017
20:41:31
Sergey
16.01.2017
20:41:35
ой, я имел в виду pgmap.
Марк ☢
16.01.2017
20:42:27
легче не стало
Sergey
16.01.2017
20:48:58
насколько я понимаю, каждый osd репортит монам о состоянии pg, которые сейчас на нем живут.
это происходит с определенным интервалом (на моем кластере - ровно каждую секунду), не уверен, что он конфигурируемый. информация о каждой pg, ее статусе, местоположении и т.п. - стекается на мониторы. все мониторы имеют общий paxos-кворум и полностью копируют эту информацию друг между другом.
соответственно, чем больше у нас pg в кластере, тем больше информации в единицу времени приходит на монитор. в определенный момент нам потребуется шардить мониторы. и что-то мне подсказывает, что произойдет это в районе нескольких десятков или сотен тысяч сообщений в секунду (потому что для обработки миллионов сообщений в секунду на одном сервере нужно уже очень сильно возиться).
в определенный момент в нашем сторадже, когда мы стали слишком жирными, нам пришлось организовать шардирование аналогов мониторов.
Марк ☢
16.01.2017
20:50:31
А зачем мониторам знать где какая пг ?
прост я не очень понял как это всё работает. только часть понял и то не факт что правильно. где б почитать
Sergey
16.01.2017
20:53:12
Each map maintains an iterative history of its operating state changes. Ceph Monitors maintain a master copy of the cluster map including the cluster members, state, changes, and the overall health of the Ceph Storage Cluster.
Google
Sergey
16.01.2017
20:53:16
http://docs.ceph.com/docs/master/architecture/#cluster-map
Марк ☢
16.01.2017
20:55:45
Sergey
16.01.2017
20:56:34
был у меня кластер.
был в нем CRUSH, обычный, плоский.
было в кластере около сотни osd.
я очень сильно изменил CRUSH (долго объяснять куда и как, да и я не помню уже).
85% данных потребовалось перебалансить.
кластер нашел все нужные данные.
у меня были высокие цифры tries и ceph нашел _все_ данные, даже учитывая что они лежали совсем не там, где должны были лежать в первые несколько попыток.
Марк ☢
16.01.2017
20:58:42
Sergey
16.01.2017
20:58:58
Марк ☢
16.01.2017
20:59:03
ну
Sergey
16.01.2017
20:59:13
если первый хост, который был выбран, в дауне, то будет выбран четвертый.
второй станет первым, а третий - вторым
и т.д.
Марк ☢
16.01.2017
20:59:23
ээээ
Sergey
16.01.2017
20:59:25
этот процесс может продолжаться tries раз.
Марк ☢
16.01.2017
20:59:37
не понятно
Sergey
16.01.2017
20:59:54
я даже не уверен, что это правильно, но это согласуется с поведением, которое я наблюдал.
Марк ☢
16.01.2017
21:00:04
чтение или запись?
или оба?
Sergey
16.01.2017
21:00:27
а это неважно. тебе надо найти osd, на котором эта PG acting
Google
Sergey
16.01.2017
21:00:37
работает-то всегда только одна osd.
и вот ты получил из CRUSH первый osd. идешь в osdmap, а там говно - osd в ауте.
поэтому получаешь второй - идешь в osdmap, а оно снова в ауте.
Марк ☢
16.01.2017
21:01:17
так вот я понял что триес — это он такой по крушмапу почитал, обратился, а там хуй. он опять скачал мап, опять посчитал и так далее. не так ?
о, точно
а таймаут какой между попытками ?
Sergey
16.01.2017
21:02:06
или говорит "нет у меня этой PG, нахуй иди" (насколько я понимаю, это как раз о misplaced, и информация о том, что PG misplaced берется из сравнения текущей osdmap, crushmap и pgmap)
Марк ☢
16.01.2017
21:02:33
Sergey
16.01.2017
21:02:49
Марк ☢
16.01.2017
21:03:05
это я успел понять :)
Sergey
16.01.2017
21:03:18
но вот поменял ты crushmap, а PG сразу не переехала на новое место туда, где она должна жить.
и информация о том, где эта PG щас живет хранится в pgmap.
Марк ☢
16.01.2017
21:03:31
а нахера она там хранится
там же пинцет сколько записей
Sergey
16.01.2017
21:03:48
чтобы эта PG была доступна, даже если лежит не там, где ей положено лежать по CRUSH
Марк ☢
16.01.2017
21:04:01
должно быть. а нахуа если все выяисляемо (кроме момента перестройки)
Sergey
16.01.2017
21:04:02
потому что иначе ты меняешь CRUSH - и пиздык твоим данным
:)
потому что они есть, но кластер больше не знает, где.
Марк ☢
16.01.2017
21:04:12
ну не пиздык же а временные затык
Sergey
16.01.2017
21:04:15
НЕТ
Google
Sergey
16.01.2017
21:04:17
не временный
если оно полностью вычисляемо - то кластер не может вычислить.
Марк ☢
16.01.2017
21:04:26
как нет-то. по крушмапу всегда можно посчитать
Sergey
16.01.2017
21:04:36
только на базе предыдущих состояний osdmap/crushmap
Марк ☢
16.01.2017
21:04:47
а вот это не понятно
Sergey
16.01.2017
21:05:27
ну у тебя раньше краш показывал "пиздуй в стойку 5, возьми оттуда три любых хоста"
а щас ты поправил краш и он стал показывать "пиздуй в зал 7, возьми три любых стойки и возьми из каждой стойки по одному хосту".
чтобы кластер смог отмигрировать данные он должен знать, где эти данные были и есть.
где они должны быть - можно посчитать.
но где они были и есть - хуюшки, нужно знать.
http://lists.ceph.com/pipermail/ceph-users-ceph.com/2014-April/039339.html - тут вот говорят, что osd репортят о том, какие pg на них есть и какое у них состояние.
Марк ☢
16.01.2017
21:09:31
пг тоесть
Sergey
16.01.2017
21:09:40
да, опечатка.
так. с вами очень интересно, но у меня есть незаконченное дельце с кроватью и подушкой.
Марк ☢
16.01.2017
21:10:57
а то докладов до ебени матери с той ебучей картинкой про то как либы ссылаются друг на друга
баяны перебояны
Sergey
16.01.2017
21:11:22
я долбоеб и на самом деле в сеф не особо умею.
Марк ☢
16.01.2017
21:11:22
а как вовнутрях работает — нихера нет
Sergey
16.01.2017
21:11:44
у меня был небольшой кластер, и многие мои представления крайне интуитивны и далеки от истины.
Миша и ребята шарят намного больше.
Марк ☢
16.01.2017
21:11:46
поэтмоу мне пиздец интересно послушать
Google
Sergey
16.01.2017
21:12:43
они обещали устроить митап или что-то такое
уже с полгода обещают :)))
Марк ☢
16.01.2017
21:13:16
митап - это в нерезиновой поди ?
Sergey
16.01.2017
21:13:26
Марк ☢
16.01.2017
21:13:34
да блин.
Kirill
16.01.2017
21:15:47
Когда и где ?)
Я схожу
Sergey
16.01.2017
21:16:01
пацаны, извините, я вас спалил :(
Each cluster has 54 of these nodes for a total capacity of 3.2 PB. To scale out the service, Yahoo replicates these pods and uses a hashing algorithm to break the unstructured data across the pods and across the nodes using erasure coding.
Марк ☢
16.01.2017
21:26:12
Sergey
16.01.2017
21:26:23
Йеп
Sheridan
16.01.2017
21:26:39
Цэф цэфов собрать? :)
Sergey
16.01.2017
21:27:06
Оно для объектного уровня только сработает нормально
Марк ☢
16.01.2017
21:27:23
In a blog post that discussed Yahoo’s move from MObStor to Ceph for its Flickr photo-sharing service, the company said that it have over 250 billion objects and around 500 PB of photos, videos, emails, and blog posts that it stores for its users, and that this object storage is growing at 20 percent to 25 percent annually.
в рот мне ноги. я б очканул нахер
это же ёбаный насос сколько данных
у наебнуть их проще простого
а забекапить нельзя
Sheridan
16.01.2017
21:28:23
Прикольно, яб там пожил
Марк ☢
16.01.2017
21:28:41
Sheridan
16.01.2017
21:29:21