Sergei
Коллеги, привет. Сейчас будет длиннопост. Нужна помощь. Если не по адресу, подскажите ресурс, куда лучше обратиться? Желательно на Русском, т.к. на Английсом так подробно расписать не смогу. В ЦЕФе и даже в Линуксе новичок. Начинал с десяток лет назад вообще с FreeBSD, но успел многое позабыть. Появилась задача запустить ЦЕФ. Пришлось вспоминать и разбираться. Получилось. Имеется: - 14 узлов хранения. В каждом 36x HDD 6Tb для хранения данных. 2x SSD 80Gb под систему. 2x NVME SSD 800Gb под журналы. Памяти в каждом узле 128Gb. 4 сетевых интерфейса 10G. CPU 2x E5-2630v3. В сумме на кластер получается 504 OSD - 3 узла монитора. Под систему 2x SSD 80Gb. Памяти 64Gb. Сеть 2x 10G Взял релиз Jewel. CentOS 7. Документация: http://docs.ceph.com/ и http://onreader.mdl.ru/CephCookbook/content/index.html Всё установилось и заработало. Единственный пул. Емкость кластера 1.5Пб при коэффициенте репликации 2. Размер журнала для каждого OSD примерно 40Gb (просто тупо разделил доступное пространство на NVME SSD поровну между всеми OSD). Разделены между собой public и cluster сети. osd pool default pg num = 32768 (считал pg num по статье на docs.ceph.com, но в этом вопросе до сих пор плаваю). Но в итоге при любой необходимости ребалансировки кластера, он помирает. В первый раз необходимость ребалансировки возникла после изменения CRUSH MAP - распределил узлы хранения по серверным шкафам. Во второй раз понадобилось перезагрузить один из узлов хранения с целью понять, какой из HDD вышел из строя (физически). В итоге тоже пошла ребалансировка. В обоих случаях результат ребалансировки таков: падает примерно половина всех OSD служб. Остаются в работе от 200 до 300 OSD, равномерно по всем узлам хранения. Кластер в статусе HEALTH_ERR. При попытке вручную запускать OSD, они либо не запускаются, либо запускаются, но при этом падают соседние. Больше 300 OSD запустить не удалось - в процессе recovery они снова падают. Это всё при том, что кластер практически пустой - успели залить в него примерно 20Gb тестовых данных. В продуктив ещё не выпускали. После первого случая вернул кластер к работе удалив единственный существующий пул с данными. После этого все OSD поднялись с пол пинка. Во второй раз удалять данные не стал. Т.к. надо разобраться, что не так, и как это побороть. В данном канале нашел, что причина может быть в том, что кончается память - OOM. Помогите советом, что надо переконфигурировать в кластере, чтоб такого не возникало? Очень хочется уже перейти к тестированию производительности, но не могу. Всем заранее спасибо.
сначала стоит убедиться, что оом. вызовы оома видны в dmesg и /var/log/messages
Pavel
Естественно блин он релевантна!
Брандашмыг
Или вы предлагаете без полного ориентирования в теме оценивать релевантность
Sergei
Или вы предлагаете без полного ориентирования в теме оценивать релевантность
чтобы перестать быть не полностью ориентированным, нужно разок игрушечный кластер строго по документации попробовать наваять
Брандашмыг
Естественно блин он релевантна!
С чего бы это? Вы еще и надеетесь, что документация это решение всех проблем?
Брандашмыг
Ха-ха
Брандашмыг
Видимо канал можно сразу вот так взять и закрыть, ведь все есть в доке
Pavel
Видимо канал можно сразу вот так взять и закрыть, ведь все есть в доке
Вам уже дали ссылку прямую, но видимо вам интересней скандалить
Alexey Tselitan UTC+7
О, вы все таки добрались до этого чата?) В логах OSD что?
Михаил, привет. Предлагаю общаться на "ты". Коллеги как никак). Да добрался. Спасибо. Пока служба OSD лежит, в ее лог естественно ничего не пишется. Когда запущена, пишется, но детально еще не изучал, визуально вроде не сильно отличается от лога нормально работающего кластера. Какой еще лог посмотреть, чтоб понять, что творится с узлом в целом?
Брандашмыг
Жаль, что вы стороннюю оценку себя воспринимаете, как желание поскандалить, видимо чем-то обидел вас. Считаю вопрос исчерпаным.
Etki
Ну если человек не может ввести "ceph journal size", то кто ему доктор
у меня есть ощущение, что когда потом тот же человек придет с "ребят, у меня кластер упал, я его настроил с помощью ГСЧ и удачи", ответом здесь ему будет то же самое
Михаил
Alexey Tselitan UTC+7
Если по мануалу - то на ноде хранения должно быть > 216гб памяти 🤔
Прошу прощения. Памяти в узле хранения 216Gb. https://www.supermicro.com/solutions/storage_ceph.cfm Пошел читать логи.
Sergey
Коллеги, привет. Сейчас будет длиннопост. Нужна помощь. Если не по адресу, подскажите ресурс, куда лучше обратиться? Желательно на Русском, т.к. на Английсом так подробно расписать не смогу. В ЦЕФе и даже в Линуксе новичок. Начинал с десяток лет назад вообще с FreeBSD, но успел многое позабыть. Появилась задача запустить ЦЕФ. Пришлось вспоминать и разбираться. Получилось. Имеется: - 14 узлов хранения. В каждом 36x HDD 6Tb для хранения данных. 2x SSD 80Gb под систему. 2x NVME SSD 800Gb под журналы. Памяти в каждом узле 128Gb. 4 сетевых интерфейса 10G. CPU 2x E5-2630v3. В сумме на кластер получается 504 OSD - 3 узла монитора. Под систему 2x SSD 80Gb. Памяти 64Gb. Сеть 2x 10G Взял релиз Jewel. CentOS 7. Документация: http://docs.ceph.com/ и http://onreader.mdl.ru/CephCookbook/content/index.html Всё установилось и заработало. Единственный пул. Емкость кластера 1.5Пб при коэффициенте репликации 2. Размер журнала для каждого OSD примерно 40Gb (просто тупо разделил доступное пространство на NVME SSD поровну между всеми OSD). Разделены между собой public и cluster сети. osd pool default pg num = 32768 (считал pg num по статье на docs.ceph.com, но в этом вопросе до сих пор плаваю). Но в итоге при любой необходимости ребалансировки кластера, он помирает. В первый раз необходимость ребалансировки возникла после изменения CRUSH MAP - распределил узлы хранения по серверным шкафам. Во второй раз понадобилось перезагрузить один из узлов хранения с целью понять, какой из HDD вышел из строя (физически). В итоге тоже пошла ребалансировка. В обоих случаях результат ребалансировки таков: падает примерно половина всех OSD служб. Остаются в работе от 200 до 300 OSD, равномерно по всем узлам хранения. Кластер в статусе HEALTH_ERR. При попытке вручную запускать OSD, они либо не запускаются, либо запускаются, но при этом падают соседние. Больше 300 OSD запустить не удалось - в процессе recovery они снова падают. Это всё при том, что кластер практически пустой - успели залить в него примерно 20Gb тестовых данных. В продуктив ещё не выпускали. После первого случая вернул кластер к работе удалив единственный существующий пул с данными. После этого все OSD поднялись с пол пинка. Во второй раз удалять данные не стал. Т.к. надо разобраться, что не так, и как это побороть. В данном канале нашел, что причина может быть в том, что кончается память - OOM. Помогите советом, что надо переконфигурировать в кластере, чтоб такого не возникало? Очень хочется уже перейти к тестированию производительности, но не могу. Всем заранее спасибо.
Я буду настаивать на своем и в твоем случае, больше повторять не буду, сделай эурнал 2Гб и скорее всего поможет
Sergey
Делай так (правда это от старой версии) Ceph osd out 1 Stop ceph-osd id=1 echo -n >/var/lib/ceph/osd/ceph-1/journal
Sergey
Ceph-osd -i 1 --flush-journal
Sergey
Ceph-osd -i 1 --mkjournal
Sergey
Дальше стартуешь ее и делаешь noout
Sergey
Проверь размер после обязательно
Alexey Tselitan UTC+7
Спасибо, завтра буду пробовать.
Sergey
Для каждого
Sergey
Отпишись обязательно, команды перепроверяй в ceph.doc мы очень давно вшли от больших журналов
Sergey
И перекрестились
Alexey Tselitan UTC+7
Сергей, спасибо. Очень здорово, когда можно у кого-то опыт перенять. :) Мне пришлось с нуля самому. Теперь расхлебываю.
Sergey
На SAS это смешно - большие журналы. Тем более без связки с Min max flush interval
Alexey Tselitan UTC+7
журналы у меня на nvme ssd
Sergey
Сначала давай вылечим. Ну а они начнут сами же потом сливать на медленные диски
Alexey Tselitan UTC+7
ну да
Sergey
Ну вот и поэтому падают, бедняжки, из-за такой разницы скоростей in out и кэширования очень многих данных )
Sergey
Ну и сам подумай, что случится, если питание или ошибка
Sergey
У нас иногда по 5-7 минут на SAS дописывалось, никому это не нужно
Sergey
Ну и можно взять конфиг по проще, если что крутить в нем начал.
Alexey Tselitan UTC+7
Блин. А всё-таки памяти 128Gb на узле хранения, как я и написал изначально. Очень интересно. Завтра буду выяснять у поствавщика, что они нам привезли, т.к. по спецификации СуперМикро дложно быть 216Gb. Короче, возможно, крепко попали мы..
Mike
Да и 256 мало может быть
Alexey Tselitan UTC+7
Хотя нет, наврал. 216 это Tb - общий объем емкости на одном узле хранения. Не так прочитал. В общем буду разбираться.
Ilia
1к4 же общее правило?
Mike
Надо хотя бы 256. При перебалансировке может понадобится больше. Идете по пути Dreamhost-a
Sergey
Ну а вообще, есть очень классная статья, как защититься от OOM, но я правда не думаю, что причина - 128Гб RAM, это более чем для ceph
タキ
а все, разобрался, диск с журналами помирает.
Alexey Tselitan UTC+7
Сергей, есть ссылка на статью? Если заврта найду OOM, будет очень интересно почитать.
Mike
Так же сеть надо оптимизировать при таком большом количестве osd
Mike
Журналы то работают хорошо?
Sergey
Все может быть, нужно разбираться, что причина, а что следствие. На эту тему тоже есть что почитать - скиньте мне ваши e-mail, вечером вышлю, с тел неудобно
Alexey Tselitan UTC+7
Так же сеть надо оптимизировать при таком большом количестве osd
С сетью отдельный вопрос. Являясь по сути Windows админом пришлось разбираться как в Linux, так и в сетях. Сеть настроил по наитию. Для каждой сети Ceph (custer и public - в разных вланах) объединил в LAG по два интерфейса, получив в сумме по 20Gbit на сеть. Jumbo frames в наличии. Со стороны всё работает нормально. Естественно, нужен сетевик, чтобы провести ревизию. Скоро будет в штате, поручим ему это. Как проверить качество работы журналов?
🅅aleriy
на всякий случай - девчонки с праздником :)))
Sergey
Blog.disksurvey.org - про taking too long. И тп
Vlad
Коллеги, привет. Сейчас будет длиннопост. Нужна помощь. Если не по адресу, подскажите ресурс, куда лучше обратиться? Желательно на Русском, т.к. на Английсом так подробно расписать не смогу. В ЦЕФе и даже в Линуксе новичок. Начинал с десяток лет назад вообще с FreeBSD, но успел многое позабыть. Появилась задача запустить ЦЕФ. Пришлось вспоминать и разбираться. Получилось. Имеется: - 14 узлов хранения. В каждом 36x HDD 6Tb для хранения данных. 2x SSD 80Gb под систему. 2x NVME SSD 800Gb под журналы. Памяти в каждом узле 128Gb. 4 сетевых интерфейса 10G. CPU 2x E5-2630v3. В сумме на кластер получается 504 OSD - 3 узла монитора. Под систему 2x SSD 80Gb. Памяти 64Gb. Сеть 2x 10G Взял релиз Jewel. CentOS 7. Документация: http://docs.ceph.com/ и http://onreader.mdl.ru/CephCookbook/content/index.html Всё установилось и заработало. Единственный пул. Емкость кластера 1.5Пб при коэффициенте репликации 2. Размер журнала для каждого OSD примерно 40Gb (просто тупо разделил доступное пространство на NVME SSD поровну между всеми OSD). Разделены между собой public и cluster сети. osd pool default pg num = 32768 (считал pg num по статье на docs.ceph.com, но в этом вопросе до сих пор плаваю). Но в итоге при любой необходимости ребалансировки кластера, он помирает. В первый раз необходимость ребалансировки возникла после изменения CRUSH MAP - распределил узлы хранения по серверным шкафам. Во второй раз понадобилось перезагрузить один из узлов хранения с целью понять, какой из HDD вышел из строя (физически). В итоге тоже пошла ребалансировка. В обоих случаях результат ребалансировки таков: падает примерно половина всех OSD служб. Остаются в работе от 200 до 300 OSD, равномерно по всем узлам хранения. Кластер в статусе HEALTH_ERR. При попытке вручную запускать OSD, они либо не запускаются, либо запускаются, но при этом падают соседние. Больше 300 OSD запустить не удалось - в процессе recovery они снова падают. Это всё при том, что кластер практически пустой - успели залить в него примерно 20Gb тестовых данных. В продуктив ещё не выпускали. После первого случая вернул кластер к работе удалив единственный существующий пул с данными. После этого все OSD поднялись с пол пинка. Во второй раз удалять данные не стал. Т.к. надо разобраться, что не так, и как это побороть. В данном канале нашел, что причина может быть в том, что кончается память - OOM. Помогите советом, что надо переконфигурировать в кластере, чтоб такого не возникало? Очень хочется уже перейти к тестированию производительности, но не могу. Всем заранее спасибо.
коэффициент репликации 2 плохая мысль. Есть неиллюзорная вероятность потерять данные.
Alexey Tselitan UTC+7
Mike
Планируем в продуктиве сделать 3. В тесте пока так.
А для каких задач и нагрузок создавался кластер?
Михаил
Коллеги, привет. Сейчас будет длиннопост. Нужна помощь. Если не по адресу, подскажите ресурс, куда лучше обратиться? Желательно на Русском, т.к. на Английсом так подробно расписать не смогу. В ЦЕФе и даже в Линуксе новичок. Начинал с десяток лет назад вообще с FreeBSD, но успел многое позабыть. Появилась задача запустить ЦЕФ. Пришлось вспоминать и разбираться. Получилось. Имеется: - 14 узлов хранения. В каждом 36x HDD 6Tb для хранения данных. 2x SSD 80Gb под систему. 2x NVME SSD 800Gb под журналы. Памяти в каждом узле 128Gb. 4 сетевых интерфейса 10G. CPU 2x E5-2630v3. В сумме на кластер получается 504 OSD - 3 узла монитора. Под систему 2x SSD 80Gb. Памяти 64Gb. Сеть 2x 10G Взял релиз Jewel. CentOS 7. Документация: http://docs.ceph.com/ и http://onreader.mdl.ru/CephCookbook/content/index.html Всё установилось и заработало. Единственный пул. Емкость кластера 1.5Пб при коэффициенте репликации 2. Размер журнала для каждого OSD примерно 40Gb (просто тупо разделил доступное пространство на NVME SSD поровну между всеми OSD). Разделены между собой public и cluster сети. osd pool default pg num = 32768 (считал pg num по статье на docs.ceph.com, но в этом вопросе до сих пор плаваю). Но в итоге при любой необходимости ребалансировки кластера, он помирает. В первый раз необходимость ребалансировки возникла после изменения CRUSH MAP - распределил узлы хранения по серверным шкафам. Во второй раз понадобилось перезагрузить один из узлов хранения с целью понять, какой из HDD вышел из строя (физически). В итоге тоже пошла ребалансировка. В обоих случаях результат ребалансировки таков: падает примерно половина всех OSD служб. Остаются в работе от 200 до 300 OSD, равномерно по всем узлам хранения. Кластер в статусе HEALTH_ERR. При попытке вручную запускать OSD, они либо не запускаются, либо запускаются, но при этом падают соседние. Больше 300 OSD запустить не удалось - в процессе recovery они снова падают. Это всё при том, что кластер практически пустой - успели залить в него примерно 20Gb тестовых данных. В продуктив ещё не выпускали. После первого случая вернул кластер к работе удалив единственный существующий пул с данными. После этого все OSD поднялись с пол пинка. Во второй раз удалять данные не стал. Т.к. надо разобраться, что не так, и как это побороть. В данном канале нашел, что причина может быть в том, что кончается память - OOM. Помогите советом, что надо переконфигурировать в кластере, чтоб такого не возникало? Очень хочется уже перейти к тестированию производительности, но не могу. Всем заранее спасибо.
А еще можно мониторов добавить
Alexey Tselitan UTC+7
А для каких задач и нагрузок создавался кластер?
Задача специфическая. Ceph задумывался как медленное хранилище "холодных" данных. Самое интересное в том, что это хранилище должно подлючаться к VMWare 😱. Начинал это дело проектировать мой коллега, который до конца не допроектировав перешел работать в другое место в тот самый момент, когда оборудование уже оплатили и почти привезли. Всё оборудование "досталось" мне. Из коллеги удалось выудить информацию, что прослойкой между Ceph и VMWare планировался NFS. Т.е. сначала на Ceph-клиентах маппится блочное устройство Ceph, а затем отдается в VMWare как NFS шара (в качестве датастора или напрямую в виртуальную машину). Реализацию этого решения у коллеги выудить не удалось, по этому пришлось самому разбираться. В итоге родился "An active/passive NFS Server in a Red Hat High Availability Cluster" (на отдельных машинах от OSD и MON). Не знаю на сколько это оптимально, но работает. Если кому-то интересно, могу поделиться опытом. В этом же канале прочитал, что есть решение iSCSI, ещё к тому же и active/active. Планирую разбираться в этом вопросе, как только разберусь с текущей проблемой ребалансировки кластера.
Александр
Интересная задачка
Александр
Только зачем vmware не оч понял, на qemu-kvm имхо проще подключить.
Alexey Tselitan UTC+7
Потому что на предприятии используется виртуализация VMWare, а qemu-kvm нет ) Хранилище понадобилось именно для того, чтобы подключать к VMWare
Александр
Я впринципе так и думал. :)
Михаил
Задача специфическая. Ceph задумывался как медленное хранилище "холодных" данных. Самое интересное в том, что это хранилище должно подлючаться к VMWare 😱. Начинал это дело проектировать мой коллега, который до конца не допроектировав перешел работать в другое место в тот самый момент, когда оборудование уже оплатили и почти привезли. Всё оборудование "досталось" мне. Из коллеги удалось выудить информацию, что прослойкой между Ceph и VMWare планировался NFS. Т.е. сначала на Ceph-клиентах маппится блочное устройство Ceph, а затем отдается в VMWare как NFS шара (в качестве датастора или напрямую в виртуальную машину). Реализацию этого решения у коллеги выудить не удалось, по этому пришлось самому разбираться. В итоге родился "An active/passive NFS Server in a Red Hat High Availability Cluster" (на отдельных машинах от OSD и MON). Не знаю на сколько это оптимально, но работает. Если кому-то интересно, могу поделиться опытом. В этом же канале прочитал, что есть решение iSCSI, ещё к тому же и active/active. Планирую разбираться в этом вопросе, как только разберусь с текущей проблемой ребалансировки кластера.
Ага, а потом: так, у нас кончился горячий сторадж, давайте на цеф. Что значит медленно будет? Вы же умные, придумайте что нибудь!
Mike
Только зачем vmware не оч понял, на qemu-kvm имхо проще подключить.
Потому, что люди уже используют VMware, а на остальной правильный обвес для VMware денег уже не хватило.
Брандашмыг
Задача специфическая. Ceph задумывался как медленное хранилище "холодных" данных. Самое интересное в том, что это хранилище должно подлючаться к VMWare 😱. Начинал это дело проектировать мой коллега, который до конца не допроектировав перешел работать в другое место в тот самый момент, когда оборудование уже оплатили и почти привезли. Всё оборудование "досталось" мне. Из коллеги удалось выудить информацию, что прослойкой между Ceph и VMWare планировался NFS. Т.е. сначала на Ceph-клиентах маппится блочное устройство Ceph, а затем отдается в VMWare как NFS шара (в качестве датастора или напрямую в виртуальную машину). Реализацию этого решения у коллеги выудить не удалось, по этому пришлось самому разбираться. В итоге родился "An active/passive NFS Server in a Red Hat High Availability Cluster" (на отдельных машинах от OSD и MON). Не знаю на сколько это оптимально, но работает. Если кому-то интересно, могу поделиться опытом. В этом же канале прочитал, что есть решение iSCSI, ещё к тому же и active/active. Планирую разбираться в этом вопросе, как только разберусь с текущей проблемой ребалансировки кластера.
А почему не vsan?
Михаил
Денег стоит
Михаил
https://about.gitlab.com/2017/03/02/why-we-are-not-leaving-the-cloud/
Михаил
Много воды и мало фактов. Как обычно
Mikhail
Задача специфическая. Ceph задумывался как медленное хранилище "холодных" данных. Самое интересное в том, что это хранилище должно подлючаться к VMWare 😱. Начинал это дело проектировать мой коллега, который до конца не допроектировав перешел работать в другое место в тот самый момент, когда оборудование уже оплатили и почти привезли. Всё оборудование "досталось" мне. Из коллеги удалось выудить информацию, что прослойкой между Ceph и VMWare планировался NFS. Т.е. сначала на Ceph-клиентах маппится блочное устройство Ceph, а затем отдается в VMWare как NFS шара (в качестве датастора или напрямую в виртуальную машину). Реализацию этого решения у коллеги выудить не удалось, по этому пришлось самому разбираться. В итоге родился "An active/passive NFS Server in a Red Hat High Availability Cluster" (на отдельных машинах от OSD и MON). Не знаю на сколько это оптимально, но работает. Если кому-то интересно, могу поделиться опытом. В этом же канале прочитал, что есть решение iSCSI, ещё к тому же и active/active. Планирую разбираться в этом вопросе, как только разберусь с текущей проблемой ребалансировки кластера.
по поводу iscsi хочу предупредить что с цефом через LIO ESXi не очень дружит, после лага со стороны хранилища ESXi впадал в коматозное состояние
Mikhail
Прикольно, давно тестили?
совсем недавно, у меня конечно довольно лагающий цеф кластер, но впадающий от этого в коматозное состояние гипервизор как-то не очень выглядит ESXi 5.5
Михаил
Хотя с другой стороны есть вопрос: а чего они не могут из суси нормально бекпортнуть?! Оно же там стейбл (цеф+айскази)
Брандашмыг
Денег стоит
Ну если вмвару купили, то чо нет. А если не купили, то тоже а чо нет?
Брандашмыг
Брандашмыг
Брандашмыг
1С:Файловое хранилище
Anonymous
инсайд: 1с не разрабатывает такое, у Астры есть шанс =)