Выбор типа хранилища
Хотя технические тонкости, определяющие тип того или иного хранилища, могут вызывать споры, базовые концепции вполне понятны. Существует четыре ключевых типа хранилищ, используемых в повседневных серверных вычислениях: локальные диски, DAS, NAS и SAN. Выбор подходящего типа в большинстве случаев можно свести к относительно простой формуле.
Быстрое практическое правило для хранилищ звучит так: локальные диски предпочтительнее DAS, DAS предпочтительнее NAS, NAS предпочтительнее SAN. Или, как я люблю записывать:
Локальные диски -> DAS -> NAS -> SAN
Чтобы применить это правило, просто начните с имеющихся требований к хранилищу и двигайтесь слева направо. Если локальные диски отвечают вашим требованиям, то в большинстве случаев именно они являются лучшим выбором. Если нет — переходите вправо и проверяйте, удовлетворит ли требования DAS. Если да — отлично, если нет — продолжайте.
Таково практическое правило, и если этого достаточно — вот ваш ответ. Но ниже мы рассмотрим «почему» этого правила. Вкратце: слева мы получаем скорость и надёжность при минимальных затратах. По мере движения вправо возрастают сложность и, как правило, стоимость. Последние два типа, при всём их различии, во многом схожи из-за своей сетевой природы.
Локальные диски: локальные накопители внутри серверного шасси — лучший вариант для большинства задач. Расположение внутри шасси означает минимальные расходы на дополнительные корпуса для размещения и питания дисков, наименьший физический риск, наиболее надёжные технологии подключения, кратчайшее расстояние и минимальное количество потенциальных узких мест. Локальные диски являются блочными устройствами.
Прямое подключённое хранилище (DAS): DAS — это, по сути, локальные диски, размещённые за пределами серверного шасси. Сам сервер воспринимает их точно так же, как и любые другие локальные диски, что делает их очень простыми в использовании. DAS прост, однако предполагает наличие дополнительных внешних корпусов и кабелей, что добавляет стоимость и некоторую сложность. DAS упрощает подключение нескольких серверов к одному набору дисков, что практически невозможно (и всегда громоздко) с локальными дисками. Таким образом, DAS фактически является первым типом физически совместно используемых хранилищ. Будучи идентичным локальным дискам, DAS представляет собой разновидность блочного устройства.
Сетевое хранилище (NAS): NAS уникален тем, что является единственным неблочным устройством из доступных нам вариантов. NAS, или традиционный файловый сервер (это фактически одно и то же), — первая технология, разработанная для работы по сети. Это добавляет немало сложности. NAS предоставляет общий доступ к хранилищу на уровне файловой системы. NAS — это интеллектуальное устройство, которое позволяет нескольким пользователям в сети безопасно совместно использовать хранилище, поскольку содержит необходимую логику для работы с несколькими пользователями одновременно. NAS очень прост в использовании и широко распространён даже в домашней среде.
Сеть хранения данных (SAN): SAN — это адаптация DAS с добавлением сетевой инфраструктуры, позволяющей SAN функционировать как удалённый жёсткий диск (блочное устройство), который операционная система воспринимает так же, как и любой другой подключённый к ней накопитель. SAN требует углублённых знаний в области сетевых технологий, окружён множеством мифов и заблуждений, плохо понятен среднему ИТ-специалисту, как правило, сложен в использовании и настройке и, поскольку лишён логики NAS, фактически открывает жёсткий диск напрямую к сети, что делает повреждение и потерю данных недопустимо лёгкой задачей. Потерять данные на SAN из-за неправильной настройки настолько просто, что наиболее распространённый предполагаемый вариант использования SAN — это сценарий, для которого SAN фактически не предназначен.
Разумеется, существуют серые зоны. То, что обычно считается DAS, можно превратить в SAN. SAN можно подключить напрямую. NAS можно подключить напрямую. Локальное хранилище может выступать как NAS или SAN в зависимости от конфигурации — например, в случае VSA (Virtual Storage Appliance). Многие устройства одновременно являются и NAS, и SAN, а тип определяется конфигурацией, а не физическим устройством. Но в общепринятом употреблении термины в основном однозначны.
Суть в том, что по мере движения слева направо в нашем списке мы переходим от простого и лёгкого к сложному и трудоёмкому. Сам по себе SAN — надёжная технология; именно вмешательство людей с их склонностью легко совершать опасные действия с SAN делает его рискованным способом хранения для рядового пользователя. Как и во всём в ИТ, поддержание простоты технологий и процессов обеспечивает стабильность, безопасность и нередко — экономию средств.
Бывает много ситуаций, когда движение «вправо» необходимо. Локальные диски плохо масштабируются и могут стать слишком дорогими в обслуживании при определённых типах крупных развёртываний. DAS тоже во многих случаях плохо масштабируется. NAS хорошо масштабируется, но будучи неблочным протоколом, несколько уникален и не всегда подходит для наших целей — хорошим примером является HyperV, которому для хранения данных необходимо блочное устройство. SAN — последний универсальный вариант хранения. Если ничто другое не работает, SAN всегда есть как запасной вариант — или, как я люблю говорить, SAN — это хранилище последней инстанции.
Это весьма высокоуровневый взгляд на основы выбора подхода к хранению данных — распространённая задача в ИТ, которую приходится решать регулярно. Этот материал никоим образом не претендует на глубокое объяснение темы хранилищ, а лишь даёт удобное руководство по выбору отправной точки при рассмотрении вариантов хранения. Исключений и особых случаев предостаточно, однако чрезвычайно часто встречается ситуация, когда лучший вариант просто упускается из виду и сразу же рассматривается что-то крупное, дорогое и сложное, при этом быстро забывается, что нечто гораздо более простое справится с той же задачей значительно лучше. Основной принцип: простейшее решение, отвечающее потребностям, как правило, является наилучшим.
