Pull to refresh
  • by relevance
  • by date
  • by rating

Замена диска с сохранением правильной нумерации в CEPH

Data recoveryData storage
Sandbox
Предполагается, что в результате этого метода мы сохраняем последовательность, в которой диски выводятся командой ceph osd tree. Если они там по порядку, то это удобнее читается и считается, при необходимости.

Лирическое отступление по теме. Официальный метод замены диска в ceph предполагает удаление всех логических сущностей, связанных с этим диском из кластера с дальнейшим их пере-созднием. В результате чего свеже-созданный osd (при некотором стечении обстоятельств) может сменить свой номер (номер в имени сущности, это который osd.Цифра) и местоположение в crush-мапе и естественно будет выводиться в другом месте в команде ceph osd tree и других. Сменится его порядковый номер.

Идея этого метода заключается в том, что никакие логические сущности мы менять не будем, а просто подсунем новый диск на «старое» место в кластере. Для этого на этом новом диске надо (вос)создать правильные структуры данных: всяческие id, симлинки, ключики.
Читать дальше →
Total votes 13: ↑13 and ↓0 +13
Views2.8K
Comments 5

Почему в Kubernetes так сложно с хранилищами?

Southbridge corporate blogSystem administrationServer AdministrationDevOps
Translation


Когда пришли оркестраторы контейнеров, вроде Kubernetes, подход к разработке и деплою приложений изменился кардинально. Появились микрослужбы, а для разработчика логика приложения больше не связана с инфраструктурой: создавай себе приложения и предлагай новые функции.


Kubernetes абстрагируется от физических компьютеров, которыми управляет. Только скажите ему, сколько надо памяти и вычислительной мощности, — и все получите. Ифраструктура? Не, не слыхали.


Управляя образами Docker, Kubernetes и приложения делает переносимыми. Разработав контейнерные приложения с Kubernetes, их можно деплоить хоть куда: в открытое облако, локально или в гибридную среду, — и при этом не менять код.


Мы любим Kubernetes за масштабируемость, переносимость и управляемость, но вот состояния он не хранит. А ведь у нас почти все приложения stateful, то есть им нужно внешнее хранилище.

Читать дальше →
Total votes 25: ↑22 and ↓3 +19
Views15.1K
Comments 5

Rook или не Rook — вот в чём вопрос

Флант corporate blogSystem administrationData storageDevOpsKubernetes


В начале этого месяца, 3 мая, был анонсирован крупный релиз «системы управления для распределённых хранилищ данных в Kubernetes» — Rook 1.0.0. Более года назад мы уже публиковали общий обзор Rook. Тогда же нас просили рассказать об опыте его использования на практике — и вот, как раз к столь значимой вехе в истории проекта, мы рады поделиться накопленными впечатлениями.

Если кратко, Rook представляет собой набор операторов для Kubernetes, которые полностью берут под контроль развертывание, управление, автоматическое восстановление таких решений для хранения данных, как Ceph, EdgeFS, Minio, Cassandra, CockroachDB.
Читать дальше →
Total votes 36: ↑31 and ↓5 +26
Views7.3K
Comments 4

Он вам не дRook

System administration*nixData storageDevOpsKubernetes
В связи с набирающей популярностью Rook хочется поговорить о его подводных камнях и проблемах, которые ждут вас на пути.

О себе: Опыт администрирования ceph с версии hammer, основатель комьюнити t.me/ceph_ru в телеграм.

Дабы не быть голословным я буду ссылаться на принятые хабром (судя по рейтингу) посты о проблемах с ceph. С бОльшей частью проблем в этих постах я тоже столкнулся. Ссылки на использованный материал в конце поста.

В посте про Rook мы упоминаем ceph не просто так — Rook по сути ceph завернутый в kubernetes, а значит наследует все его проблемы. С проблем ceph и начнем.
Читать дальше →
Total votes 48: ↑43 and ↓5 +38
Views4.9K
Comments 32

Сeph — от «на коленке» до «production»

*nixData storageData storages
Sandbox

Выбор CEPH. Часть 1


У нас было пять стоек, десять оптических свичей, настроенный BGP, пару десятков SSD и куча SAS дисков всех цветов и размеров, а ещё proxmox и желание засунуть всю статику в собственное S3 хранилище. Не то чтобы это всё было нужно для виртуализации, но раз начал использовать opensource — то иди в своём увлечении до конца. Единственное, что меня беспокоило — это BGP. В мире нет никого более беспомощного, безответственного и безнравственного, чем внутренняя маршртутизация по BGP. И я знал, что довольно скоро мы в это окунёмся.



Задача стояла банальная — имелся CEPH, работал не очень хорошо. Надо было сделать "хорошо".
Доставшийся мне кластер был разнородным, настроенным на скорую руку и практически не тюнингованным. Он состоял из двух групп разных нод, с одной общей сеткой выполняющей роль как cluster так и public network. Ноды были набиты четырьмя типами дисков — два типа SSD, собранными в два отдельных placement rule и два типа HDD разного размера, собранными в третью группу. Проблема с разными размерами была решена разными весами OSD.


Саму настройку разделили на две части — тюнинг операционной системы и тюнинг самого CEPH и его настроек.

Читать дальше →
Total votes 26: ↑25 and ↓1 +24
Views13.2K
Comments 18

Сeph — от «на коленке» до «production» часть 2

*nixNetwork technologiesData storageData storages

(первая часть тут: https://habr.com/ru/post/456446/)


CEPH


Введение


Поскольку сеть является одним из ключевых элементов Ceph, а она в нашей компании немного специфична — расскажем сначала немного о ней.
Тут будет сильно меньше описаний самого Ceph, в основном сетевая инфраструктура. Описываться будут только сервера Ceph-а и некоторые особенности серверов виртуализации Proxmox.

Читать дальше →
Total votes 14: ↑13 and ↓1 +12
Views6.5K
Comments 18

От High Ceph Latency к Kernel Patch с помощью eBPF/BCC

Selectel corporate blogSystem administrationDebugging
image

В Linux есть большое количество инструментов для отладки ядра и приложений. Большинство из них негативно сказываются на производительности приложений и не могут быть использованы в продакшене.
Читать дальше →
Total votes 46: ↑45 and ↓1 +44
Views4.8K
Comments 21

Разворачиваем распределенное хранилище CEPH и подключаем его к Kubernetes

Data storageData storagesDevOpsKubernetes
Tutorial


Часть 1 Разворачиваем среду для работы с микросервисами. Часть 1 установка Kubernetes HA на bare metal (Debian)


Здравствуйте, уважаемые читатели Хабра!


В прошлой публикации я рассказал, как развернуть отказоустойчивый кластер Kubernetes. Но дело в том, что в Kubernetes удобно деплоить stateless приложения, которым не требуется сохранять свое состояние или работать с данными. Но в большинстве случаев нам требуются сохранять данные и не терять их при рестартах подов.
Для этих целей в Kubernetes используются тома (volume). Когда мы работаем с облачными решениями Kubernetes, то проблем особо нет. Нам лишь нужно у Google, Amazon или иного облачного провайдера заказать требуемый объем и, руководствуясь документаций , подключить полученные тома к подам.
Когда же мы имеем дело с bare metal, тут дела обстоят немного сложнее. Сегодня я хочу рассказать об одном из решений основанном на использовании ceph.


В данной публикации я расскажу:


  • как развернуть распределенное хранилище Ceph
  • как использовать Ceph при работе с Kubernetes
Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Views16.2K
Comments 38

Больше чем Ceph: блочное хранилище облака MCS

Mail.ru Group corporate blogIT InfrastructureData storagesDevOpsCloud services
«Flying Cart», Afu Chan

Я работаю в Mail.ru Cloud Solutons архитектором и разработчиком, в том числе занимаюсь нашим облаком. Известно, что распределенной облачной инфраструктуре нужно производительное блочное хранилище, от которого зависит работа PaaS-сервисов и решений, построенных с их помощью.

Изначально при развертывании такой инфраструктуры мы использовали только Ceph, но постепенно блочное хранилище эволюционировало. Хотелось, чтобы наши базы данных, файловое хранилище и различные сервисы работали с максимальной производительностью, поэтому мы добавили локализованные хранилища и наладили расширенный мониторинг Ceph.

Расскажу, как это было — возможно, эта история, проблемы, с которыми мы столкнулись, и наши решения будут полезны тем, кто тоже использует Ceph. Кстати, вот видеоверсия этого доклада.
Читать дальше →
Total votes 46: ↑45 and ↓1 +44
Views6.1K
Comments 11

Слёрм Базовый в Москве. День Второй. Мидзару, Кикадзару, Ивадзару и техподдержка всегда на посту

Southbridge corporate blogConferencesDevOpsCloud servicesKubernetes

На второй день Слёрм уже чувствовалась лёгкая усталость участников. Хорошо, что нам помогал Алексей Гладких, специалист по конференциям и массовым сборищам, вроде Куликовой битвы и «Кровавой свадьбы» в «Игре Престолов». И там, и там движ получил активным, никто не засиделся, кровь не застоялась.



На второй день Слёрма Павел Селиванов поднял темы продвинутых абстракций Kubernetes: DaemonSet, StatefulSet, RBAC, Job, CronJob, Pod Scheduling, InitContainer.


После кофебрейка отлично зашёл Марсель Ибраев и вместе с ним DNS в кластере, а заодно публикация сервисов и приложений — NodePort vs LoadBalancer vs Ingress.


Читать дальше →
Total votes 26: ↑18 and ↓8 +10
Views692
Comments 0

Слёрм Базовый в Москве. День Третий. Сбор контрразведчиков и кластера, летающий Павел Селиванов и «Слёрм Окрыляет!»

Southbridge corporate blogConferencesDevOpsCloud servicesKubernetes

Каюсь. Я чуть опоздал. Всего минут на 10. И первая фраза которую я услышал от Сергея Бондарева: «… не забывайте, это лежит в секрете». И Сергей загадочно блеснул очками. Я вздрогнул и оглянулся кругом. У меня возникло ощущение, что я промахнулся этажом и попал на форум контрразведчиков.



Потом я заглянул в рабочий чат и увидел:


Евгений Сорокин, [20 нояб. 2019 г., 10:13:44]:
пофиксил. не совпадал секрет  ceph-secret-admin с тем что выдавал node-1

Марсель Ибраев, [20 нояб. 2019 г., 10:15:00]:
попробуйте сикреты строго по инструкции пересоздать

Иван Сизых, [20 нояб. 2019 г., 10:30:18]:
... уже починил почти, нашёл проблему, секрет неправильно задали

Rinat Akjigitov, [20 нояб. 2019 г., 10:31:39]:
Какой секрет? Я запустил лишь скрипт без правок. Или секрет из вчерашнего урока?

Иван Сизых, [20 нояб. 2019 г., 10:34:04]:
там выше мы получаем на ноде секрет не просто так, кроме того спикер всегда всё это делает и показывает

Читать дальше →
Total votes 21: ↑16 and ↓5 +11
Views1.2K
Comments 0

Ceph через iSCSI — или на лыжах стоя в гамаке

*nix
Есть ли среди нас (цефоводов) те, кто не любит «профессиональный экстрим»?

Вряд ли — иначе бы мы не кувыркались с этим чрезвычайно интересным и забавным продуктом.

Многие из тех, кто занимались эксплуатацией Ceph, встречали один не слишком частый (а скорее даже очень нечастый) но иногда востребованный кейс — подключить Ceph по iSCSI или FC. Зачем? Ну, например, подать образ с Ceph на почему-то еще не виртуализированный сервер Windows или Solaris. Или на виртуализированный, но посредством гипервизора, который не умеет Ceph — а их, как мы знаем, хватает. Например? Ну, например, HyperV или ESXi, которые активно используются. И если возникает задача подать образ с Ceph в гостевую машину, это превращается в весьма увлекательную задачу.
Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Views5K
Comments 15

Краткое сравнение архитектуры SDS или поиск подходящей платформы хранения (GlusterVsCephVsVirtuozzoStorage)

Open sourceIT InfrastructureData storageDevelopment for LinuxData storages
Sandbox
Данная статья написана для того, чтобы помочь выбрать для себя подходящее решение и понять отличия между такими SDS как Gluster, Ceph и Vstorage (Virtuozzo).

В тексте используются ссылки на статьи с более детальным раскрытием тех или иных проблем, поэтому описания будут максимально краткими с использованием ключевых моментов без лишней воды и вводной информации, которую вы сможете при желании самостоятельно добыть на просторах интернета.

На самом деле конечно затронутые темы требуют тоны текста, но в современном мире все больше и больше люди не любят много читать))), поэтому можно бегло прочесть и сделать выбор, а если что непонятно пройтись по ссылкам или погуглить непонятные слова))), а эта статья как прозрачная обертка для этих глубоких тем, показывающая начинку – главные ключевые моменты каждого решения.

Gluster


Начнем с Gluster, который активно используется у производителей гиперконвергентных платформ с SDS на базе open source для виртуальных сред и его можно найти на сайте RedHat в разделе storage, где предлагается выбрать из двух вариантов SDS: Gluster или Ceph.

Gluster состоит из стека трансляторов – службы которые выполняют все работы по распределению файлов и т.д. Brick – служба которая обслуживает один диск, Volume – том(пул) – который объединяет эти brick’и. Далее идет служба распределения файлов по группам за счет функции DHT(distributed hash table). Службу Sharding включать в описание не будем так как в ниже выложенных ссылках будет описание проблем связанных с ней.

image

При записи файл целиком ложится в brick и его копия параллельно пишется на brick на втором сервере. Далее второй файл уже будет записываться в вторую группу из двух briсk(или более) на разных серверах.
Читать дальше →
Total votes 10: ↑8 and ↓2 +6
Views3.5K
Comments 6

A Brief Comparison of the SDS Architectures for Virtualization

Open sourceIT InfrastructureData storageDevelopment for LinuxData storages
Translation

The search for a suitable storage platform: GlusterFS vs. Ceph vs. Virtuozzo Storage


This article outlines the key features and differences of such software-defined storage (SDS) solutions as GlusterFS, Ceph, and Virtuozzo Storage. Its goal is to help you find a suitable storage platform.

Gluster



Let’s start with GlusterFS that is often used as storage for virtual environments in open-source-based hyper-converged products with SDS. It is also offered by Red Hat alongside Ceph.
GlusterFS employs a stack of translators, services that handle file distribution and other tasks. It also uses services like Brick that handle disks and Volume that handle pools of bricks. Next, the DHT (distributed hash table) service distributes files into groups based on hashes.
Note: We’ll skip the sharding service due to issues related to it, which are described in linked articles.

image

When a file is written onto GlusterFS storage, it is placed on a brick in one piece and copied to another brick on another server. The next file will be placed on two or more other bricks. This works well if the files are of about the same size and the volume consists of a single group of bricks. Otherwise the following issues may arise:
Read more →
Total votes 2: ↑1 and ↓1 0
Views861
Comments 0

Tips & tricks в работе с Ceph в нагруженных проектах

Флант corporate blogSystem administrationIT InfrastructureServer Administration
Tutorial


Используя Ceph как сетевое хранилище в разных по нагруженности проектах, мы можем столкнуться с различными задачами, которые с первого взгляда не кажутся простыми или тривиальными. Например:

  • миграция данных из старого Ceph в новый с частичным использованием предыдущих серверов в новом кластере;
  • решение проблемы распределения дискового пространства в Ceph.

Разбираясь с такими задачами, мы сталкиваемся с необходимостью корректно извлечь OSD без потери данных, что особенно актуально при больших объемах данных. Об этом и пойдет речь в статье.

Описанные ниже способы актуальны для любых версий Ceph. Кроме того, будет учтен тот факт, что в Ceph может храниться большой объем данных: для предотвращения потерь данных и других проблем некоторые действия будут «дробиться» на несколько других.
Читать дальше →
Total votes 41: ↑39 and ↓2 +37
Views5.8K
Comments 20

Bcache against Flashcache for Ceph Object Storage

Selectel corporate blogIT InfrastructureServer AdministrationData storageData storages

Fast SSDs are getting cheaper every year, but they are still smaller and more expensive than traditional HDD drives. But HDDs have much higher latency and are easily saturated. However, we want to achieve low latency for the storage system, and a high capacity too. There’s a well-known practice of optimizing performance for big and slow devices — caching. As most of the data on a disk is not accessed most of the time but some percentage of it is accessed frequently, we can achieve a higher quality of service by using a small cache.

Server hardware and operating systems have a lot of caches working on different levels. Linux has a page cache for block devices, a dirent cache and an inode cache on the filesystem layer. Disks have their own cache inside. CPUs have caches. So, why not add one more persistent cache layer for a slow disk?
Read more →
Total votes 16: ↑16 and ↓0 +16
Views950
Comments 0

Опыт эксплуатации CEPH

IT Infrastructure*nixData storages
Sandbox
Когда данных становится больше, чем влезает на один диск, самое время задуматься о RAID. В детстве часто слышал от старших: «однажды RAID уйдут в прошлое, объектные хранилища заполонят мир, а ты даже не знаешь, что такое CEPH»,- поэтому первым делом в самостоятельной жизни стало создание своего кластера. Целью эксперимента было ознакомиться с внутренним устройством ceph и понять рамки его применения. Насколько оправдано внедрение ceph в средний бизнес, а в малый? После нескольких лет эксплуатации и пары необратимых потерь данных возникло понимание тонкостей, что не всё так однозначно. Особенности CEPH создают препятствия его широкому распространению, и из-за них эксперименты зашли в тупик. Ниже приводится описание всех пройденных шагов, полученный результат и сделанные выводы. Если знающие люди поделятся опытом и пояснят некоторые моменты — буду благодарен.

Примечание: комментаторы указали на серьёзные ошибки в некоторых допущениях, требующие пересмотра всей статьи.
Читать дальше →
Total votes 13: ↑12 and ↓1 +11
Views6.3K
Comments 26

Ceph: Первый практический курс на русском языке

Southbridge corporate blogSystem administrationServer AdministrationDevOps

Сообщества пользователей Сeph переполнены историями, как всё сломалось, не завелось, отвалилось. Значит ли это, что технология плохая? Совсем нет. Это означает, что идёт развитие. Пользователи натыкаются на узкие места технологии, находят рецепты и решения, отправляют в апстрим патчи. Чем больше опыта с технологией, чем больше пользователей делают на неё ставку, тем больше будет описанных проблем и решений. То же самое совсем недавно было с Kubernetes.


Сeph прошёл долгий путь от проекта Сейджа Уэйла в 2007 году в его докторской диссертации до поглощения фирмы Уэйла Inktank корпорацией Red Hat в 2014 году. И сейчас многие узкие места Сeph уже известны, многие кейсы от практиков можно изучить и взять на заметку.


1 сентября стартует бета-тест нашего практического видеокурса по Ceph. Научим работать с технологией стабильно и эффективно.


Читать дальше →
Total votes 29: ↑22 and ↓7 +15
Views4.3K
Comments 8

Хранение данных. Или что такое NAS, SAN и прочие умные сокращения простыми словами

Southbridge corporate blogSystem administrationServer AdministrationSANData storage

TL;DR: Вводная статья с описанием разных вариантов хранения данных. Будут рассмотрены принципы, описаны преимущества и недостатки, а также предпочтительные варианты использования.


Читать дальше →
Total votes 26: ↑24 and ↓2 +22
Views20K
Comments 14

Обновлённый анонс обновлённых интенсивов: Kubernetes oт альфы до омеги

Southbridge corporate blogSystem administrationServer AdministrationDevOpsKubernetes

TL;DR, уважаемые хабровчане. Наступила осень, в который раз перевернулся лист календаря и третье сентября наконец-то снова минуло. А значит пора возвращаться к работе — и не только к ней, но и к обучению.


— У нас, — сказала Алиса, с трудом переводя дух, — когда долго бежишь со всех ног, непременно попадаешь в другое место.
— Какая медлительная страна! — сказала Королева. — Ну, а здесь, знаешь ли, приходится бежать со всех ног, чтобы только остаться на том же месте! Если же хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее!


Такое ощущение, что они разговаривали об IT-cфере. Настоящий it-специалист в некоторой мере обречён постоянно учиться. Чтобы оставаться просто на необходимом технологическом уровне, нужно каждый год не только актуализировать, но и добавлять знаний процентов на 30.


Этой осенью мы обновили наши интенсивы Kubernetes База и Kubernetes Мега. Интенсивы Слёрма из-за COVID-19 перебрались в онлайн — правда с сохранением всех «фичей» и «плюшек». За год много чего произошло. Даже Kubernetes уже лихо помахивает цифрой 1.19.


Читать дальше →
Total votes 23: ↑17 and ↓6 +11
Views1.7K
Comments 0