Как для любой новой области, понимание того, как устроен и как работает система внутри кластера Nutanix усложнено тем, что многое в нем устроено иначе и работает иным, непривычным образом.
Поэтому в серии постов «Что есть что?» я постараюсь рассказать об основных элементах и принципах работы всей «кухни» Nutanix. А сегодня начнем с базовых, так называемых core-сервисов системы.
MapReduce Tiering: интеллектуальное распределенное многоуровневое хранение данных
Flash-хранилище используется как для кэширования, так и для постоянного хранения данных, как уровень хранения (tier). Данные интеллектуально размещаются на оптимальном уровне хранилища, на flash или HDD, для обеспечения наилучшей производительности работы с ними. Технология MapReduce tiering обеспечивает, чтобы наиболее часто используемые данные считывались с SSD или из кэша. По мере того, как данные «остывают», они переносятся на уровень HDD с высокой емкостью. За счет этого достигается ситуация, при которой SSD и кэш используется только для «горячих» данных.
Inline Compression
Nutanix использует мощный алгоритм компрессии под названием Snappy, который увеличивает эффективность использования емкости системы до четырех раз. В отличие от традиционных решений хранения, которые производят сжатие целиком LUN-ов или дисков, Nutanix ваполняет сжатие на субблочном уровне, что увеличивает эффективность и упрощает работу. Размер сжимаемого блока (chunk size) достигает 128 KB, что позволяет достичь очень высокой степени сжатия.
Подробнее о выгодах сжатия смотрите в документе Compression Solution Benefits.
MapReduce Compression: распределенная постпроцессная компрессия
Администраторы системы могут устанавливать политики по запуску компресии Nutanix в постпроцессном режиме, чтобы устранить возможное влияние этой нагрузки на производительность системы в случае, если бы она выполнялась «на лету» при записи данных. Процесс MapReduce Compression может быть распространен для выполнения на все узлы кластера и производительность его масштабируется по мере роста его размеров.
Elastic Deduplication: онлайн и постпроцессная дедупликация
Nutanix предлагает два возможных варианта дедупликаци данных, технологии эти носят название Elastic Deduplication – Inline Performance Deduplication на содержимом content cache (SSD и памяти) уменьшает объемы занятого рабочими данными кэша, что значительно улучшает производительность приложений, тогда как постпроцессный MapReduce Deduplication на SATA-уровне увеличивает эффективность использования емкости в кластере.
С данных берется «цифовой отпечаток» (fingerprint) их содержимого, с помошью хэш-функции SHA-1, котороый затем хранится вместе с метаданными. Операция дедупликации реализована программно, и использует некоторые предоставляемые аппаратно функции, например реализованные в чипсете Intel методы быстрого вычисления SHA-1.
Для приложений с большими объемами совместно используемых рабочих данных, например в средах virtual desktop infrastructure (VDI), inline-дедупликация, производимая «на лету», увеличивает эффективность использования flash и ресурсов памяти до 10x раз, и обеспечивает почти моментальный отклик для приложения. MapReduce Deduplication действует на систему в целом, и распростряется на все узлв кластера, эффективно храня данные на дисках кластера и за счет своей постпроцессности сводя к минимуму влияние на производительность системы.
Подробнее о дедупликации Elastic Deduplication смотрите в руководстве Tech Guide: Nutanix Elastic Deduplication Engine.
Гетерогенные кластеры: как можно смешивать узлы Nutanix Appliance
Пользователи могут смешивать различные модели Nutanix Appliance в одном кластере. Это позволяет им эффективно масштабировать вычислительную производительность и емкость системы в кластере, в соответствии с их потребностями.
Thin Provisioning
Пространство хранилища для виртуальных машин экономно распределяется с исползованием методов thin provisioning. Администраторы могут задавать необходимую емкость vDisk, но физическая емкость занимается только по мере возникновения в ней необходимости. Администраторы могут также устанавливать параметр минимального уровня резервирования, который гарантирует определенный объем хранения для набора vDisk-ов. Это обеспечивает меньший overprovisioning хранилища и более гранулярный контроль со стороны администратора.
Гибкий размер блока для повышения производительности и эффективности метаданных
Гибкий размер операционного блока обеспечивает широкий диапазон ввода-вывода блоками от 512 байт до 1 MB, что обеспечивает оптимальну производиельность в широком диапазоне рабочих нагрузок и обеспечивает хоошо подстраивающуюся под требования приложений эфективность работы с метаданными. В отличие от традиционных систем хранения, которые обрабатывают большие порции блоков ввода-вывода, разбивая их на фрагменты по 4KB, Nutanix может эффективно работать с переменными длинами блоков ввода-вывода на всем их пути до дисков.
Shadow Clones: распределенное кэширование данных VM для повышения производительности
Shadow Clones позволяет использовать распределенное кэширование даных VM в случае сценария с можеством читающих клиентов. В типовых системах VDI часто встречаются конфигурации, когда так называемые linked clones считываются вместе с центральным мастер-образом (base VM). В случае использования VMware View, это называется replica disk и с него читают все linked clones. Сходным образом у Citrix XenDesktop это называется MCS Master VM. Shadow Clones улучшают производительность для почти любого сценария с множеством читающих клиентов (это могут быть, например сервера развертывания инфраструктуры, репозитории, и так далее).
При использовании Shadow Clones, Nutanix наблюдает за характером доступа к vDisk. Если запросы к нему происходят от более чем двух удаленных CVM, одновременно с доступом через локальый CVM, и все эти образения являются операциями чтения, то vDisk будет помечен как immutable. После того, как диск становится immutable, vDisk кэшируется локально для каждого CVM, чтобы операции чтения шли с локальной копии данных.
Подробнее о Shadow Clones читайте в руководства Nutanix Shadow Clones.
Хотел добавить касательно дедубликации.
1. дедубликация SSD/Memory делается на лету, рекомендации для CVM 24Gb (по умолчанию 16 Gb).
http://download.nutanix.com/guides/c_3_5/xhtml/oxy_ex-1/topics/wc/images/create_container_window2_wc.png
2. дедубликация SATA можно делать пост, рекомендации для CVM 32Gb и 300Gb SSD для хранения метаданных
http://myvirtualcloud.net/wp-content/uploads/2014/04/Screen-Shot-2014-04-07-at-9.04.24-PM.png
часть из выделенной памяти идет на разные сервисы
http://itbloodpressure.com/wp-content/uploads/2014/05/NutanixCache.gif
3. какой из вариантов выбрать будет зависеть не только от готовности отдать память, но и имеющейся редакции http://www.virtuallifestyle.nl/wp-content/uploads/2014/05/Screen-Shot-2014-05-20-at-16.50.30.png
4. пока вариант настройки per VM через ncli, но в следующем релизе будет доступен через GUI