среда, 9 июля 2008 г.

Выбор серверного оборудования для VMware ESX

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

1. сетевых портов должно быть не менее 2х, причем от 2х сетевых карт. Лучше больше, и нормальная рабочая конфигурация, хотя и немножко экономная – это 2 2х-портовых карты. В виртуальном свитче рекомендуется по-возможности комбинировать порты от разных карт. Почему? Просто потому что одна может сгореть и очень вероятно, что сгорят все ее порты целиком, и у нас тогда останется еще одна.

Сетевая конфигурация в данном случае как best practice: 2 виртуальных свитча, на одном сервис-консоль и vmkernel, на втором виртуальные машины. На каждый свитч два сетевых порта, по одному от каждой физической сетевушки. Причем для свитча с консолью и vmkernel назначить использование следующим образом: для сервис-консоли активная NIC0, standby NIC1, а для vmkernel наоборот.

2. памяти должно быть много. Нет, даже не так. Памяти должно быть МНОГО! С учетом широкого распространения многоядерных процессоров, однопроцессорный хост сейчас может обслужить изрядное количество виртуальных машин, а все они хотят память. Из расчета 4 машины на ядро для 2-сокетного 4-ядерного сервера получается 32 машины, вот сами и считайте сколько нужно гигабайт.

3. с точки зрения резервирования 3 средних сервера лучше, чем 1 супер-зверь. Все иногда умирают, и в случае 3х серверов мы потеряем лишь треть ресурсов, в случае 2х – половину, а с одним супермонстром все сразу. И работа встанет.

4. 2 2х-ядерных или 1 4х-ядерный процессор? Или больше?

Вопрос о лицензировании достаточно простой: хотя VMware продает лицензии только по 2 процессора, разрешается их разбивать для односокетных серверов. По опыту эксплуатации виртуальных машин, собственному и почерпнутому на стороне – процессор для вас не будет лимитирующим фактором. Им станет ПАМЯТЬ.
Разумеется, если задачи у вас общего плана, а не чисто вычислительные, но эту специфику лучше знать вам, я высказываю общие соображения. Приводится зачастую аргумент, что в случае 2*2 у нас может сгореть процессор, и мы будем работать, а вот 1*4 - все, встанем. Встанем в любом случае, Hot-swap процессоров VMware и абсолютного большинство серверов пока не поддерживают, а вот лицензия на все те же 4ядра будет стоить вдвое дороже, посколько лицензируемся мы по сокетам. А что это значит в итоге? А в итоге получается, что при использовании 1*4 серверов мы сможем за те же деньги получить VI Enterprise с VMotion, DRS и т.д… В случае же 2*2 только VI Standard.


5. какие процессоры выбрать?

Ответ простой: если вы точно не знаете, что именно будете делать на этих серверах, то берите процессоры с бОльшей частотой и бОльшим кэшем. Т.е. для Intel Xeon 5x серия для общих задач будет лучше, чем 7x – у них выше частота. Если же вы знаете, что вам нужны именно 7x Xeon, и зачем они вам нужны, то текст явно не для вас.

6. стоечный сервер или блейд?

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

Итак, стоечные серверы HP.

- 1 сетевой порт iLO
- 1 порт сервис-консоли (лучше 2)
- 1 порт vmkernel (лучше 2, и/или 2 порта Fibre Channel). Причем еще лучше
2 VMotion и 2 IP Storage порта.
- 2 порта production

От 5 сетевых портов (минимум) до 7 сетевых и 2х FC портов на один (!) сервер. + ровно такое же количество портов на свитчах и такое же количество кабелей. А у нас ведь есть еще Virtual Center и VCB-Proxy. Согласен, их можно запустить и на виртуальных машинах при определенных условиях, но… Итого 3 порта VC, 3 порта VCB (+ 2 FC) и 3*5 портов ESX (+ 3*2 FC) = 21 Ethernet и 8 FC портов. Это в минимуме, а в хорошо резервированной конфигурации цифры другие: 3+3+3*9 = 33 Ethernet + 8 FC портов. И это лишь для 3х ESX серверов. Что делать, если их станет 5, 8, 10? В кабелях не запутаемся?

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

7 комментариев:

  1. Начало хорошее :) Но ещё осталось про системы хранения расказать т.к. это тема не маленькая, то наверное в виде отдельного поста будет в самый раз.
    Хотелось бы услышать про сами типы хранилишь (в чём различия, какой-лучше применять в тех или иных ситуация, примерный ценовой диапазон, надёжность и т.п.)
    P.S.
    Честно говоря это самый больной вопрос у меня т.к. ESX и ESXi не умеют работать с IDE и SATA c которыми я знаком и умею ориентироваться в их характеристиках.

    ОтветитьУдалить
  2. Боюсь, с системами хранения не получится так же просто и понятно. Но постараюсь по мере возможности что-то писать на тему.

    ОтветитьУдалить
  3. Можете подсказать, к какому шаблону выбора оборудования более близок VmWare Virtual Server? Ближе к файловым серверам или к базам данных или к чему-нибудь ещё? На что обращать внимание?

    Про ESX`ы можно почитать много где, а вот эта тема не сильно популярна.

    ОтветитьУдалить
  4. Не совсем понял вопрос. Для VMware Virtual Server вообще практически нету вопроса с оборудованием - оно все управляется хостовой ОС.

    ОтветитьУдалить
  5. Здесь вопрос не совместимости, а производительности. Например, некоторые RAID-контроллеры быстрее на потоковых операциях, а другие - на случайных, и т.д.

    ОтветитьУдалить
  6. Virtual Server никак не связан с оборудованием. Вот просто совсем - и из этого следует все остальное.

    Надо базу - на нем можно развернуть и базу. И в продакшн даже, только надо четко представлять себе какая от базы потребуется производительность. Сам Virtual Server однозначно замедлит работу и введет дополнительные задержки, поэтому единственный вариант - поставить на конкретный сервер Virtual Server и измерить. В данном случае в большей части все зависит от оборудования, чем от выбора ESX/Virtual Server.

    Virtual Server - это бесплатная платформа, не имеющая по определению некоторых очень интересных плюшек, таких как VMotion, но имеющая другие. Виртуальные машины под Virtual Server не так ограничены как в ESX, есть поддержка USB и прочего.

    Главный вопрос: а зачем Вам виртуализация? Подумайте - нужна ли она Вам вообще, и только потом выбирайте на какой платформе. Далеко не каждую машину нужно виртуализовать.

    Если есть какой-то конкретный вопрос - не стесняйтесь его задать. Общие слова останутся просто словами.

    ОтветитьУдалить
  7. Анонимному товарищу:
    Честно говоря это самый больной вопрос у меня т.к. ESX и ESXi не умеют работать с IDE и SATA c которыми я знаком и умею ориентироваться в их характеристиках.
    На самом деле ESX-серверу любой редакции пофиг, какие у вас диски. Главное - это какой контроллер. Если он умеет работать с дисками по протоколу SCSI, то все ок. Как он общается с дисками, это уже его забота. Так что приобретая сервер с нормальным контроллером SAS вполне возможно использовать дешевые диски SATA. Но как правило стоимость беаперебойной работы инфраструктуры гораздо выше, чем стоимость оборудования и ПО, на котром вертится ваше все

    ОтветитьУдалить