Напомню, в чем суть выравнивания:
У нас есть блоки, которыми оперируют системы хранения("Chunk", иногда употребляется "кластер", afaik)
Поверх этого у нас файловая система, в нашем случае - VMFS.
На VMFS лежат диски ВМ, а в них гостевая файловая система со своими блоками.
Картинка:
На картинке показана плохая, не выровненная ситуация. Это значит, для чтения одного блока в госте, нам нужно несколько I\O. Это означает худшую производительность, чем могла бы быть. см. Выравнивание кластеров NTFS и блоков RAID массива (детальный тест для SQL Server) + Необходимо ли в Windows Server 2008 выравнивание кластеров NTFS и блоков RAID массива?
Хорошая дока по этому поводу - Storage Alignment and VMFS Block Sizes.
В ней описывается, как придти к правильной картинке
Как же выровнять все это дело:
выравнивание vmfs:
вооружаемся fdisk'ом.
Выполняем команду
fdisk -lu
на выходе получаем что то вроде
Device boot Start End Blocks Id System
/dev/sdj1 128 167766794 83883333+ fb Unknown
тут видно, что раздел выровнен по границе 128. Так и должно быть. Если цифирка другая(обычно 63) - то раздел не выровнен.
За дальнейшими инструкциями в первоисточник.
Еще рекомендую почитать тут - Корректное поблочное выравнивание LUN и файлов .vmdk при использовании системы хранения NetApp - документ на русском.
Так же, дается разъяснение про влияние размера блока VMFS на дисковые операции гостя:
When your Linux/Windows/Solaris guest reads/writes data, it does so in blocks and these blocks are usually around 64KB. For example, when your guest issues a SCSI read, then nothing happens to the VMFS at all - the read is "passed through" by the vmkernel straight to the SAN LUN.
VMFS does not get in the way of your guest read/writes, it does not do any kind of caching, the VMFS block size is irrelevant for guest I/O.
Насколько я понял, имеется в виду, что от размера блока зависит только максимальный размер файла-диска ВМ, а при операциях чтения записи гостя - эта операция пропускается сразу на уровень СХД, сквозь VMFS.
upd. Выравнивание VMFS актуально лишь при создании раздела из командной строки - при создании VMFS из клиента VI выравнивание указывается автоматически.
Не могу открыть статью (блог) "Корректное поблочное выравнивание LUN и файлов .vmdk при использовании системы хранения NetApp". Это только у меня такая проблема?
ОтветитьУдалитьпоправил ссылку, спасибо.
ОтветитьУдалитьСтранно... а у меня "обычно" все уже выравненное (128)...
ОтветитьУдалитьУ меня ESX кривой? :)
эта информация применима, в основном, для создания оазделов из командной строки. При создании раздела vmfs из GUI он создается выровненым, и, видимо, по границе 128.
ОтветитьУдалить