«id =» main «> Поделиться

Ceph в настоящее время набирает большую популярность среди программно-определяемых хранилищ, также известных как SDS (программно-определяемые хранилища). Это решение очень популярно не зря, поскольку оно позволяет сотрудничать с такими решениями, как как OpenStack, OpenShift/OKD или KVM/QEMU. Он также предоставляет несколько методов доступа к хранимым ресурсам:

Ceph Native API (librados): собственная библиотека, которая позволяет приложениям напрямую обращаться к объектам и данным, хранящимся в кластере; Ceph Object Gateway: предоставляет RESTful API, совместимый с Amazon S3 или OpenStack Swift; Объектный шлюз также называется RADOS Gateway RADOSGW или RGW; решения, использующие этот модуль, включают Docker Registry, OpenStack Cinder (резервное копирование), s3fs-fuse, s3cmd; блочное устройство Ceph (RBD, librbd): также известное как блочное хранилище; это решение может использоваться QEMU/KVM и OpenStack Cinder, iSCSI; файловой системой Ceph (CephFS, libcephfs, MDS), среди прочего: кластер также предоставляет свою собственную файловую систему, для работы которой требуется агент MDS.

При выборе решения мы также получаем возможность горизонтального масштабирования, а также возможность работать в нескольких «многосайтовых» центрах.

В статье я хотел бы остановиться на двух основных аспектах : & nbsp; подходящая конфигурация оборудования и инструменты, способы оптимизации кластера Ceph.

Ceph не предъявляет высоких требований к оборудованию для работы в производственной среде. Кластер должен состоять минимум из 6 физических узлов (3 x ceph-mon, radosgw, mds, 3 x ceph-osd), хотя иногда вы можете встретить конфигурацию, состоящую всего из 3 физических узлов. Минимальные рекомендуемые требования к оборудованию для агентов представлены в таблице ниже:

Компоненты Ceph-OSDCeph-MonCeph-RadosgwCeph-mdsProcesor1x AMD64 или Intel 641x AMD64 или Intel 641x AMD64 или Intel 641x AMD64 или Intel 64RAM 16 ГБ для ОС, 2 ГБ ОЗУ на агент OSD, 1 ГБ на агент, 1 ГБ на агент, 1 ГБ на агент (зависит от «MDS размер кэша «) Диск Рекомендуется как минимум один диск 1 ТБ на агент OSD, исключая системный диск 10 ГБ на агент 5 ГБ на агент 1 МБ на агент плюс место для файлов журнала Сеть 2 x Gigabit Ethernet NIC 2 x Gigabit Ethernet NIC 2 x Gigabit Ethernet NIC 2 x Gigabit Сетевая карта Ethernet

Конечно, указанная выше конфигурация минимальна и во многом зависит от требований заказчика. Если мы серьезно подумываем о создании кластера Ceph, на начальном этапе следует принять решение о том, какие модули будут использоваться кластером.

Какую конфигурацию выбрать для узлов OSD?

Важным элементом на этапе проектирования кластера Ceph является решение о конечном назначении кластера. Во многих документах есть три основных пути оптимизации:

IOPS & nbsp; — выбирается для решений, использующих «блочное хранилище», предназначенных для баз данных или решений OpenStack; «Производительность» — предназначенных для решений, использующих «блочное хранилище» или «объектное хранилище». Конфигурация в основном предназначена для обработки потокового мультимедиа; видео, аудио, изображения; Стоимость/Емкость — оптимальное соотношение стоимости и емкости. Решение предназначено в основном для «объектного хранилища», предназначенного для работы в качестве решения для хранения резервных копий, аудио, видео, изображений. Критерии оптимизации Пример конфигурации IPS Приложение: Ceph RBD (блочные) пулы Защита данных: 3 реплики для HDD, 2 x реплики для SSD Резервное хранилище: BlueStore Процессоры: 10 x 2 ГГц ЦП на твердотельный накопитель NVMe, ОЗУ: 16 ГБ для ОС, 2 ГБ для каждой конфигурации OSD OSD: 4x NVMe SSD P4500 4TB OSD, 1x NVMe SSD P4800X 375 ГБ база данных (DB)/с упреждающей записью log (WAL) Контроллер: Собственная шина Сеть PCIe: Рекомендуется: 2 x 10 GbE для общедоступной сети и 2 x 10 GbE в кластерной сети Наилучшее: 2 x 25 GbE для общедоступной сети и 2 x 25 GbE в кластерной сети Назначение производительности: Ceph RBD (блок ) пулы Защита данных: 3 реплики для HDD, 2 реплики для SSD Резервное хранилище: BlueStore Процессоры: 10 x ЦП 2 ГГц на твердотельный накопитель NVMe, ОЗУ: 16 ГБ для ОС, 2 ГБ для каждой конфигурации OSD OSD: 4x NVMe SSD P4500 4 ТБ OSD , 1x твердотельный накопитель NVMe P4800X 375 ГБ, база данных (DB)/журнал упреждающей записи (WAL) Ko ntroler: Собственная шина PCIe Сеть: Рекомендуется: 2 x 10 GbE для общедоступной сети и 2 x 10 GbE кластерной сети Лучшее: 2 x 25 GbE для общедоступной сети и 2 x 25 GbE кластерная сеть Стоимость/емкость Цель: Ceph RGW (объект) Данные резервное копирование: кодирование стирания (интенсивное использование ЦП) Резервное хранилище: Процессоры BlueStore: 1 x процессор 2 ГГц на жесткий диск, ОЗУ: 16 ГБ для ОС, 2 ГБ на экранное меню, конфигурация экранного меню: решение на основе жестких дисков, данные + база данных (БД)/запись- предварительный журнал (WAL) на одном диске Контроллер: JBOD Сеть: Общие рекомендации: 10 GbE на 12 OSD Контроллер

В большинстве случаев для узлов OSD достаточно HBA, поддерживающих режим JBOD. Однако бывают случаи, когда вы хотите рассмотреть возможность настройки каждого OSD в режиме RAID0. Для произвольного ввода-вывода на небольших блоках жесткие диски, настроенные как один диск в RAID0, обеспечивают лучшую производительность, чем те, которые настроены в режиме JBOD.

Последовательный ввод-вывод на больших блоках обычно лучше работает с жесткими дисками с конфигурацией JBOD. Многие контроллеры имеют микросхему «расширитель SAS», которая, несмотря на множество преимуществ, накладывает дополнительную задержку из-за использования STP при туннелировании SATA в SAS. При выборе дисков или контроллеров иногда важны производитель и версия используемого микропрограммного обеспечения.

Сеть

OSD узлов, MON должен иметь два сетевых интерфейса, соответственно для сети:

сеть кластера (back-side) — выделенная сеть, используемая для репликации pg, отказа одного из OSD-дисков и связи между узлами OSD и MON; общедоступная сеть (front-side) — сеть, предназначенная для связи с клиентами, узлами, использующими кластер.

Для небольших узлов OSD с 12–16 слотами для дисков достаточно использовать сетевой интерфейс емкостью 10 Гб. Для узлов OSD с 24-72 слотами рекомендуются интерфейсы Ethernet 25, 40, 50 Gb или Infiniband соответственно. Например, репликация 1 ТБ данных через интерфейс 1 Гбит/с займет около 3 часов, соответственно 3 ТБ 9 часов. Если мы используем интерфейс 10 Гбит/с, репликация займет 20 минут для диска 1 ТБ и 1 час для диска 3 ТБ соответственно. При выборе размера дисков и их количества в узле OSD следует выбрать сетевую карту с соответствующей пропускной способностью.

Важным элементом, который также следует учитывать, является пропускная способность сетевого интерфейса на стороне клиента или решение, которое использует из кластера Ceph. Иногда оказывается, что связь между клиентом и кластером происходит через интерфейс 10 Гбит/с на стороне клиента, что в случае больших кластеров Ceph часто становится узким местом. Инструмент, используемый для выполнения тестов клиент-кластер или кластер-кластер, — это iperf. Этот инструмент позволяет вам проверить и оценить, подходит ли используемая конфигурация сети.

Прочтите следующий раздел Какая конфигурация оптимальна для кластера Ceph?, Где я объясняю вопросы оптимального выбора типа, размер и количество дисков для узла OSD.

Rate this post