LINUX.ORG.RU
ФорумAdmin

Кластер - чем и как?


0

1

Собссно сабж. Собираю потихоньку кластер на Linux+KVM, небольшой - пока (эдак с полгода) есть одна экспериментальная нода и в планах в течение пары месяцев поднять 2ю ноду (основная задача - уполовинить зоопарк серверов типа веба, биллинга и т.д.), естессно, хотелось бы обеспечить хоть какое-то подобие high availability. Хотя не исключено, что он будет в перспективе разрастаться - если появятся ресурсоемкие задачи.

Сначала возникло желание заюзать ganeti; поставил, поднял пару виртуалок на хосте, напилил немного скриптов (bootstrap с gentoo), но чем дольше юзаю его, тем больше приходит понимание, что система не совсем подходит собссно для HA кластера с перспективой расширения и последующего возможного разноса собссно вычислительных нод и нод хранения. Идеальным вижу пока экспорт DRBD раздела с файлами-образами нод по NFS, с его последующим монтированием на других нодах - но AFAIK ganeti при этом не сможет обеспечить живую миграцию.

Пробовал еще до экспериментов с ganeti немного поизучать pacemaker - показался черезчур сложным как для первого эксперимента, покопался пару дней, в итоге - на центоси я его так и не запустил... RHCS - как-то не нашел тогда внятного описания.

Собссно вопрос - на какой системе остановиться? Основные требования - работа с образами ВМ по NFS, возможность живой миграции при плановом отключении одной из нод на ревизию, очень желательно - HA фичи (при падении одной из нод - запуск некоторых из VM на другой).

★★★★★

Pacemaker прост как швабра, нужно просто маны внимательно читать. При использовании OCF-агента virtualdomain миграция и фейловер проходят легко и непринужденно.

Хранилище экспортируется в любом приемлемом для либвирта виде, например, через NFS (файл) или iSCSI (блочное устройство).

Идеальным вижу пока экспорт DRBD раздела с файлами-образами нод по NFS


Мсье знает только в извращениях. А почему нельзя хранить vd непосредственно в блочных устройствах, реплицируемых по drbd, с экспортом через ту же iscsi?

pacemaker - показался черезчур сложным как для первого эксперимента, покопался пару дней, в итоге - на центоси я его так и не запустил...


Что там сложного? Подключаешь репу clusterlabs, ставишь и юзаешь.
Хотя если пытаться ставить hb из extras и юзать pacemaker, идущий с ним в комплекте, получится много траха и мало пользы.

RHCS - как-то не нашел тогда внятного описания.


У них есть интуитивно понятный веб-интерфейс. Нафига какие-то внятные описания? Хотя документация у них тоже хорошая.

nnz ★★★★
()
Ответ на: комментарий от nnz

>Pacemaker прост как швабра, нужно просто маны внимательно читать.

Возможно. Но не для человека, который тесно занялся кластерами весьма недавно.

Мсье знает только в извращениях. А почему нельзя хранить vd непосредственно в блочных устройствах, реплицируемых по drbd, с экспортом через ту же iscsi?

Это решение показалось самым очевидным - ввиду того, что с iSCSI я тоже особо не сталкивался. Покопаю, попробую на десктопе в виртуалках собрать кластер...

Что там сложного? Подключаешь репу clusterlabs, ставишь и юзаешь.

Скорее всего, репозиториев лишних навключал...

У них есть интуитивно понятный веб-интерфейс. Нафига какие-то внятные описания? Хотя документация у них тоже хорошая.

Я тогда не нашел даже с какой стороны к нему правильно подступиться. Буду экспериментировать в ближайшее время.

NiTr0 ★★★★★
() автор топика
Ответ на: комментарий от dimon555

>sheepdog

Хм, в качестве распределенного хранилища - выглядит отлично... Только вот собссно обвязку для KVM (в частности живая миграция и иже с ним) придется пилить самому, либо допиливать какую-то готовую систему...

NiTr0 ★★★★★
() автор топика
Ответ на: комментарий от NiTr0

>Возможно. Но не для человека, который тесно занялся кластерами весьма недавно.

Почитай занятную книжечку http://www.clusterlabs.org/doc/en-US/Pacemaker/1.1/html-single/Clusters_from_...
После нее даже новчику в pacemaker'е многое становится понятным, проверено на добровольцах.

Это решение показалось самым очевидным - ввиду того, что с iSCSI я тоже особо не сталкивался. Покопаю, попробую на десктопе в виртуалках собрать кластер...


Скажу тебе по секрету: это два краеугольных столпа, две враждующие школы. Одна школа учить хранить vd в обычных файлах и экспортировать их через NFS/GFS/OCFS, другая учит хранить их в блочных устройствах и экспортировать через iscsi, (g)nbd, fibrechannel, scsi и проч. Лично мне ближе и понятнее аргументы второй школы (меньше уровней — меньше оверхед и проще развертывание).

Скорее всего, репозиториев лишних навключал...


Скорее наоборот. extras — репа стандартная, и если на свежеустановленном центосе введешь yum install heartbeat, ты получишь малополезную кучу глюков. Один только epic fail с IPaddr в haresources2cib чего стоит. Я уже не говорю о веселухе от использования lsb-скрипта tgtd в качестве агента. Ну и crm shell там никакой.

В общем, ставь по инструкции от производителя (http://www.clusterlabs.org/rpm/) и береги нервы.

Я тогда не нашел даже с какой стороны к нему правильно подступиться.


Для начала рекомендую http://markelov.blogspot.com/2008/12/ha-rhcs-gfs-rhel-5.html
Только учти, что редхатовский подход к кластерам обычно не очень-то беспокоится об отказоустойчивости хранилища, больше концентрируясь на обеспечении параллельного доступа к нему.

nnz ★★★★
()
Ответ на: комментарий от dimon555

>sheepdog новость на опеннете вроде висела.

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

Но по сравнению с отвратительно масштабируемым drbd этой действительно гигантский прыжок вперед.

nnz ★★★★
()
Ответ на: комментарий от nnz

Оу, йее! Тема про НА!! Как раз хотел создавать свою для вопроса, ну спрошу тут.

Вобщем, есть задача изобразить failover для машины (назовем ее шлюзом).
Есть у этого шлюза два интерфейса: внешний и внутренний. На первый взгляд, всё просто - pacemaker, ipaddr2, и всех дел.

Но, на внутреннем интерфейсе навешано vlan-ов некоторое количество. В нете вдиал мельком, что всё just works, только не описано, как...

Что-ли надо сначала насоздавать вланов на каждом хосте, присвоить им реальные адреса, а потом кластерный ip гонять с помощью pacemaker-а? Или в нем есть какой агент для управления вланами, что-то не нашел пока...

Заране спасибо!

aol ★★★★★
()
Ответ на: комментарий от aol

>Что-ли надо сначала насоздавать вланов на каждом хосте, присвоить им реальные адреса, а потом кластерный ip гонять с помощью pacemaker-а?

Полагаю, что именно так. В конце концов, с точки зрения pacemaker'а, это обычные сетевые интерфейсы, зачем им специальный агент? Не лезет он в тегирование трафика, этим ядро занимается.

nnz ★★★★
()
Ответ на: комментарий от nnz

мерси, буду попробовать...
просто там всё усугубляется еще тем, что есть некоторое количество правил в iptables, которые привязаны к кластерному ip. Вобщем, надо уже пробовать! %)))

aol ★★★★★
()
Ответ на: комментарий от aol

Смотря какие правила. Обычно, если пакеты с нужным ip не приходят, то правила тихо стоят в сторонке и никому не мешают.
Но если эти правила обязательно должны быть там же, где и (ресурс) айпишник, задача решается довольно красиво — рисуешь свой агент в стиле OCF или даже LSB, а затем с помощью order constraints связываешь его с примитивом адреса.

nnz ★★★★
()
Ответ на: комментарий от nnz

>Почитай занятную книжечку

Спасибо, ознакомлюсь.

Скорее наоборот. extras — репа стандартная, и если на свежеустановленном центосе введешь yum install heartbeat, ты получишь малополезную кучу глюков.

Я подключал clusterlabs репу - но скорее всего из-за включенной репы extras получил в итоге непонятно что, которое толком сконфигурировать и запустить не удалось.

NiTr0 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.