понедельник, 26 сентября 2011 г.

VMware VCP 5

На прошлой неделе у меня появилось немного свободного времени, поэтому я решил обновиться до VCP 5. Благо, как и в случае апгрейда VCP 3 -> VCP 4, все, что требуется нынешним обладателям статуса - это успеть до февраля сдать экзамен VCP-510.

Экзамен все также сдается в тестовых центрах VUE (я сдавал в Москве, в УЦ Softline) и стоит 175$ за попытку сдачи. Экзамен включает в себя 85 вопросов, на которые отводится 90 минут (+30 минут для тех, у кого английский не родной язык, а также +15 минут на предварительный опрос).

Экзамен достаточно сильно отличается от VCP-410. Во-первых, он стал сложнее. Если в предыдущем экзамене мне попалось достаточно много вопросов на максимумы и на командную строку, то в новом их было от силы штук 5 (возможно мне так повезло).

Во-вторых, поменялся подход - теперь в вопросах частенько описывают некую ситуацию или показывают картинку и спрашивают "что следует делать?". Т.е. текста, который требуется прочитать и понять стало больше. В итоге первый прогон мне удалось завершить за 1.5 часа, так что дополнительное время оказались как нельзя кстати.

В-третьих, в отличии от VCP-410 мне не встретилось ни одного вопроса по VMware vShield, VMware vCenter Orchestrator или VMware SRM, но было много вопросов по новым технологиям и продуктам, появившимся в vSphere 5. Многие вопросы строятся на знании отличий 4-й версии от 5-ки.

В-четвертых, просто немыслимое количество вопросов с несколькими вариантами ответов, мне показалось, что их даже больше, чем вопросов с одним вариантом ответа.

При подготовке я пользовался документацией с сайта и VMware VCP510 Exam Blueprint. В качестве тестовых вопросов я использовал VCP on vSphere 5 Mock Exam и VCP5 Practice Exams, но оба оказались довольно далеки от вопросов в реальном экзамене.

Итоговый результат: 400 из 500 возможных, с чем себя и поздравляю.

P.S. интересно, как скоро VMware обновит VCAP до 5-ой версии? :-)

понедельник, 19 сентября 2011 г.

VMware vSphere Storage APIs for Storage Awareness для СХД HP

Одним из нововведений, появившихся в vSphere 5.0, стал vSphere Storage APIs for Storage Awareness (VASA), позволяющий администратору упростить процедуру выбора хранилища для размещения виртуальных машин. Если раньше администратор мог полагаться только на свою хорошую память, либо на политику именования хранилищ, что, как правило, могло приводило к названиям вроде "01_HP_P2000G3_iSCSI_RAID5_SAS_NOREPL_LUN0", то теперь стало возможным видеть и другие параметры хранилища (т.н. Storage Capabilities, например: интерфейс подключения СХД, уровень RAID массива, поддержка репликации, физическое расположение, поддержка "тонких" томов и т.п.) прямо из интерфейса vSphere Client.

Все параметры хранилища разделяются на два типа: системные (system), определяемые производителем системы хранения, и пользовательские (user-defined), задающиеся администратором виртуальной инфраструктуры. Для каждого хранилища может быть предопределено несколько системных параметров и только один пользовательский параметр.

Для отображения параметров хранилища требуется зарегистрировать провайдера (Storage Provider) соответствующего производителя СХД. Так, например, для СХД производства HP (HP Storageworks P2000, P4000, EVA, XP) служба провайдера входит в состав HP Insight Control Storage Module for vCenter версии 6.3 и выше, который доступен для загрузки с сайта HP.

Инсталляция HP Insight Control Storage Module довольно проста и не требует никаких специфичных навыков. После установки вам потребуется выполнить базовые настройки интеграции в Insight Control for vCenter Setup Wizard и добавить ваши СХД с помощью Storage Administrator Portal.

Далее с помощью клиента VMware vSphere зарегистрируйте HP Insight Control Storage Module в окне Storage Providers.

Вам потребуется указать URL к серверу в формате "HTTPS://<ИМЯ_СЕРВЕРА>:<ПОРТ>/vasa_provider_ws/vasaService" (порт по умолчанию: 3518), на котором установлен HP Insight Control Storage Module, а также учетные данные для подключения.

После завершения настройки в свойствах каждого хранилища появятся соответствующие ему системные параметры.

Кроме того, вы сможете создавать профили хранилищ, используя соответствующие системные параметры.

При создании ВМ и выборе соответствующего профиля вы сможете увидеть, какие хранилища соответствуют заданным требованиям.

Аналогично при переносе виртуальной машины с одного хранилища на другое.

четверг, 1 сентября 2011 г.

Загрузка VMware ESXi по iSCSI

Одним из нововведений, появившихся в VMware ESXi 4.1, стала возможность загрузки с iSCSI хранилищ с помощью сетевых адаптеров, поддерживающих iBFT (iSCSI Boot Firmware Table) и VMware Software iSCSI Initiator.

Однако, будьте внимательны если планируете использовать подобный вариант загрузки в VMware ESXi 5.0.

Так, например, с серверами HP Proliant BL460c G6 с интегрированными адаптерами NC532i (они же Broadcom NetXtrem II BCM57711E) такой вариант может не заработать. Причина заключается в том, что в новой версии ESXi, в качестве типа разметки диска используется GPT, а не MBR. Существующая версия загрузчика iSCSI Boot (v4.2.10) не поддерживает GPT диски, выводя при загрузке сообщение: [iBoot-04]: Bootable partition is not found.

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

понедельник, 29 августа 2011 г.

Переполнение базы VMware vCenter из-за vSphere Management Assistant

Недавно мы столкнулись с проблемой черезмерного роста базы VMware vCenter Server.

Все началось с того, что один из серверов ESXi в нашей тестовой лаборатории упал в 'пурпурный экран смерти'.

По коду ошибки удалось определить и устранить проблему, однако, после перезагрузки никаких журналов событий на сервере ESXi не сохранилось. Было решено вести централизованный сбор журналов с помощью vSphere Management Assistant. Сказано - сделано, несколько команд в консоли (решили заодно собирать журналы с сервера vCenter), проверка, что журналы в vMA обновляются, и о проблеме забыли. Пока через несколько дней внезапно не отключился vCenter Server.

Журнал приложений в Windows показал, что база vCenter заняла максимально возможные 10 Гб (в качестве СУБД мы используем Microsoft SQL Server 2008 R2 Express Edition), что, собственно, и послужило причиной остановки vCenter.

С помощью сценария мы быстро определили размер всех таблиц в базе.
SET NOCOUNT ON

DBCC UPDATEUSAGE(0)

-- DB size.
EXEC sp_spaceused

-- Table row counts and sizes.
CREATE TABLE #t
(
[name] NVARCHAR(128),
[rows] CHAR(11),
reserved VARCHAR(18),
data VARCHAR(18),
index_size VARCHAR(18),
unused VARCHAR(18)
)

INSERT #t EXEC sp_msForEachTable 'EXEC sp_spaceused ''?'''

SELECT *
FROM #t

-- # of rows.
SELECT SUM(CAST([rows] AS int)) AS [rows]
FROM #t

DROP TABLE #t
Самыми большими оказали таблицы VPX_EVENT и VPX_EVENT_ARG - вместе с индексами они занимали более 9.5 Гб. С кем не бывает - подумали мы, хотя и усомнились, т.к. наша тестовая лаборатория не такая большая, чтобы в журналах сохранялось так много событий.

Для очистки таблиц мы использовали сценарий с сайта VMware:
TRUNCATE table VPX_EVENT_ARG
DELETE FROM VPX_EVENT 
Если вы планируете последовать нашему примеру - приготовьтесь к тому, что выполнение сценария потребует много времени и приведет к существенному увеличению размера журналов базы (в конце статьи приведен альтернативный сценарий). Поскольку в качестве Recovery Model установлен режим Simple, то после завершения операции мы сделали Shrink Database, и база уменьшилась до 350 Мб.

Однако, через некоторое время после включения служб vCenter база снова стала расти гигантскими темпами. Для определения причины проблемы заглянули vCenter Server log и обнаружили огромное количество записей о подключении vSphere Management Assistant к серверу vCenter.

Для проверки мы выключили на время виртуальную машину с vMA, и база перестала расти. Поскольку сам vMA был установлен достаточно давно, то стало понятно, что проблема возникла из-за недавних манипуляций с vilogger. Отключение сбора журналов с сервера vCenter позволило решить проблему.

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

P.S. в VMware vSphere Management Assistant 5.0 этой проблемы нет, т.к. из него убрали vilogger.

четверг, 4 августа 2011 г.

VCAP-DCA +1

Наконец-то, я сумел поставить долгожданную точку в изучении VMware vSphere 4 и закрепить полученные знания сдачей сертификационного экзамена VMware Certified Advanced Professional vSphere4 Datacenter Administration. Итоговый результат составил 325 баллов из 500 возможных, что меньше, чем хотелось бы, но больше, чем требуется для успешной сдачи.

Как должно быть многим из вас известно, данный экзамен представляет собой одну большую лабораторную работу, состоящую из порядка 40 вопросов/заданий (мне попалось 35). Никаких вопросов по теории, никаких вариантов ответов на выбор, все требуется делать вживую на небольшой инфраструктуре, включающей два сервера ESX/ESXi, сервер управления vCenter и десяток виртуальных машин. Одно неосторожное движение во вкладке Networking и лабораторная работа может внезапно окончиться плачевно, о чем, собственно, экзаменационная система настойчиво предупреждает в самом начале.

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

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

Самое важное на экзамене - правильно спланировать свое время. Это при сдаче обычных тестов четыре часа кажутся прорвой времени, в лабораторной каждая минута на счету. Я послушался совета зарубежных коллег и не стал долго разбираться с проблемными вопросами, коих оказалось штук 8, а старался побыстрее дойти до последнего. Кроме того, помог тот факт, что задания практически не связаны друг с другом, и некоторые вещи можно делать параллельно, пока система что-нибудь установит или настроит. Единственным заданием, которое я просто не смог пропустить из-за принципа, было написание скрипта. В итоге оставшихся тридцати минут до конца хватило, чтобы добить еще 2-3 отложенных вопроса.

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

В целом, вся тестовая система работала достаточно стабильно и быстро, однако, попалось несколько вещей, которые откровенно не понравились. Во-первых, весьма скромного размера удаленный рабочий стол (1024x768). Работать было не очень комфортно после привычных больших мониторов на работе и дома. Во-вторых, постоянно приходилось переключаться между окном с рабочим столом и окном с заданиями. Особенно это надоедало в заданиях, где требовалось задать конкретные настройки в системе, названия компонентов и т.п. В-третьих, вместо стандартной панели задач присутствовало маленькое окно с ярлыками, запускающими основные приложение (клиент vSphere, клиент RDP, Putty и Adobe Reader), и надписью с просьбой ничего не закрывать. Я не стал нарочно проверять, что будет, если, все-таки, проигнорировать это сообщение, однако пару раз ловил себя на мысли, что хочется закрыть лишние окна. И, да, для тех, кто не в курсе о hotkey на переключение между окнами (Alt + Tab), выучите - пригодится. :-)

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

Настольными книгами для меня стали задачник VCAP-DCA Exam Blueprint Guide и решебник VCAP-DCA Study Guide, содержащие детально описание тем, с которыми придется столкнуться на экзамене.

четверг, 21 июля 2011 г.

Администратор в Windows 7 и Customization Specification

По умолчанию, в операционных системах Windows Vista и Windows 7 для большей безопасности встроенная локальная учетная запись администратора отключена (disabled). Кроме того, учетная запись администратора отключается при отработке утилиты sysprep (например, при разворачивании и настройке виртуальной машины из шаблона с помощью Customization Specification).

Чтобы обойти это ограничение, создайте в виртуальной машине Windows 7 в папке "%WINDIR%\Setup\Scripts\" файл setupcomplete.cmd и добавьте в него следующую команду:

net user Administrator /active:yes

Для русской версии, соответственно, будет "Администратор".

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

пятница, 8 июля 2011 г.

Загрузка и установка VMware ESXi по сети

Вариант загрузки и установки ESXi по сети может пригодиться, если вам требуется в короткие сроки развернуть большое количество однотипных серверов, не оснащенных CD приводами (например, блейд-серверы), а также автоматизировать однотипные действия, вроде принятия лицензионного соглашения или установки пароля администратора. При наличии уже развернутого vCenter Server можно воспользоваться VMware PXE Manager for vCenter, однако, если его нет - придется делать все самим.

Процесс загрузки и установки сервера по сети включает в себя следующие этапы:
  1. При запуске сервера, управление передается загрузчику в сетевом адаптере (PXE - Preboot eXecution Environment).
  2. PXE посылает широковещательный запрос DHCP серверам сети с целью получения сетевых настроек.
  3. Помимо IP адреса и маски подсети, DHCP сервер отправляет дополнительные параметры - адрес TFTP сервера и путь к файлу загрузчика, который следует запустить.
  4. Загрузчик (в нашем случае pxelinux) в соответствии с настройками, заданными в конфигурационном файле (default), загружает ядро, также используя протокол TFTP.
  5. Наконец, ядро запускает процесс автоматической установки ESXi с параметрами из kickstart файла, который может располагаться, например, на FTP или HTTP сервере.
В качестве примера рассмотрим процесс подготовки сервера Windows Server 2008 R2 для развертывания с его помощью VMware ESXi 4.1 Update 1.

Подготовка дистрибутива
Загрузите последнюю версию Syslinux с сайта (на момент написания - syslinux-4.04.zip).

Скопируйте содержимое дистрибутива VMware ESXi 4.1 Update 1 в папку на сервере (например, 'C:\FTPRoot'). В эту же папку скопируйте три файла из архива Syslinux: pxelinux.0 (расположен в ".\core\"), mboot.c32 (расположен в ".\com32\mboot\") и menu.c32.(расположен в ".\com32\menu\") Подтвердите замену файлов.

Создайте папку и назовите ее pxelinux.cfg, скопируйте в нее файл isolinux.cfg из дистрибутива ESXi и переименуйте его в default (без расширения).

Настройка сервера
Для загрузки по сети нам понадобятся следующие службы:
  • TFTP;
  • DHCP;
  • DNS;
  • FTP.
Необязательно размещать все службы на одном сервере, однако, в тестовых целях вполне можно и совместить их.

В качестве TFTP сервера вы можете использовать встроенную службу Windows Deployment Services. Пример настройки TFTP сервера приведен в данной статье. В качестве альтернативного TFTP сервера можно использовать TFTPD. TFTPD проще в установке, а также может выступать в роли DHCP сервера.

При настройке TFTP сервера в качестве корневой укажите ранее созданную папку, в которую был скопирован дистрибутив ESXi.

Если требуется - установите DHCP сервер. Создайте резервацию для MAC адреса адаптера будущего ESXi сервера, с которого будет осуществляться загрузка по сети. Использование резервации вместо задания параметров на уровне всего диапазона адресов или сервера DHCP является хорошей идеей, дабы ненароком не запустить установку ESXi на других компьютерах, настроенных на загрузку по сети.

Обязательно задайте следующие DHCP опции.
  • 060 PXE Client - в качестве значения укажите: PXE Client.
  • 066 Boot Server Host Name - в качестве значения укажите IP адрес или DNS имя TFTP сервера.
  • 067 Bootfile Name - в качестве значения укажите: pxelinux.0.

В качестве примера по настройке опций DHCP можете ознакомиться с этой статьей.

DNS сервер может понадобиться, если вы планируете указывать DNS имена серверов вместо IP адресов в параметрах DHCP и в конфигурационных файлах.

Установите FTP сервер, используя мастер Add Roles Wizard.

Откройте консоль управления IIS и создайте новый FTP сайт.

На вкладке Site Information задайте произвольное имя (FTP site name), а в качестве корневой директории FTP сайта (Physical path) укажите ранее созданную папку с дистрибутивом (например, "C:\FTPRoot"). Нажмите Next.

На вкладке Binding and SSL Settings отключите требование использования SSL при подключении (No SSL). Нажмите Next.

На вкладке Authentication and Authorization Information разрешите анонимным пользователям аутентифицироваться на сайте, включив Authentication | Anonymous, а также загружать файлы Allow access to: Anonymous users и Permissions | Read. Нажмите Finish для завершения мастера и создания сайта.

Редактирование kickstart файла
При редактировании текстовых файлов из Windows обратите внимание на следующие особенности.

В Windows и в ESXi используются разные форматы перевода строк. Из-за этого файл, сохраненный в Windows, в ESXi будет отображаться вот так:

Это может стать причиной разнообразных ошибок при выполнении скриптов из kickstart файла. Для решения данной проблемы вы можете:
  1. Использовать для загрузки kickstart файла протокол FTP.
  2. Использовать сторонний текстовый редактор, который позволяет настраивать формат переносов (например, Notepad++).
В текстовом редакторе создайте файл ks.cfg следующего содержания:
vmaccepteula
rootpw P@ssw0rd
autopart --firstdisk=local
install url ftp://<SERVERNAME>
network --bootproto=dhcp --device=vmnic0 --vlanid=0 --addvmportgroup=0
reboot
где <SERVERNAME> соответствует имени или IP адресу FTP сервера, на котором расположен дистрибутив.

Подробнее о параметрах в файле ks.cfg можно прочитать в руководстве по установке ESXi.

Сохраните файл в корневую папку FTP сервера.

Отредактируйте файл default в папке pxelinux.cfg, добавив в него параметр, указывающий на расположение kickstart файла, например так:
default menu.c32

menu title VMware VMvisor Boot Menu

timeout 80
label ESXi Installer
menu label ^ESXi Installer
kernel mboot.c32
append vmkboot.gz ks=ftp://<SERVERNAME>/ks.cfg --- vmkernel.gz --- sys.vgz --- cim.vgz --- ienviron.vgz --- install.vgz
labelBoot from local disk
menu label ^Boot from local disk
localboot 0x80
Где <SERVERNAME> соответствует IP адресу или DNS имени вашего FTP сервера, на котором располагается kickstart файл.

Обратите внимание, что параметр ks= следует указывать сразу за vmkboot.gz, в противном случае, вы можете получить сообщение об ошибке.

Проверка работы
Для проверки работоспособности решения, достаточно запустить целевой сервер в качестве загрузочного устройства выбрать сетевой адаптер. Если все было сделано правильно, то через некоторое время вы увидите привычное окно установщика ESXi, а буквально через пару минут, и сам установленный ESXi.