вторник, 1 декабря 2009 г.

Домашний сервер All-In-1 в качестве тестового полигона

Сегодняшнее повествование будет несколько отличаться от привычных вам статей на VM Press. Не будет в нем примеров настройки или описания какой-либо технологии или продукта. Вместо этого я расскажу о своем домашнем виртуальном сервере.


Помню, как год назад был рад, когда, наконец, задушил свою жабу и собрал отдельный тестовый полигон. Потому как бы не был хорош мой настольный компьютер с VMware Workstation 6.5, но душа желала чего-то большого и производительного. Этим чем-то стал самосборный сервер:

  • четырехъядерный процессор Intel Core 2 Quad Q6600;
  • мат.плата Asus P5BV-E (с двумя гигабитными сетевыми адаптерами Broadcom BCM 5721 и интегрированным SATA контроллером ICH7R);
  • память 8 Gb DDR-II 800Mhz;
  • дискретный 8-канальный SATA/SAS Raid-контроллер Intel SRCSASRB с 256Mb кэш памяти;
  • три жестких диска SATA - WD 1001FALS 7200RPM 32Mb.
Все это было собрано в хорошем корпусе с качественным БП, довольно тихим куллером и вентиляторами.

Неплохая, как мне тогда показалась конфигурация, ибо раскошеливаться на S771 процессор/FBDIMM память/и соответствующую мат.плату было выше моих финансовых возможностей, радовала меня первые полгода. :)

На сервер был поставлен ESXi 3.5 U3. Подбирались комплектующие как раз исходя из требований совместимости (спасибо Tim'у Jacobs'у за его статью). Другие решения виртуализации я также рассматривал (VMware Server 2.0, Windows Server 2008 + Hyper-V/Hyper-V Server R1, Citrix Xen Server 5.0), но все они по тем или иным причинам не подошли. Решающими для меня стала поддержка Memory Overcommit и наиболее удобная, на мой взгляд, работа с шаблонами виртуальных машин через vCenter. На ESXi были подняты две служебные машины - Windows Server 2003 в качестве контроллера домена и сервера VMware vCenter 2.5 U3 и Windows Server 2008 - файловый сервер.

Сами виртуальные машины (служебные, а потом и тестовые) ютились на одном единственном 640Гб жестком диске. Три терабайтных жестких диска были объединены в массив RAID 5 силами Intel SRCSASRB, затем разбиты на два LUN'а по терабайту (условно для software и media) и проброшены внутрь ВМ при помощи RDM. Не то, чтобы я не доверял файловой системе VMFS, но при возникновении какой-либо внештатной ситуации мне хотелось быстро и просто получить доступ к моим данным. Да, и я очень удивился скорости записи контроллера на диски в режиме Write Through (~14 Mb/sec), так, что пару раз хотел заехать молотком по несчастной железке, благо, режим Write Back, оказалось, можно включить без батарейки (которая позже все же была куплена, во избежание). И еще эта диагностика контроллером всех дисков в случае простоя, которая вымораживала меня на протяжении двух недель, пока не удосужился прочитать инструкцию и отключить.

Кроме того, на виртуальном сервере был настроен NFS и для ESXi расшарена папка с ISO образами для подключения через консоль Infrastructure Client.

При такой организации, служебные виртуальные машины и сам ESXi отъедали 1.5-2Гб от оперативной памяти и совсем немного мегагерц от процессора, оставляя для экспериментов достаточные вычислительные ресурсы. Однако, как я уже сказал, доволен я был этим сервером полгода.

Во-первых, о том, чтобы обстоятельно протестировать другие гипервизоры (Hyper-V, Xen Server) пришлось забыть. Кхм, скажем так - даже кратковременное отсутствие виртуальной машины, на которой хранился весь мой софт, музыка, фильмы, делало меня очень грустным.

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

В-третьих, возник вопрос об удаленном доступе к серверу и виртуальным машинам. Долгое время я ограничивался простой публикацией RDP на одной из виртуальных машин с установленной консолью Infrastructure Client. Надо сказать, что работать так с виртуальными машинами - удовольствие сомнительное, консоль ощутимо притормаживала, что при открытии в RDP сессии, что при более изощренном доступе через TS Remote Apps, что при TS Gateway. Чуть позже начал использовать возможность подключения к виртуальной машине по протоколу VNC - даже внутри RDP сессии управление стало намного приятнее. Один недостаток - приходилось вручную править .vmx файл настроек и запоминать порты для подключения.

И все это происходило на фоне моей постоянной и неуемной страсти к покупке новых железок. Я всерьез начал прикидывать во что мне обойдется апгрейд на платформу Intel S1366 с Xeon E5520 и 16 Гб памяти. Останавливало меня от этого шага только отсутствие вменяемых корпусов, в которых бы разместилась полноразмерная серверная E-ATX плата. Короче, голос разума победил.

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

Поэтому в ожидании подарков от Деда Мороза решил обновиться до ESXi 4.0. 640 Гб диск был заменен на 1 Тб, а сам ESXi был установлен на flash накопитель (что чертовски удобно). Все виртуальные машины переставлены заново.

Из-за требований vCenter 4.0 не может быть установлен на контроллере домена. Поэтому пришлось установить его на Windows 2008 Server R2. И вот тут возникла одна неприятная особенность - при установке драйвера для виртуальной видеокарты из комплекта VMware Tools машина начинала периодически зависать. Поиск в Google быстро решил проблему.

А через несколько дней стал доступен Update 1, который позволил нормально создавать машины Windows Server 2008 R2 и Windows 7 из шаблона и подготавливать их с помощью Customization Specification. Надо ли говорить, что благодаря поддержке Thin Provisioning из GUI я смог легко уменьшить место занимаемое виртуальными машинами, не мучаясь теперь с командной строкой и ssh. Стоит отметить и негативную сторону данного события - я начал забывать параметры команды vmkfstools. :)

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

На этой позитивной ноте я заканчиваю свой рассказ. Надеюсь, что он был не слишком утомителен.

2 комментария:

  1. В подобных метаниях я выбрал MB с Intel ME (AMT), чтобы использовать VT-d, что очень полезно. Для хранения root-ов виртуальных машин поставил SSD - машинки летают.

    ОтветитьУдалить
  2. а картинки где, картинки?

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