Работа с фрагментированным виртуальным хранилищем виртуальных машин

У нас есть пул Citrix XenServer с 3 хостами, использующий общий репозиторий NFS для наших виртуальных машин.

SR размещается на блейд-сервере хранения Windows 2003, который был включен в наш корпус HP Blade серии 3000.

Я только что посмотрел сервер хранилища и заметил, что диск с общим ресурсом NFS очень фрагментирован.

У меня есть несколько вопросов.

Достаточно ли будет запустить стандартную дефрагментацию Windows, чтобы справиться с этим?

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

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

Любые мысли приветствуются.

Спасибо,

Люк

1 ответ

Решение

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

Причина высокой фрагментации заключается в том, что VDI представляют собой редкие образы дисков. Даже если вы укажете, что виртуальной машине выделено (например) 100 ГБ свободного места, образ диска первоначально выделит только минимальный объем пространства. Затем он будет увеличиваться по мере необходимости до максимума выделенного размера. Проблема с этим подходом состоит в том, что если у вас много виртуальных машин на одном устройстве хранения данных, и все они наращивают свои диски в разное время, то файлы образа диска не смогут быть смежными на диске и, следовательно, будут стать очень фрагментированным.

Решением этой проблемы было бы не использовать разреженные изображения, но, к сожалению, кажется, что в XenServer 5.0 единственным типом VDI, который вы можете сделать, является разреженный.

У меня есть несколько вариантов, которые я могу придумать: * Если возможно, используйте необработанные блочные устройства с форматом LVM. Я недостаточно знаком с Windows 2003 Storage Server, чтобы знать, возможно ли это. Если это позволяет вам сделать тома экспортировать их через iSCSI или FC, все готово. В противном случае вам может потребоваться перейти на другую настройку общего хранилища или что-то еще. * Предварительно выделите все дисковое пространство на вашем виртуальном жестком диске. По сути, это означает, что нужно просто заполнить все доступное пространство на томе перед установкой вашей ОС. Вы можете загрузить Linux LiveCD или что-то еще и использовать dd писать нули по всему диску. Это приведет к тому, что XenServer увеличит максимальный размер файла образа диска, и мы надеемся, что большая его часть будет смежной, поскольку все это делается одновременно.

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

Другие вопросы по тегам