vSphere Storage (часть 2) — введение в VAAI
Введение
Хранилище обеспечивает критически важную базовую поддержку среды vSphere. Кроме того, это одна из самых дорогих инвестиций в инфраструктуру, сделанных организацией. Таким образом, обеспечение того, чтобы эти инвестиции были максимально использованы для достижения их максимального потенциала, как правило, представляет значительный интерес для организации. В то же время большая часть вычислительной мощности хранилища остается неиспользованной.
Чтобы помочь компаниям максимизировать свои инвестиции в системы хранения и позволить им переложить некоторые задачи обработки, связанные с хранением, с хост-серверов, в выпуске ESX/ESXi 4.1 VMware добавила функцию под названием VAAI (ранее VAAI была частью vStorage API). что означает API-интерфейсы vStorage для интеграции массивов. Эта функция была значительно улучшена в vSphere 5.0.
В части 1 этой серии вы узнали о функциях VAAI, поставляемых с vSphere 4.1. В этой статье вы узнаете о функциях VAAI, поставляемых с vSphere 5.0.
Thin Provision Stun (блок)
Этот API фактически был добавлен в vSphere 4.1, но не был задокументирован, и в то время его поддерживало лишь несколько поставщиков систем хранения. С выпуском vSphere 5 Thin Provision Stun представляет собой полностью поддерживаемый примитив, готовый к использованию поставщиками и заказчиками систем хранения данных для поддержания их ресурсов хранения в идеальном состоянии.
Тонкое выделение ресурсов — это способ, с помощью которого администраторы системы хранения могут более эффективно использовать ресурсы хранения. Многие администраторы склонны выделять избыточное пространство для хранения в расчете на будущие потребности. В некоторых случаях это хранилище никогда не используется полностью, в результате чего все избыточно выделенное хранилище просто пропадает. С помощью тонкой подготовки администратор может выделить, например, том объемом 100 ГБ для нового сервера Windows. Однако на данный момент для этого тома сервера может потребоваться всего 40 ГБ. Это означает, что 60 ГБ пока будут потрачены впустую.
Благодаря тонкой подготовке эти 60 ГБ выделенного, но пустого пространства можно использовать для других целей. Таким образом, тонкое выделение ресурсов станет огромным преимуществом для организаций, которые не могут идеально спланировать рабочие нагрузки на хранилище.
Но есть и обратная сторона. При тонкой подготовке возможность нехватки места на диске может быть реальной, поскольку становится возможным фактически перераспределить физическое хранилище. Когда пространство заканчивается, и виртуальная машина затем запрашивает дополнительное пространство, которое выделено, но еще не используется этой виртуальной машиной, виртуальная машина просто выйдет из строя. По сути, виртуальная машина пытается записать данные в хранилище, которое, по ее мнению, у нее есть, но это не так, и гипервизор и виртуальная машина плохо справляются с ситуацией.
Нехорошо.
При включенном Thin Provision Stun при возникновении одного из этих особых условий нехватки места виртуальные машины «замораживаются» или приостанавливаются, а администратора приветствует сообщение об ошибке с запросом дальнейших инструкций. Этот процесс предоставляет администратору возможность добавить дополнительное физическое пространство к истощенному тому таким образом, чтобы сохранить целостность рабочей нагрузки.
Это то, что я считаю очень реактивным проактивным процессом. Если вы внимательно следите за хранилищем, такой ситуации никогда не должно произойти, но если это произойдет, приятно знать, что VAAI поможет вам.
Освобождение тонкого пространства (блок)
Как упоминалось в предыдущем примере, поскольку тому с тонкой подготовкой требуется дополнительное пространство, для этого тома выделяются дополнительные блоки, пока пространство доступно. Этот процесс продолжается до тех пор, пока том не достигнет максимального размера, указанного администратором при создании виртуального диска.
Однако выделение пространства с тонким предоставлением — это не улица с односторонним движением. В предыдущем примере подразумевается, что серверы продолжают неуклонно расти. Однако во многих случаях данные могут быть удалены из тома. В этих случаях, если не будут предприняты определенные шаги, освободившееся пространство может быть потрачено впустую и больше не будет частью пула тонкой подготовки.
Вот здесь-то и вступает в дело высвобождение тонкого пространства. Когда жесткий диск виртуальной машины начинает использовать меньше места, гипервизор может указать массиву начать высвобождать это пространство для других целей.
Давайте рассмотрим реальный пример в vSphere. vSphere выполняет ряд операций, используя свою файловую систему VMFS. Внутри VMFS находятся отдельные файлы, представляющие виртуальные жесткие диски, снимки и многое другое. Теперь предположим, что вы удаляете виртуальную машину из VMFS. Это пространство, которое может использоваться другой виртуальной машиной или для других целей. Высвобождение пространства с поддержкой VAAI позволяет вам быть уверенным, что это освобожденное пространство возвращается в общий пул для повторного использования и обрабатывается на аппаратном уровне.
Обратите внимание, что этот API также известен как UNMAP.
Полная копия (NFS)
Хотя популярность NFS для использования в vSphere растет, ни один из примитивов VAAI, представленных в vSphere 4.1, не работал с томами на основе NFS. Однако в vSphere 5 был представлен ряд API-интерфейсов NFS, в том числе API полного копирования.
Хотя API полного копирования для NFS иногда считается версией NFS блочного примитива полного копирования, описанного в части 1 этой серии, существуют некоторые отличия. Однако на базовом уровне это точное утверждение. Однако с томами NFS API полного копирования NFS не используется во время операций Storage vMotion; с API полного копирования на уровне блока API во время операции Storage vMotion.
В версии vSphere 5.1 этот API был обновлен и теперь включает поддержку моментальных снимков на основе массива. Это было добавлено в первую очередь для поддержки VMware View.
Резервирование места (NFS)
Во многих отношениях примитив VAAI помогает администраторам управлять тонким выделением ресурсов и экономить место в хранилище данных. Однако vSphere — это не всегда экономия места. На самом деле, в некоторых случаях администраторы хотят как раз обратного. Например, если вы планируете создать виртуальную машину в блочной VMFS, есть возможность создать толстые виртуальные диски с обнуленными нулями. Если для этого типа диска администратор укажет объем 100 ГБ, vSphere заблаговременно обнулит (подготовит) 100 ГБ пространства. Это может привести к некоторому улучшению производительности с течением времени.
API резервирования пространства NFS предоставляет эту возможность для томов NFS.
Расширенная статистика (NFS)
VMware изобрела VMFS на блочном уровне, и в результате гипервизор vSphere имеет полную видимость деталей на уровне тома. Эта информация может иметь решающее значение для правильного функционирования вашей среды vSphere. Однако при использовании VMFS на основе NAS vSphere является просто гостем на существующем томе NFS. Другая система отвечает за управление деталями тома, что затрудняет получение гипервизором важной информации от нее.
Вот тут-то и появляется API расширенной статистики для NFS.
С помощью этого API администратор может получить критическое представление, например, о статусе и уровнях тонкой подготовки для файлов VMDK, хранящихся на подключениях NFS. До этого получение такого рода информации было гораздо более сложным процессом и требовало большой работы ногами.
Дополнительное рассмотрение
Следует отметить, что для работы многих из этих API требуется VMFS 5. Кроме того, имейте в виду, что если вы используете vSphere 5.0 без исправлений, вы можете столкнуться с незначительными проблемами. Ведь VAAI это все-таки софт, а софт может глючить!
Резюме
На этом наше обсуждение различных примитивов VAAI завершено. Имейте в виду, что VAAI предоставляет организациям значительные преимущества для бизнеса за счет лучшего использования пространства и гораздо более быстрых операций (т. е. полное копирование может быть в 5–10 раз быстрее с VAAI, чем без него).