Источник: NetApp Storage Best Practices for VMware vSphere
Если виртуальная машина перемещается в кластере SDRS с одного датастора на другой с целью освободить место на одном из них, то нужно учитывать следующее: если перемещаемая ВМ была дедуплицирована силами СХД NetApp, и, при этом, большинство из её дедуплицированных блоков были расшарены между другими ВМ, расположенными на этом же датасторе, то пространство, высвобождаемое в результате миграции этой ВМ на другой датастор, будет равняться количеству уникальных блоков этой виртуальной машины.
Например, если размер виртуальной машины составляет 100 гигабайт, и, при этом, 60 её гигабайт дедуплицировано и расшарено между другими ВМ на том же датасторе, то при миграции освободится всего лишь 40GB (это именно те уникальные блоки ВМ, которые не удалось дедуплицировать).
И еще. Когда виртуальная машина в Storage DRS кластере перемещается на другой датастор, для которого включена дедупликация, для вновь записанных блоков будет вычисляться хэш, но блоки (и это очень важно) этой ВМ на самом деле будут недедуплицированы до тех пор, пока не будет выполнена следующая запланированная или запущенная вручную дедупликация. И первое время ВМ будет занимать на новом датасторе 100% от своего размера.
Вроде и не совсем чужой я теме дедупликации NetApp, но все равно выражение "Например, если размер виртуальной машины составляет 100 гигабайт, и, при этом, 60 её гигабайт дедуплицировано и расшарено между другими ВМ на том же датасторе, то при миграции освободится всего лишь 40GB (это именно те уникальные блоки ВМ, которые не удалось дедуплицировать)."
прочел раза четыре, и все равно "не дошло". 🙂
Как-то бы переформулировать.
Мне кажется, что написано, вроде бы, правильно и понятно (по крайней мере, мне). Может, я просто чего-то неправильно понимаю, но я думаю, вы, romx, меня поправите.
Я хотел сказать следующее.
Есть виртуальная машина с размером VMDK 100GB. Предположим, что 40GB - это уникальные блоки (данные), которые не удалось дедуплицировать. Допустим, что 50% из оставшихся 60GB - это одинаковые блоки, то есть, фактически, 60GB превращаются в 30GB. В данном случае, если мы переместим эту ВМ с с одного датастора на другой, то на исходном датасторе освободится 70GB. А теперь, представим себе ситуацию, когда на большинство блоков, входящих в состав 30GB, существует еще некоторое количество ссылок (то есть, эти блоки расшарены между другими ВМ этого датастора), и в этом случае, если мы переместим ВМ на другой датастор, то на исходном датасторе освободится уже не 70, а только 40GB.
В общем, как-то так. Если я что-то не так понял, поправьте меня, пожалуйста.
Дык я понимаю, что должно быть понятно, и поправлять вроде нечего, а вот все равно запутано. 🙂
Я это стараюсь объяснять с обратной стороны. То есть не "60" превратилось в "30" (данные-то как таковые, никуда не исчезли, информации в результате работы дедупликации не стало меньше), но 40GB свободного места превратилось в 40+30=70GB.
В общем, я в первом комменте попытался было объяснить, но понял, что проще и лучше будет написать пост в известном вам блоге, где-то после НГ.
А вот тут вы лучше знаете, скажите, Storage DRS это процесс на уровне хоста ESX, не использующий возможности репликации стораджа?
Если СХД VAAI совместима, то перемещение ВМ с датастора на датастор будет выполнено на уровне СХД. А, вот если VAAI не поддерживается, то перемещение будет происходить на уровне хоста ESXi, что заметно нагрузит storage-network, да и весь процесс миграции будет длиться заметно дольше.
Дело в том, что у NetApp репликация может быть в двух вариантах. Один - реплицирует том сохраняя структуру блоков (и эффект дедупликации), а второй - нет.