После выполнения простой установки vCenter 5.1 со всеми выбранными по умолчанию, включая базу данных sql express, что нам делать, чтобы обеспечить непрерывную работу без ручного вмешательства?
В настоящее время мы сталкиваемся с проблемой, когда база данных раздувается до огромных размеров для нашего развертывания.
В каждом из наших удаленных филиалов у нас есть 3 физических сервера
Общее количество активных виртуальных машин составляет 8, а затем 6 из них реплицируются на другой сервер ESXi 3 раза в день, с программным обеспечением Dell Quest vRanger также на сервере Branch-Backup. Также каждую ночь создается полная резервная копия 6 виртуальных машин, опять же с помощью программного обеспечения vRanger.
В большинстве случаев все это работает нормально, но в журналах задач и событий vCenter довольно много разговоров. Я видел 9 ГБ для размера таблиц vpx_event + vpx_event_arg, установленных менее 3 месяцев назад, что безумно для двух хостов. Так как http://kb.vmware.com/kb/1025914Предполагает, что я вошел в клиент vSphere:
и изменил значения на что-то разумное для нашей установки. Но, похоже, это на самом деле ничего не дает. Я подозреваю, что это связано с тем, что мы используем экспресс-выпуск, и он не может запускать агент sql для планирования заданий.
Большая часть информации, которую я нашел, похоже, относится к vCenter 5.0 или ниже, и многие инструкции говорят, что 5.1 отличается, и я нашел это так, поскольку 2 сценария очистки .sql, на которые ссылаются многие страницы, просто не присутствует на 5.1.
Что нам нужно настроить для vCenter 5.1, чтобы база данных sql express не заполнялась старыми данными?
Я не вижу причин отказываться от простой модели восстановления, поскольку все, что может означать повреждение базы данных, - это переустановить vCenter для управления двумя хостами. Мы, системные администраторы, в любом случае единственные, кто может войти на эту машину, так что это не проблема. Проблема в том, что всякий раз, когда БД становится слишком большой, наши резервные копии и репликации виртуальных машин не работают. Однако я установил максимальное значение журнала транзакций для этих крупных транзакций.
Я предполагал, что решение будет включать запуск сценариев sql через планировщик задач Windows. Но какие, откуда их взять, как часто я их запускаю и в какой последовательности?
Полное раскрытие информации: я не использую vCenter. Однако я использовал другие программные пакеты с SQL Express.
Вы можете запускать задания обслуживания SQL Express как запланированные задачи с помощью пакетной обработки и sqlcmd, например:
sqlcmd -E -SServer\instance -Q "EXECUTE [VIM_VCDB].[dbo].[cleanup_events_tasks_proc]"
Еще одна статья, которую я нашел (http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1020904) предложил использовать скрипт, который можно было бы вызывать, например:
sqlcmd -E -SServer\instance -i "C:\Program Files\VMware\Infrastructure\VirtualCenter Server\cleanup_events_mssql.sql"
Отредактировано в ответ на ваше изменение: ограничение размера вашего t-журнала может нарушить действительно большие транзакции, включая сжатие и большие удаления. Если удаление выполняет сам VCenter, а не задание агента, это может быть вашей проблемой. И учитывая, что по умолчанию используется Express, имеет смысл, что они не будут зависеть от (не поддерживаемых в Express) заданий агента.