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

Gentoo+drbd+ocfs2

High performance

Введение


Поставили передо мной как-то задачу… говорят один сервер это хорошо… но учитываю рост посетителей, неплохо бы было повысить производительность отдачи и для этой цели будет приобретен еще 1 сервер…
еще один сервер это хорошо, подумал я… только что с ним делать ??
Поговорив с програмистом и примерно поняв чего он хочет…

А именно одновременную отдачу контента, и что-то типа nfs или шары…
но тогда был бы оверхед ибо данные гонялись по сети и нагружен был бы диск одного сервера, посему надо было чтобы данные одновременно хранились на обоих серверах и реплицировались друг на друга…
поискав в гугле что-то на эту тему нашел информацию по кластерным фс, и для меня подходили gfs2 и позднее обнаруженная ocfs2, но была проблема в том что обычно использовалось выделенное файловое хранилище и его уже монтировали ноды… что было неприемлимо для меня, и тогда позадавав вопросы народу в конференции (gentoo@conference.gentoo.ru благо там были люди работающие с кластерами и прочими веселыми вещами) я вышел на drbd
Читать дальше →
Total votes 6: ↑5 and ↓1+4
Views9.5K
Comments 12

HA-кластер, файловые системы, реплицируемые по сети

Lumber room
О чем: делал кластер высокой готовности на двух нодах, с использованием heartbeat. Кластер под веб-сервер (apache, nginx, php, mysql). Здесь не инструкция о поднятии подобного кластера, а заметки по поводу использования кластерных файловых систем, то, чего не хватает в распространенных статьях и описание грабель, на которые наступил я.
Читать дальше →
Total votes 6: ↑5 and ↓1+4
Views2.4K
Comments 9

DevConf: 3 доклада + мастеркласс по MySQL: DRBD/HeartBeat/MySQL, MariaDB, Мониторинг производительности MySQL

DevConf corporate blog
image

3 доклада по MySQL на DEVCONF 2010 17 мая Москва



Мониторинг производительности MySQL с использованием performance
Алексей Копытов, Senior Software Developer, Sun Microsystems.
Решения высокой надежности на базе MySQL
Алик Рубин, MySQL, Норвегия
MariaDB — ветка MySQL с большими возможностями
Сергей Петруня (Monty Program Ab)

Голосуем — поддерживаем наших :-)
devconf.ru/offers
Читать дальше →
Total votes 9: ↑7 and ↓2+5
Views5.2K
Comments 4

Опыт переноса веб-сервисов компании СОЮЗ в масштабируемый виртуальный комплекс

Оверсан-Меркурий corporate blog
В начале марта мы достигли принципиального соглашения с представителями компании «СОЮЗ» по проведению мероприятий по виртуализации корпоративной ИТ-инфраструктуры. Если проще – то СОЮЗ с нашей помощью производит аутсорсинг ИТ-инфраструктуры, размещает собственные мощности в дата-центре «Оверсан-Меркурий» и проводит еще ряд мероприятий, в результате чего получает экономию средств и массу новых возможностей по развитию.

Тому, как мы переносили веб-сервисы компании в МВК, и технологическим особенностям реализации проекта и посвящен этот пост.

image

Читать дальше →
Total votes 55: ↑32 and ↓23+9
Views10K
Comments 31

6 способов убить Ваши сервера — познаем масштабируемость трудным путем

Server optimization
Translation
Узнать, как отмасштабировать Ваше приложение, не имея при этом никакого опыта, — это очень нелегко. Сейчас есть много сайтов, посвященных этим вопросам, но, к сожалению, не существует решения, которое подходит для всех случаев. Вам по-прежнему необходимо самому находить решения, которые подойдут под Ваши требования. Так же, как и мне.

Несколько лет назад ко мне пришел мой босс и сказал: «У нас есть новый проект для тебя. Это перенос сайта, который уже имеет 1 миллион посетителей в месяц. Тебенеобходимо его перенести и убедиться, что посещаемость может вырасти в будущем без всяких проблем.» Я уже был опытным программистом, но не имел никакого опыта в области масштабируемости. И мне пришлось познавать масштабируемость трудным путем.
Читать дальше →
Total votes 158: ↑148 and ↓10+138
Views16K
Comments 73

Настройка Active/Passive PostgreSQL Cluster с использованием Pacemaker, Corosync, и DRBD (CentOS 5,5)

Configuring Linux
Translation
В этой статье объясняется, как настроить Active/Passive кластера PostgreSQL, с использованием Pacemaker, Corosync и DRBD.
Подготовлено Рафаэль Марангони, из команды BRLink Servidor Linux
Читать дальше →
Total votes 32: ↑27 and ↓5+22
Views25K
Comments 12

Бесплатная замена VMware vSphere Storage Appliance на основе DRBD

DEPO Computers corporate blog
Недавно компания VMware анонсировала новые продукты в линейке vSphere 5, и нам стало очень интересно, что же такое VMware vSphere Storage Appliance?

Вкратце суть заключается в возможности построения отказоустойчивой виртуальной инфраструктуры без внешней СХД. Для реализации устанавливается две или три виртуальные машины (по одной на каждый хост), которые реплицируют между собой свободное пространство дисковой подсистемы ESXi-серверов и предоставляют его в качестве общего хранилища все тем же хостам ESXi. Подробно на русском языке Storage Appliance описан здесь.

Интересная задумка, но кусается цена — в районе $6К. Кроме того, если задуматься о производительности, то не получится ли просадки по скорости работы дискового массива? Подходя к вопросу с другой стороны, можно придумать много других способов организации внешней СХД. Например, можно создать внешнее хранилище из практически любого железа с необходимым количеством дисков и установленным софтом Openfiler, FreeNAS, Nexenta, Open-E — в этих программных продуктах есть возможность репликации между системами.

Такой подход практикуют многие компании, у которых нет возможности приобрести дорогостоящую СХД именитого производителя, которая бы обеспечила достаточную производительность и надежность. Как правило, такие системы оснащаются двумя контроллерами, избыточной системой питания, скоростными дисками и прочее…
Читать дальше →
Total votes 12: ↑12 and ↓0+12
Views23K
Comments 13

Создание надёжного хранилища раздаваемого нескольким серверам по nfs

Configuring Linux
При создании кластера для обработки звонков на базе CGP возникла необходимость настройки бесперебойного хранилища, монтируемого с нескольких сервров.

В качестве дистрибутиа для серверов был взят Ubuntu Server 10.10. Дисковое пространство было разбито на два логических диска (sda1 для установки системы, и sda2 собственно для разделяемого диска).

После установки базовой системы надо дополнительно установить следующие пакеты: heartbeat, pacemaker, drbd8-utils, xfs, xfsprogs, nfs-kernel-server.

Heartbeat и pacemaker нужны для кластеризации серверов. Хранилище сделано на основе drbd, в качестве файловой системы использовалась xfs. Раздача файловой системы серверам сделана по nfs.

Читать дальше →
Total votes 23: ↑20 and ↓3+17
Views24K
Comments 17

Перенос физической машины в кластере ProxmoxVE2(3) с DRBD на новое железо

Virtualization
Sandbox
Имея кластер из двух серверов стоящих на Proxmox с объединенным по DRBD хранилищем, бывает нужно обновить узел в этом кластере, без остановки работы машин в нем. Задача не сложная, но некоторые моменты не всегда вспоминаешь в процессе.
Поэтому, для себя, действия были записаны для будущего копипаста в консоль. Ну а раз уже написаны, почему бы не поделиться с людьми?
P.S. В конце небольшой бонус про расширение блочного устройства по имени DRBD, тюнинг и полезные ссылки.

Читать дальше →
Total votes 5: ↑5 and ↓0+5
Views7K
Comments 2

Создание надёжного iSCSI-хранилища на Linux, часть 1

Configuring Linux*nixVirtualizationData storageData storages
Tutorial
Часть вторая

Прелюдия


Сегодня я расскажу вам как я создавал бюджетное отказоустойчивое iSCSI хранилище из двух серверов на базе Linux для обслуживания нужд кластера VMWare vSphere. Были похожие статьи (например), но мой подход несколько отличается, да и решения (тот же heartbeat и iscsitarget), используемые там, уже устарели.

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

Вводные


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

В качестве гипервизора был выбран vSphere, как наиболее устоявшийся и законченый продукт, а в качестве протокола — iSCSI, как не требующий дополнительных финансовых вливаний в виде коммутаторов FC или FCoE. С опенсурсными SAS таргетами довольно туго, если не сказать хуже, так что этот вариант тоже был отвергнут.

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

В качестве софта было выбрано:
  • Debian Wheezy + LTS ядро 3.10
  • iSCSI-таргет SCST
  • DRBD для репликации
  • Pacemaker для управления ресурсами кластера и мониторинга
  • Подсистема ядра DM-Crypt для шифрования (инструкции AES-NI в процессоре нам очень помогут)

В итоге, в недолгих муках была рождена такая несложная схема:
image
Читать дальше →
Total votes 40: ↑39 and ↓1+38
Views53K
Comments 10

Создание надёжного iSCSI-хранилища на Linux, часть 2

Configuring Linux*nixVirtualizationData storageData storages
Tutorial
Часть первая

Продолжаем


Продолжаем создание кластера, начатое первой части.
На этот раз я расскажу про настройку кластера.

В прошлый раз мы закончили на том, что началась синхронизация DRBD.
Если мы в качестве Primary сервера для обоих ресурсов выбрали один и тот же сервер, то после завершения синхронизации должны в /proc/drbd увидеть примерно такую картину:
# cat /proc/drbd
version: 8.4.3 (api:1/proto:86-101)
GIT-hash: 89a294209144b68adb3ee85a73221f964d3ee515 build by root@debian-service, 2013-04-30 07:43:49
 0: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate B r-----
    ns:0 nr:190397036 dw:190397036 dr:1400144904 al:0 bm:4942 lo:0 pe:0 ua:0 ap:0 ep:1 wo:d oos:0
 1: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate B r-----
    ns:0 nr:720487828 dw:720485956 dr:34275816 al:0 bm:3749 lo:468 pe:0 ua:0 ap:0 ep:1 wo:d oos:0

Самое интересное поле тут ds:UpToDate/UpToDate, означающее что и локальная и удаленная копия актуальны.

После этого переведем ресурсы в secondary режим — дальше ими будет управлять кластер:
# drbdadm secondary VM_STORAGE_1
# drbdadm secondary VM_STORAGE_2

Pacemaker


Итак, менеджер кластера.
Читать дальше →
Total votes 41: ↑39 and ↓2+37
Views23K
Comments 21

Кэш на запись и DRBD: почему полезно знать подноготную

Configuring LinuxSystem administrationServer Administration

Предыстория


Существует красивое решение для создания надёжного недорогого кластера основанное на DRBD + Proxmox VE. Страница в Wiki проекта Proxmox появилась 11 сентября 2009-го года и создана она была CEO компании Martin-ом Maurer-ом.



С тех самых пор это решение стало очень популярным, и никто не подозревал, что у этого решения есть скрытый подводный камень. В документации про это не пишут, а те, кто сталкивался с последствиями этой проблемы (например, зависание машины при онлайн миграции с одного хоста на другой), списывали всё на «случай». Кто-то грешил на железо, кто-то на Proxmox, а кто-то на драйверы внутри виртуальной машины. Конечно, хотелось бы, чтобы DRBD сам сообщал о своих проблемах, и, как-то подсознательно веришь в то, что он так и делает. Проверяешь /proc/drbd, видишь строку «cs:Connected ro:Primary/Primary ds:UpToDate/UpToDate» и продолжаешь верить что DRBD не причём.
Читать дальше →
Total votes 43: ↑42 and ↓1+41
Views24K
Comments 46

Блочные устройства QEMU

Open source*nixVirtualizationData storage
Translation

image


В QEMU есть несколько способов подключить блочное устройство для виртуальной машины. Изначально это было реализовано следующим способом:


 -hda /dev/sda1

Таким образом виртуальные диски подключались в давние дни виртуализации. Его можно использовать и сегодня, если мы просто хотим протестировать некоторые liveCD. К сожалению, он имеет свои недостатки

Разбираемся с подключением и форматами виртуальных дисков
Total votes 11: ↑10 and ↓1+9
Views13K
Comments 3

Надежное хранилище с DRBD9 и Proxmox (Часть 1: NFS)

IT Infrastructure*nixVirtualizationCloud computingData storage

image


Наверное каждый, кто хоть раз озадачивался поиском высокопроизводительного software-defiined хранилища рано или поздно слышал про DRBD, а может даже и имел дело с ним.


Правда на пике популярности Ceph и GlusterFS, которые работают в принципе неплохо, а главное сразу и из коробки, все просто немного подзабыли про него. Тем более что предыдущая версия не поддерживала репликацию более чем на два узла, и из-за чего часто встречались проблемы со split-brain, что явно не добавило ему популярности.


Решение и правда не новое, но вполне конкурентоспособное. При относительно небольших затратах на CPU и RAM, DRBD предоставляет реально быструю и безопасную синхронизацию на уровне блочного устройства. За все это время LINBIT — разработчики DRBD не стоят на месте и постоянно дорабатывают его. Начиная с версии DRBD9 перестает быть просто сетевым зеркалом и становится чем-то бОльшим.


Во первых, идея создания одного распределенного блочного устройства для нескольких серверов отошла на задний план, и теперь LINBIT старается предоставить инструменты оркестрации и управления множеством drbd-устройств в кластере, которые создаются поверх LVM и ZFS-разделов.


Например DRBD9 поддерживает до 32 реплик, RDMA, diskless-ноды, а новые инструменты оркестрации позволяют использовать снапшоты, online-миграцию и много чего другого.


Несмотря на то что DRBD9 имеет инструменты интеграции с Proxmox, Kubernetes, OpenStack и OpenNebula, на данный момент они находится в некотором переходном режиме, когда новые инструменты еще не везде поддерживаются, а старые уже очень скоро будут объявлены как deprecated. Речь идет о DRBDmanage и Linstor.


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

Читать дальше →
Total votes 11: ↑10 and ↓1+9
Views19K
Comments 9

Надежное хранилище с DRBD9 и Proxmox (Часть 2: iSCSI+LVM)

IT Infrastructure*nixCloud computingData storageData storages

image


В предыдущей статье я рассмотрел возможность создания отказоустойчивого NFS-сервера с помощью DRBD и Proxmox. Получилось довольно неплохо, но не будем останавливаться на достигнутом и теперь постараемся "выжать все соки" из нашей хранилки.


В этой статье я расскажу как подобным образом создать отказоустойчивый iSCSI-таргет, который при помощи LVM мы будем нарезать на маленькие кусочки и использовать под виртуальные машины.


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

Читать дальше →
Total votes 9: ↑9 and ↓0+9
Views10K
Comments 4

Разворачиваем хранилище LINSTOR для Proxmox

IT Infrastructure*nixData storageData storages
Translation
Tutorial

image


Недавно LINBIT выпустили свое новое решение для оркестрации и управления множеством DRBD-массивов.


К примеру у вас может быть несколько нод и у каждой будет собственный LVM или ZFS пул в котором LINSTOR будет автоматически создавать новые тома и реплицировать их между нодами используя DRBD-протокол.


LINSTOR поддерживает thin-provisioning, снапшоты и много других интересных штук.
Это решение хорошо подойдет для виртуальных машин и контейнеров.

Читать дальше →
Total votes 6: ↑6 and ↓0+6
Views11K
Comments 12

Кластерное хранилище Pacemaker + DRBD (Dual primary) + ctdb

System administration
Sandbox
Доброго времени суток, хабровчане. Поступила задача — развернуть отказоустойчивое High Available хранилище по средствам pacamaker + drbd (в режиме dual primary) + clvmd + ctdb, которое будет монтироваться на сервер. Оговорюсь, что со всеми этими инструментами я сталкиваюсь впервые и буду рад критике и дополнениям\исправлениям. В интернете инструкций конкретно по этой связке либо нет, либо информация устарела. Эта рабочая на данный момент, но есть одна проблема, решение которой, я надеюсь найти в ближайшее время. Все действия нужно выполнять на обоих нодах, если не указано обратное.

Читать дальше →
Total votes 22: ↑19 and ↓3+16
Views8.8K
Comments 24

Кластерное хранилище Pacemaker + DRBD (Dual primary) + samba

High performanceSystem administrationIT InfrastructureData storageDistributed systems
Tutorial
В продолжение статьи «Кластерное хранилище Pacemaker + DRBD (Dual primary) + ctdb» представляю полностью готовый и рабочий вариант HA кластера файловой шары на 2-4 ноды для centos 6 и centos 7. Если вы хотите реализовать такое, вы либо извращенец, либо вам не дали никакого выбора, и реализовать надо хоть как-то.

Я просто опишу слоёный пирог, который мы будем собирать:

На блочном устройстве создаём таблицу gpt => один раздел на всё пространство под лвм => группу томов лвм на всё доступное пространство => лвм том на всё доступное пространство => drbd устройство => dlm => размечаем как физический том лвм на всё доступное пространство => на него кластерную группу томов лвм => лвм том на всё доступное пространство => размечаем фс gfs2 => подключаем в точку монтирования.
И рулить всем этим будет pacemaker c virtual ip адресом.


Если вы ещё хотите продолжать, читайте дальше под катом.
Читать дальше →
Total votes 16: ↑15 and ↓1+14
Views6K
Comments 26

Кластерное хранилище для небольших web-кластеров на базе drbd+ocfs2

Configuring LinuxSystem administration
Tutorial
О чем мы расскажем:
Как быстро развернуть общее хранилище для двух серверов на базе решений drbd+ocfs2.

Для кого это будет полезно:
Туториал станет полезен системным администраторам и всем, кто выбирает способ реализации хранилища или хотят попробовать решение.

От каких решений мы отказались и почему


Часто мы сталкиваемся с ситуацией, когда нам нужно реализовать на небольшом web-кластере общее хранилище с хорошей производительностью на чтение — запись. Мы пробовали различные варианты реализации общего хранилища для наших проектов, но мало что было способно удовлетворить нас сразу по нескольким показателям. Сейчас расскажем, почему.

  • Glusterfs не устроил нас производительностью на чтение и запись, возникали проблемы с одновременным чтением большого количества файлов, была высокая нагрузка на CPU. Проблему с чтением файлов можно было решить, обращаясь за ними напрямую в brick-и, но это не всегда применимо и в целом неправильно.

  • Ceph не понравился избыточной сложностью, которая может быть вредна на проектах с 2-4 серверами, особенно, если проект впоследствии обслуживают. Опять же, имеются серьезные ограничения по производительности, вынуждающие строить отдельные storage кластеры, как и с glusterfs.

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

  • s3 — отличное популярное решение для некоторого круга задач, но это и не файловая система, что сужает область применения.
Читать дальше →
Total votes 5: ↑5 and ↓0+5
Views6.9K
Comments 6

Хранилище LINSTOR и его интеграция с OpenNebula

System administration*nixData storageCloud servicesDistributed systems
Translation


Не так давно ребята из LINBIT представили свое новое SDS-решение — Linstor. Это полностью свободное хранилище в основе которого используются проверенные технологии: DRBD, LVM, ZFS. Linstor сочетает в себе простоту и хорошо проработанную архитектуру, что позволяет добиться стабильности и достаточно внушительных результатов.


Сегодня я хотел бы рассказать про него чуть подробнее и показать насколько просто его можно интегрировать с OpenNebula используя linstor_un — новый драйвер, который я разработал специально для этой цели.


Linstor в сочетании с OpenNebula позволяет построить быстрое и надежное облако, которое можно без проблем развернуть на собственной инфраструктуре.

Читать дальше →
Total votes 12: ↑12 and ↓0+12
Views7.7K
Comments 2
1