ADG Оставить заявку
Блог Инфраструктура 5 мин чтения

Thin provisioning на SAN: освободили 30% ёмкости без покупки нового железа

VMware vSphere 4.1 расширил поддержку thin provisioning и Storage vMotion между разными типами хранилищ. Включили у клиента - и SAN сразу стала заметно просторнее. Главный нюанс - алёрты.

Контекст момента

VMware vSphere 4.1 (июль 2010) расширяет поддержку thin provisioning и Storage vMotion между разными типами хранилищ.

Когда клиент в начале года заказывал SAN с запасом под рост, мы закладывали ёмкость с головой. Прошло полгода - хранилище занято примерно на две трети, а заявки на «дайте ещё дисков» уже начались. Это знакомая история: виртуальные машины создаются с thick-дисками «на вырост», реально используют треть, остальное лежит мёртвым грузом.

vSphere 4.1 вышел в июле, и среди улучшений - расширенная поддержка thin provisioning для VMDK и Storage vMotion между хранилищами разных типов без потери thin-режима. Решили воспользоваться моментом.

Что такое thin provisioning и где он помогает

Thick-диск резервирует всё заявленное место на LUN сразу при создании VM. Создал 100 ГБ диск - SAN тут же отмечает 100 ГБ как занятые, даже если внутри пока 8 ГБ данных. Thin-диск растёт по мере записи: выделено 100 ГБ «потолок», а физически занято ровно столько, сколько записано.

Для VM, которые «живут с запасом» - это прямая экономия. Windows-сервер с 80 ГБ thick-диском, на котором реально 25 ГБ данных, при конвертации в thin сразу освобождает 55 ГБ на хранилище. Умножаем на двадцать VM - и арифметика становится интересной.

Принципиальный момент: thin provisioning решает проблему overprovisioning при создании дисков. Это не дедупликация и не компрессия - данные хранятся как есть, просто не занимают место, которое ещё не записано.

Что делали у клиента

Хранилище - EMC CLARiiON, к нему два ESXi-хоста через iSCSI. Парк примерно из двадцати VM: файловый сервер, несколько серверов приложений, терминальные серверы, тестовые машины.

Работали поэтапно:

  • Инвентаризация дисков. Через vSphere Client смотрели на каждый VMDK: provisioned capacity vs. used space. Сразу стало видно, где резерв большой, а где VM действительно использует близко к выделенному.
  • Приоритет на тестовые и dev-машины. Начали с тех, где риск минимален. Если что-то пойдёт не так с конвертацией - продакшн не затронут.
  • Storage vMotion с конвертацией. В vSphere 4.1 при миграции через Storage vMotion можно выбрать формат диска на целевом хранилище. Мигрировали VM на тот же LUN, явно указывая thin. Даунтайма нет - VM продолжает работать во время миграции.
  • Продакшн-серверы - в окно обслуживания. Технически можно и без даунтайма, но для файловых серверов и терминалок предпочли делать в ночное окно: меньше нагрузки, проще контролировать.

По итогу освободили около 30% от общей ёмкости хранилища. Цифра не удивительная - она прямо следует из того, насколько агрессивно VM создавались с запасом. У кого-то этот показатель будет меньше, у кого-то больше.

Главное, о чём нельзя забыть

Thin provisioning создаёт ситуацию, которой не было при thick: SAN знает, что у неё 2 ТБ, VM суммарно «думают», что у них 3 ТБ, а реально записано 1,4 ТБ. Пока данных немного - всё хорошо. Если несколько VM начнут активно писать одновременно, свободное место на хранилище будет таять быстрее, чем кажется.

Если хранилище кончится - thin-диски VM просто встанут. Это не плановая пауза, это внезапный отказ.

Поэтому обязательно настраиваем алёрты:

  • vCenter: alert на Datastore Free Space. Стандартный алёрт в vSphere, порог ставим на 20% и на 10% свободного места. Первый - предупреждение, второй - критический.
  • На хранилище: native-алёрты CLARiiON. EMC имеет собственную систему нотификаций - там тоже настраиваем порог по LUN utilization.
  • Nagios поверх всего. У нас есть check_emc или check_snmp для мониторинга SAN - добавили проверку реального занятого места с агрессивным порогом. Дублирование не лишнее: если vCenter недоступен по какой-то причине, мониторинг независимый.

Без этих алёртов thin provisioning - это бомба с неизвестным таймером. С алёртами - нормальный инструмент экономии.

Про Storage vMotion между разными типами хранилищ

Это отдельная приятная возможность в 4.1: раньше Storage vMotion работал в пределах одного хранилища или между хранилищами одного типа. Теперь можно мигрировать VM с FC-LUN на iSCSI-датастор и обратно без выключения, причём с конвертацией формата диска на лету.

Практически это означает, что можно переместить «холодные» VM с быстрого FC-хранилища на более дешёвый iSCSI, освободив FC-ёмкость под нагруженные задачи. У этого клиента один СХД, так что этот сценарий не трогали - но в проектах с несколькими хранилищами возможность интересная.

Что получилось в итоге

Клиент получил обратно 30% ёмкости SAN без покупки дополнительных полок. Это не бесконечный ресурс - по мере роста данных место будет расходоваться, просто более честно. Но запас, который раньше лежал замороженным в нераспределённых блоках, теперь доступен.

Алёрты настроены и проверены - намеренно временно подняли запись на тестовой VM и убедились, что оба порога срабатывают и нотификации приходят куда надо.

Thin provisioning - не новая идея и не магия. Но включить его при создании VM в 2010 году - всё ещё не стандартная практика у большинства клиентов, которых мы видим. Многие просто не задумываются, что thick - это дефолт, а не единственный вариант. Это одна из первых вещей, которую мы проверяем при сопровождении инфраструктуры.

Контакт

Нужна такая же инженерная работа?

Опишите задачу и контекст. Ответим в течение рабочего дня, при необходимости подпишем NDA.