LINUX.ORG.RU

HA виртуализация на KVM


0

1

Приветствую,

Есть несколько сервисов: (1) freeswitch, (2) samba, (3) w2k3 terminal (1c dbf), (4) несколько w2k3 на которых крутится специфичный софт.

Сейчас все это крутится на зоопарке обычных pc. Часть в виртуалках на тех же писюках.

Нагрузка в основном генерируется (3). Остальное железо сейчас почти всегда в простое.

Руководство морально созрело на покупку «нормального» железа.

Сейчас смотрю в сторону hp dl380g6 в количестве 2-3х штук.

Необходимо сделать так что-бы все это работало и в случае сбоя одного физического сервера, могло продолжить работать на втором.

Из того, что смог найти в интернете (здесь на форуме в том числе) понял что вариантов по сути 2: 1) 1 Общее хранилище (например iscsi) + 2 ноды kvm 2) 2 ноды kvm + drbd

в решении (1) смущает что имеем единую точку отказа (хранилище) в решении (2) пугает скорость работы drbd при работе с 1с (DRBD актив-актив в продакшене у толковых парней, помогите советом)

Есть ли еще какие-то варианты?

Еще как решение проблем с drbd видел предложение использовать infiniband. Насколько это поможет?

Можно ли по infiniband соединить два (три) сервера без коммутатора?

(Три в случае что один из них сторейдж и имеет два порта/две карты)

Ну и последний вопрос: стоит ли закладывать sas диски или и обычные sata в случае с виртуализацией не будут узким местом.

Заранее благодарен


Ответ на: infiniband от Zur0

Правильным вариантом будет общее хранилище.При использовании правильных хранилищ они не являются единой точкой отказа,так как они архитектурно зарезервированы на всех уровнях:2 контроллера,2 дисковые полки,2 линка в сторону дисковых полок,2 линка в сторону SAN и т.д.Если есть деньги то однозначно надо брать отдельное хранилище и не мучаться с drbd.

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

На хранилище денег нет. В качестве хранилища предполагается все тот-же dl380g6 набитый винтами.

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

аа, ну это резко меняет дело. в результате у тебя так или иначе все равно будет очень тормозная репликация. советую вместо третьего сервера взять два простеньких хранилища и между ними репликацию, можно даже по обычному Fibre Channel, не обязательно на инфинибанд тратится - скорее всего такой скорости не потребуется. ну это если по производительности один сервер вытянет все твои виртуалки. если нет - то в дополнение к третьему серверу, а не вместо. дополнительный бонус - второй сторедж можно со временем вынести на другую площадку и сделать таким образом DR.

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

> взять два простеньких хранилища и между ними репликацию

Можно пример?

Все что нахожу никак меньше 4k$ не получается.

А так в эти деньги тот же сервер и входит.

Может слова для гуглежа не те использую... Тема для меня вообще новая, с «большим» железом сталкиваться не приходилось.

Zur0 ()

freeswitch тоже хочешь в виртуализировать?

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

Мысль такая есть. Сейчас хост на котором он крутится почти всегда в простое. (какой-то двухголовый athlon).

Как мне видится проблема с ним может возникнуть только с записью разговоров (и то очень сомневаюсь)

Zur0 ()

почитал комменты, с таким бюджетом вы еще не созрели для перехода.

во первых избыточность по хостам не рассчитана на две ноды - две ноды будут нормально держать весь «зоопарк», но что будет с одной нодой если вторая упадет, и все ВМ запустятся на одном хосте? рассчет надо делать из как минимум одного хоста который может безболезненно упасть

во вторых, вы посчитали кол-во CPU, RAM и IO которые надо поддерживать на этих хостах? возможно простых НР начального уровня не хватит, и надо что то посерьезнее, или хостов побольше?

в третьих, сторедж - подсчитав IO можно начать говорить сколько и каких дисков требуется, сколько контроллеров и какая ширина полосы доступа нужна и т.д., а вот так от фонаря - очень вряд ли

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

с таким бюджетом вы еще не созрели для перехода.

Это самое печальное.

во первых избыточность по хостам не рассчитана на две ноды - две ноды будут нормально держать весь «зоопарк», но что будет с одной нодой если вторая упадет, и все ВМ запустятся на одном хосте?

Особых проблем быть не должно.
Сейчас трудится:

1) core2quad 9550  + 4gb ram + raid1 (sata 250gb) — Терминальный (основное io здесь)
2) Athlon x2 x245 + 4 gb ram — freeswitch 
3) Athlon x2 240 + 2gb ram — 3 w2k3 виртуалки с глючным софтом
4) Athlon 64 x2 3800 + 4 gb ram --- samba (обычно чтение, записи мало, нагрузка минимально, сервис не критичен)

Хотелось бы вынести несколько клиентских десктопов так же на сервера. Они и сейчас загнаны в виртуалки, но на местах.
На хосты планирую:
HP DL380G6: 2x Xeon 5540 + 24 gb ram - по тем ценам что мне дали около 135 kRUR без винтов.

Т.е. по CPU и RAM проблем не будет.
Самое сложное для меня понять что будет с IO. И не понятно как его планировать, на что вообще рассчитывать, что можно получить.
Бюджета пока толком и нет. Нужно озвучить сумму (но по опыту общения со своим руководством знаю что с хранилищем пошлют подальше). Отсюда и терзания что делать.

PS Что делать с дисковой подсистемой для меня совсем не понятно.
PPS Основное чего хочется добиться от всего этого это HA для терминального сервера и freeswitch.

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

из личного опыта выбивания бюджетов, надо требовать по максимуму, то есть не только нормальный СХД на FC но и софт с поддержкой, а не наколенные поделки (заодно и проблема с HA решится без лишних заморочек). ну а если потом остановиться на iSCSI вместо FC, и (например) RHEV вместо vsphere, так оно все равно лучше чем то с чего вы начинали разговор.

что касается IO, то тут все немного сложнее - надо начать замерять уже сейчас, собирать статистику, чтоб предъявить конкретные цифры. iostat и виндовые счетчики вполне могут показать примерную картинку, из которой можно начать рассчитывать кол-во и скорость спиндлей, и скорость доступа к ним.

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

>HP DL380G6: 2x Xeon 5540 + 24 gb ram - по тем ценам что мне дали около 135 kRUR без винтов.

Звиздец цена. С Луны чтоль везди будут? Не проще ли взять что-нибудь вида SuperMicro или Tyan? На днях считал по цене сервер с 32Г памяти + 4 х 300Г или 600Г 15K SAS диска и на каких-то 56xx Интелах, у которых тоже 4/8 ядер. Получалось что-то в районе 100К в рублях.

Хотя я бы на данный момент взял что-нибудь из серии Е3/Е7 - в плане виртуализации они сильно шибко быстрее старых 5ххх для виртуализации вендов.

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

iostat и виндовые счетчики вполне могут показать примерную картинку, из которой можно начать рассчитывать кол-во и скорость спиндлей, и скорость доступа к ним.

Завтра к вечеру получится собрать реальную статистику с виндов под нагрузкой. На остальное тож гляну, но уверен, что там на 99% простой.

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

за день все пики не проявятся, надо хотя бы недельку-три погонять чтоб понять реальные пиковые нагрузки

надо ведь принимать во внимание ММ-эффект, IO генерируемое бекапами и т.п.

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

за день все пики не проявятся, надо хотя бы недельку-три погонять чтоб понять реальные пиковые нагрузки

Естественно. Но хоть какое-то понимание будет, а не пальцем в небо.

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

У меня похожая ситуация, только с астериском, думаю в виртуалку засунуть. А что за инсталяция на freeswitch'е, можно в двух словах,зело интересно: сколько клиентов, что используется в качестве endpoints (ip-телефоны, VOIP-GW), выход в мир через что (sip,E1), факсы и t38 (терминация). Как реализован доступ к cdr и записям разговоров, на каком дистрибутиве всё это крутится и какая версия fs, в конце-то концов.

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

Город приходит по sip. Абоненты сидят на 2ух linksys SPA8000 (13 абонентов). Есть еще 3 старые линии на SPA400 (только на прием).

Выход на город в 3 канала. Факсы вроде без проблем, T38 не трогал. Кодек везде g711. CDR и запись разговоров через web интерфейс (fusionpbx)

Одновременно не видел больше 4х разговоров.

FreeSWITCH version: 1.0.head (git-86d757d 2011-05-17 22-51-47 -0500) Крутится на ubuntu 10.04.

Это был тестовый запуск на одном из наших офисов. Сейчас буду запускать в главном: ~40 абонентов, 5-7 каналов в город (то-же SIP). Телефоны планирую sip (смотрю на dlink dph-150 и dph-400 и на dect-ip сеть на kirk 6000)

На первом этапе хочу связать эти два fs между собой. В дальнейшем (где-то через год) переедем в одно здание и один из них будет не нужен (тот который сейчас в эксплуатации).

Через два года добавится еще абонентов 30-40.

Zur0 ()
Ответ на: комментарий от dyasny

Посмотрел статистику на freeswitch (с самого начала поднимал munin):

- read
+ write
                    min (-/+)         avg (-/+)          max (-/+)
block per second:     0/31            300m/46           578/2

                      min             avg                max 
cpu usage:
  system              0.6             1.25              12.55
  user                0.56            1.37              22.71
  iddle               206.31          216.85            225.95
  iowait              0.15            0.32              0.62

                     min               avg               max 
load average:         0.00            0.08              0.56     
Zur0 ()
Ответ на: комментарий от Zur0

>Самое сложное для меня понять что будет с IO. И не понятно как его планировать

Я тебе расскажу, как планируют ИО в одной известной компании. По iostat/sar/whatever вычисляешь, сколько тебе нужно операций ввода/вывода, делишь на 180(цифра может отличаться - сделай поправку на слабую память, слышал иногда 300, но может быть слишком оптимистично; вероятно правильное число >= 1сек/(время выполнения используемым диском случайной операции)), получаешь количество дисков, по которым нужно разбросать данные. Добавить очевидную поправку на рейд (тип, %записи,вероятно так же можно учесть влияние DRBD). Если у тебя операции ввода/вывода большие, стоит ещё посмотреть на ширину шин, по которым оно качается - но скорость прокачки порнухт редко бывает критичной, т.ч. можно забить. Больше ты ничего угадать не сможешь, степень тормознутости того же контроллера продавцы не сообщают.

При выборе SuperMicro/Proliant я бы выбрал второе, по причине негативного опыта с первым как раз по вводу/выводу - верояно этот опыт основывается на неправильном выборе контроллера, или кривых драйверах, но что было то было.

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

>>сколько тебе нужно операций ввода/вывода, делишь на 180(цифра может отличаться - сделай поправку на слабую память, слышал иногда 300, но может быть слишком оптимистично

300 это хорошие 15к sas диски, судя по комментам тс там этого и не светит. для 7.2к 150iops более чем оптимистичная цифра, 120 ближе к реальности, а на практике обычно ещё меньше.
кол-во iops с диска обычно считают любой формулой ниже:

iops = rpm / 60 - грубо
iops = 1 / ( average latency + average seek time ) - нижний предел
iops = 1 / ( average seek time ) - верхний

EvgGad_303 ★★★★★ ()

2 DonkeyHot 2 EvgGad_303

Спасибо. Как со своими потребностями определится более менее понятно.

Теперь не понятно сколько можно получить iops от определенного железа. Например есть разные хранилища с iSCSI интерфейсом (тут же написано 1 gig ethernet) Я так понимаю на стороне ноды, втыкается просто в сетевую? Или в специальный HBA?

Что этот интерфейс может выдать? (iops, пропускную способность) Насколько я понял, что если схд будет на FC то в сервера нужно ставить HBA. Нужно ли что-то кроме hba или можно подключать напрямую кабелем?

4к? с таким бюджетом увы нет.

Озвучили бюджет на новый офис: около 30 k$ на все. Т.е. коммутаторы, sip телефоны, бесперебойники, сервера...

По подсчетам на сервера остается около 14-15 k$

Zur0 ()

Нашел как вариант:

http://www.supermicro.com/products/nfo/sbb.cfm

Система хранения данных Supermicro 6036ST-6LR: 357888 р

Supermicro 6036ST-6LR,3U Storage Bridge Bay,DDR 3 Reg, 16xSAS/SATA, Fully Redundant System,1200Wt	1			
Xeon E5603 1.6 GHz/4M/LGA1366/4,8GT/s /4 ядра/80 Bт TDP	  x2			
HDD 3.5" 300GB SAS 2 15000RPM	                                          x12	--- на этом будет крутится то что критично к io		
HDD Enterprise 3.5" 3Tb SATA 7200 RPM	                                  x4	--- помойка		
8GB 1333MHz DDR3 ECC Reg	                                          x6

Схему вижу такую: drbd (10 gige) + 10 gige в сторону хостов.

Хосты (2) такие: 46688 р

Case Supermicro SC813MTQ-350CB Rackmount Chassis, 4xSAS/SATA,350W				
Supermicro X9SCL-F Intel				
Xeon E3-1270 CM8062307262403 3.40/8M/ LGA1155 Tray			
4GB 1333MHz DDR3 ECC CL9 DIMM	                                         x4	

Насколько разумно по деньгам (связываться с Supermicro 6036ST-6LR)? Есть варианты дешевле (платформы при условии отказоустойчивости)?

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

> Я так понимаю на стороне ноды, втыкается просто в сетевую? Или в специальный HBA?

iSCSI работает через обычный IP, т.е. в твоем случае скорее всего «обычная сетевая».

Что этот интерфейс может выдать? (iops, пропускную способность)


если считать что бутылочным горлышком будет именно интерфейс, то максимальная пропускная способность будет примерно равна максимальной пропускной способности интерфейса, т.е. для GBE реалистично ~100MBps. тут есть неприятный нюанс. и пропускная способность, и тем более иопс будут сильно зависить от загруженнсти каналов и транзитного оборудования, это первая и основная причина использовать полноценный САН с выделенной сетью. а если уже все равно строить выделенную сеть и все равно на оптике, то зачем использовать езернет вместо FC/IB?

вам прийдется выбирать между дополнительной стоимостью и большей сложностью в администрировании и прогнозируемотью поведения ИО.

Насколько я понял, что если схд будет на FC то в сервера нужно ставить HBA. Нужно ли что-то кроме hba или можно подключать напрямую кабелем?


да, нужны HBA, еще SAN-свитчи ну и кабели понятное дело.

По подсчетам на сервера остается около 14-15 k$


честно говоря в данном ценовом диапазоне мне сложно что-либо посоветовать. я бы наверное собирал iSCSI на опенсолярке на самозборе, использую такое дома, - но вполне верояно более осведомленные люди посоветуют варианты получше. про озвученные модели супермикро сказать ничего не могу. меня бы немного напрягал СПОФ в виде одного аррея, но понятно что у бизнеса может не быть денег на ДР и full redundancy, и допустимость аутеджа на замену компонентов стореджа может быть финансово оправдана.

val-amart ★★★★★ ()
Ответ на: комментарий от Zur0

> Схему вижу такую: drbd (10 gige) + 10 gige в сторону хостов.

не забудьте 10ГЕ свитч посчитать.

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

>не забудьте 10ГЕ свитч посчитать.
Думал для начала:
два хоста drbd линком 10GigE между ними + 2 двухпортовые карты на 10GigE

+ два хоста виртуализации с двухпортовымим картами.

Все соединения кросс-кабелем.

В дальнейшем при увелечении кол-ва хостов под виртуализацию ставить 10gige коммутатор.

Сейчас еще нашел вроде не дорогое хранилище: IBM System Storage DS3400 Dual Controller 172642X

Можно ли сейчас подключить SAN-> FC-HBA@Хост напрямую (если два хоста), а при расширении взять FC коммутатор?

Можете что-то сказать про это хранилище? Стоит связываться?

По DRBD: А если от него отказаться и использовать такую схему:

Два хоста которые крутят виртуалки с винтами. Линк 10ge/FC/IB кросс-кабелем.
На них поднять glusterfs (по статьям из интернета вроде подходит, но видел что ее зачем то поднимают еще и поверх drbd).

В нормальной ситуации каждый сервер крутит свой набор виртуалок, но они с помощью glusterfs реплицируются на вторую.
Как результат по идее: каждый работает с (локальными дисками) - (оверхед на репликацию glusterfs)

В случае сбоя одного из них, поднимем все/(самые важные виртуалки) на живом хосте.

Если хосты добавляются, то ставим 10gige/FC/IB коммутатор и добавляем хост. Он так же начинает решать свой набор задач.

Вопросы по варианту с glusterfs:
1) Такая схема жизнеспособна?
2) Насколько большой оверхед вносит glusterfs
3) Что можно «выжать» из такой конфигурации

Если кто имел опыт работы с glusterfs, то интересно было - бы узнать про нее подробнее: глюки, стабильность, загурзка cpu, пропускная способность, iops на 10 gige/IB/FC

ЗЫ Не получается найти внятных тестов производительности ни drbd ни glusterfs. Попадается только плач в мейл-листах...
ЗЗЫ Сам бы с удовольствием потестировал, но железа нет.

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

> Сейчас еще нашел вроде не дорогое хранилище: IBM System Storage DS3400 Dual Controller 172642X

недорого - это сколько? вроде бы в ваш бюджет не входит, если вместе с двумя серверами? если входит - то отлично. конкретно с этой моделью не сталкивался, но сторедж от ibm'а хорош, рекомендую. и модель эта выглядит вкусно, как для такой цены.

за интерконнекты без свитчей: езернет будет работать, ФЦ - не знаю.

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

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

недорого - это сколько? вроде бы в ваш бюджет не входит

130 тыр. Без винтов.

Учитавая ситуацию с винтами сейчас (цены сильно взлетели) думаю на первоначальном этапе взять их по минимуму (4 x SAS 15k) а черз пол года забить полку полностью.

+ 2 сервера на супермикро: Xeon E3-1270 + 16gb ram (больше не лезет) --- 58 тыр.
+ 2 FC-HBA QLA2440-CK 4Gbps Fibre Channel to PCI-X 2.0 HBA, Single Port, Optic --- 25 тыр
Итого: 130 + 2x58 + 2x25 = 296 + винты.
В бюджет проходит.

глистер - я не стал бы. хотя это чисто мое имхо, есть и успешные инсталяции, наверное попробовать стоит.

Был негативный опыт?

колд стендбай - это потеря всего чего не было на диске на момент падения.

FT не нужно (не те задачи, не тот бюджет) Так что приемлемо.

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

> Был негативный опыт?

да, на тестовом стенде. производительность удручала.

+ 2 сервера на супермикро: Xeon E3-1270 + 16gb ram (больше не лезет) --- 58 тыр.


16Гб без возможности расти еще? зависит от задач конечно, но у нас на большинстве ESX серверов в первую очередь не хватает памяти, при том что там 64гб. было бы больше памяти - воткнули бы больше виртуалок, процессоры и так не загружены даже на 50%. я не знаю что там за специфичный софт на виндах на который ты ссылаешься, но что терминальник с 1с, что тем более самба не требовательны к цпу, а вот памяти сьесть могут будь здоров - особенно самба под файловый кеш. я бы посикал модели с более дешевым цпу (амд?) но большим кол-вом рама или хотя бы возможностью нарастить.

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

[qutoe]я не знаю что там за специфичный софт на виндах на который ты ссылаешься,

Да он не требователен ни к cpu ни к ram. Ему просто «прописано» жить на «голой» системе. Ибо глючит дико если рядом что-то еще есть.

Сейчас крутится на виртуалке с w2k3 с 384 мб рам.

я бы посикал модели с более дешевым цпу (амд?)

Какие модели amd сейчас актуальны (цена/производительность)?

С серверным железом не имел опыта общения, темный лес для меня сейчас...

Zur0 ()
Ответ на: комментарий от val-amart

>да, на тестовом стенде. производительность удручала.

Какая среда передачи? Что получилось в итоге с производительностью?

Какая версия gluster была?

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