понедельник, 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, содержащие детально описание тем, с которыми придется столкнуться на экзамене.