Протокол iSCSI среди компаний различных размеров становится все более популярным. Напомню, что iSCSI — это модификация проверенного временем протокола SCSI, который соединяет серверы с высокопроизводительными дисковыми хранилищами и накопителями компакт-дисков. Он использует протокол TCP/IP по привычным сетевым проводам вместо специальных кабелей. Помните толстые кабели с огромными разъемами и хрупкими выводами?
Протокол iSCSI стал популярен в последние месяцы отчасти из-за распространения виртуализации, в особенности технологии, которая позволяет перемещать работающие виртуальные машины между различными серверами, благодаря чему обслуживание физического сервера можно проводить, не опасаясь повлиять на доступность виртуальной машины. Единственная необходимая среда взаимодействия между серверами и дисками, установленными в подсистемах хранения данных, — сеть IP, позволяющая множеству серверов совместно использовать одну и ту же подсистему хранения данных. С помощью старых технологий, таких как SCSI DAS, с общей системой хранения могли работать максимум два сервера. Чтобы разрешить множеству серверов доступ к одной и той же подсистеме, можно построить хранилище SAN на основе технологии Fibre Channel. Однако оптоволоконные сети SAN чрезвычайно дороги и требуют установки специальных адаптеров HBA, необходимых для подключения серверов к контроллерам FC — специализированным коммутаторам, обеспечивающим доступ к сети SAN.
Использование решений на основе протокола iSCSI при построении IP-сети обойдется намного дешевле других вариантов и предоставит большую свободу действий. Возможно, вы уже используете устройства NAS в своем сетевом окружении. Эти устройства задействуют популярные IP-протоколы, такие как WWW Distributed Authoring and Versioning (WebDAV), NFS, Server Message Block (SMB) и Common Internet File System (CIFS). Однако данные протоколы — протоколы уровня файла, и они, как правило, не подходят ни для обеспечения доступа к очень большим файлам, ни для реализации высокопроизводительных решений, таких как виртуализация или базы данных. Так как протокол iSCSI работает на блоковом уровне, для него не характерны проблемы с производительностью, а также другие недостатки, свойственные протоколам уровня файла, в том числе блокировка файлов.
Cегодня многие разработчики предоставляют широкий выбор решений на основе iSCSI, включая системы NAS с поддержкой протокола iSCSI. Компания Microsoft недавно выпустила платформу Windows Storage Server 2008 R2, которая является оптимизированной версией Windows Server 2008 R2 с поддержкой iSCSI. Система Storage Server, выпускаемая в комплекте с оборудованием таких производителей, как Dell, HP и многих других, может похвастаться разнообразием функций, позволяющих создавать подсистемы хранения данных. Эти подсистемы можно использовать для размещения дисков виртуальных машин, огромных хранилищ серверов баз данных и т. д. Платформа Storage Server также включает в себя простые функции управления и программные средства дедупликации, позволяющие снизить требования к месту хранения данных. Примечательно, что система Storage Server незаметно интегрируется в ваше окружение, а также предоставляет поддержку типичных протоколов NAS.
В этой статье я покажу, как настроить и протестировать систему Storage Server в вашем окружении. Storage Server выпускается в нескольких редакциях: Workgroup Edition, Standart Edition и Enterprise Edition. Обзорную статью, описывающую отличительные особенности каждой редакции, можно найти по адресу technet.microsoft.com/en-us/library/gg214172(WS.10).aspx. Хотя платформа Storage Server доступна только для использования в производственных средах в составе продуктов от OEM-поставщиков, если у вас есть подписка на TechNet, вы сможете загрузить пакет Storage Server в качестве обновления к системе Server 2008 R2. После этого вы сможете протестировать новую систему в физической или виртуальной среде. Для получения более подробной информации об условиях загрузки и использования пакета Storage Server посетите страницу blogs.technet.com/b/josebda/archive/2010/09/27/windowsstorage-server-2008-r2-and-the-microsoftiscsi-software-target-3-3-are-available-onmsdn-technet-here-s-how-to-install-them.aspx.
Подготовка и выполнение начальной установки
Перед развертыванием системы Storage Server необходимо подготовить окружение. Следует назначить статический адрес IPv4 для сервера Storage Server, а если вы используете IPv6, то определить адрес IPv6. Адреса IPv4 и/или IPv6 будут использоваться для управления системой Storage Server через удаленное подключение, а также для взаимодействия сервера Storage Server с контроллерами домена, серверами DNS и другими ресурсами. Не обязательно присоединять систему Storage Server к домену, но я рекомендую сделать это для упрощения процедур управления. При решении задач, не требующих высокой производительности, можно передавать данные взаимодействия по протоколу iSCSI и остальной сетевой трафик по одной и той же сети. При этом на каждом сервере, взаимодействующем с системой Storage Server, а также на самом сервере Storage Server используется лишь один сетевой адаптер. Однако я бы не рекомендовал применять данную конфигурацию в производственном окружении. Как правило, для взаимодействия с системой Storage Server на серверы устанавливаются дополнительные сетевые адаптеры, подключенные к сети, выделенной для передачи трафика протокола iSCSI. При использовании выделенных сетевых адаптеров серверу Storage Server необходимо присвоить адреса IPv4 и IPv6, которые при работе с сервером будут использовать клиенты протокола iSCSI, получившие название iSCSI Software Initiator. Для сети iSCSI можно задействовать описанные в стандарте RFC 1918 внутренние адреса IPv4 из следующих диапазонов: 10.x.x.x, 172.16.x.x –172.31.x.x, и 192.168.x.x. Ниже я подробно остановлюсь на дополнительных мерах безопасности.
При первом запуске сервера Storage Server после регистрации в системе с использованием пары имя/пароль, полученной от компании — производителя оборудования, вы увидите экран Initial Configuration Tasks (ICT), настроенный под использование функций системы Storage Server (экран 1). Каждый производитель оборудования может настроить экран ICT по-своему — например, добавив задачи создания кластеров Storage Server, состоящих из двух узлов, и управления ими. Выполнение этих задач позволит повысить отказоустойчивость системы и ее способность к восстановлению. Первым делом следует настроить часовой пояс, задать IP-адреса и имя сервера, а также присоединить систему к домену. Затем загрузите и установите обновления. Я рекомендую не настраивать автоматическое обновление в производственных окружениях, если вы не хотите, чтобы система Storage Server неконтролируемо перезагружалась после установки новых пакетов, делая общие ресурсы и тома, которые она обслуживает, недоступными.
Экран 1. Окно Initial Configuration Tasks |
Подготовка и обслуживание устройств NAS c помощью SMB и NFS
На экране ITC вы можете выбрать задачу Provision a volume, которая запускает мастер Provision Storage Wizard. Вы получите возможность подготовить хранилище на одном или нескольких дисках, подключенных к серверу, если они включены, инициализированы и имеют нераспределенное дисковое пространство. Если диски не включены или еще не инициализированы, вам придется воспользоваться оснасткой Disk Management, которая находится на вкладке Storage в диспетчере Server Manager, для того чтобы включить и инициализировать их. После этого мастер сможет распознать подключенные диски. У вас также будет возможность подготовить хранилище на основе подсистем хранения, таких как устройства SAN, если сервер Storage Server имеет доступ к этим подсистемам. Пошаговое выполнение инструкций мастера позволит вам выбрать неназначенное хранилище, указать его желаемый размер, определить место хранилища, а также выбрать задачи, которые будут использоваться при его форматировании. После создания хранилища вы можете запустить мастер Provision a Shared Folder Wizard, который предложит создать новую папку, задать разрешения доступа к ней и предоставить общий доступ, используя протоколы SMB и NFS (если в системе Storage Server установлен компонент Server for NFS).
На экране 2 изображена появившаяся в системе Storage Server новая оснастка консоли MMC Share and Storage Management, доступная из папки Administrative Tools в меню Start. Из этой оснастки можно запустить мастер Provision Storage Wizard и Provision Share Wizard. Кроме того, вы можете управлять открытыми сессиями и файлами, а также осуществлять настройку файловой системы NFS, если она доступна. Вам не нужно пользоваться ни мастером Provision Storage Wizard, ни мастером Provision a Shared Folder Wizard для управления дисками, томами и общими папками. Все эти задачи могут выполняться через оснастку Disk Management в диспетчере Server Manager или посредством приложения Windows Explorer. Вы также можете использовать командную строку и оболочку Windows PowerShell, по аналогии с системой Server 2008 R2. Оснастка консоли MMC и перечисленные мастера облегчают выполнение этих задач для начинающих администраторов.
Экран 2. Оснастка Share and Storage Management |
Storage Server и протокол iSCSI
Редакция Storage Server Enterprise Edition содержит специализированное программное обеспечение для работы с протоколом iSCSI. Эти приложения позволяют задействовать протокол iSCSI для обслуживания клиентов iSCSI. Управление протоколом iSCSI в системе Storage Server — более сложная задача, чем подготовка и обслуживание хранилищ NAS с помощью протоколов SMB и NFS. Перед тем как начать работать с протоколом iSCSI с помощью приложений Storage Server, надо понять принцип его работы. Когда система Storage Server используется в качестве сервера NAS, вы открываете доступ к общим папкам, а при использовании протокола iSCSI сервер Storage Server предоставляет клиентам целые диски. Сами по себе диски не являются физическими дисками сервера Storage Server. Точнее, они являются виртуальными дисками, реализованными в виде файлов виртуального жесткого диска (VHD), хранящихся на логических томах одного или нескольких физических дисков. Подобное разделение виртуальных дисков iSCSI, логических томов и физических дисков не является уникальной особенностью системы Storage Server и может быть обнаружено в других серверных системах, использующих протокол iSCSI.
Такое разделение обеспечивает множество преимуществ. Вы можете создавать виртуальные диски iSCSI для клиентов нужного размера, избавляя себя от необходимости создавать диски iSCSI такого же размера, как физические диски. Физический диск может включать один или несколько логических томов, каждый из которых может содержать один или несколько файлов VHD. С другой стороны, под одним логическим томом, содержащим файлы VHD, могут быть объединены несколько физических дисков. Еще одно преимущество заключается в том, что вы можете перемещать файлы VHD, представляющие виртуальные диски, обслуживаемые системой Storage Server, между томами или между серверами, если есть такая необходимость.
Управление виртуальным диском
Вы можете создать файл VHD в системе Storage Server, используя оснастку MMC Microsoft iSCSI Software Target, показанную на экране 3. Эту оснастку можно найти в папке Administrative Tools в меню Start. Щелкните правой кнопкой мыши по закладке Devices и выберите пункт Create Virtual Disc в контекстном меню, чтобы запустить мастер Create Virtual Disc Wizard. По ходу работы мастера вам будет предложено указать расположение и имя файла VHD, представляющего виртуальный диск, размер виртуального диска в мегабайтах и описание виртуального диска. Вы также увидите подсказку о необходимости указания объектов iSCSI, которые смогут получить доступ к виртуальному диску. Объекты iSCSI вы сможете задать позже.
Экран 3. Оснастка Microsoft iSCSI Software Target |
В системе Storage Server можно монтировать, инициализировать, форматировать виртуальные диски, а также присваивать им букву диска c помощью стандартной оснастки Disk Managment, знакомой вам по работе с системой Windows Server. Такой подход позволяет подготовить виртуальные диски, перед тем как предоставлять их клиентам. Также вы можете создавать резервные копии смонтированных дисков, используя свое стандартное программное обеспечение для резервного копирования. Чтобы выполнить монтирование диска, выберите виртуальный диск в оснастке Microsoft iSCSI Software Target, щелкните по нему правой кнопкой мыши, выберите пункт Disc Acсess в контекстном меню и запустите операцию Mount Read/Write. Можно демонтировать виртуальный диск, щелкнув по нему правой кнопкой мыши, выбрав пункт Disc Acсess в контекстном меню и выполнив команду Dismount.
Вы можете создавать снимки виртуальных дисков, используя оснастку Microsoft iSCSI Software Target. Для этого необходимо щелкнуть правой кнопкой мыши по виртуальному диску и выбрать операцию Create Snapshot. Снимки можно монтировать по аналогии с виртуальными дисками. Вы также можете вернуть виртуальный диск к состоянию сохраненного мгновенного снимка и экспортировать его. При экспортировании снимка вы делаете его доступным для клиентов iSCSI, как будто это обычный виртуальный диск. Когда снимки становятся ненужными, их можно удалять.
С помощью мастера Schedule Snapshot Wizard, который вы можете запустить, щелкнув правой кнопкой мыши по разделу Schedules, расположенному внутри раздела Snapshots, можно настроить систему Storage Server таким образом, чтобы она регулярно делала снимки. Планировщик может выполнять два действия: создавать снимок виртуальных дисков или делать снимок виртуальных дисков и монтировать снимки на локальном сервере. Планировщик будет создавать снимки всех виртуальных дисков или только тех, которые вы выбрали. Создание снимков может выполняться на ежедневной, еженедельной, ежемесячной или разовой основе. Для любого графика можно выбрать день и время создания снимка.
Предоставление виртуальных дисков iSCSI клиентам
После создания виртуальных дисков необходимо указать объекты iSCSI, используемые клиентами протокола для локального монтирования дисков. Объект iSCSI привязывается к определенному виртуальному диску. Чтобы создать объект iSCSI, щелкните правой кнопкой мыши по папке iSCSI Targets и выберите пункт Create iSCSI Target в контекстном меню, чтобы запустить мастер Create iSCSI Target Wizard. После просмотра страницы приветствия вам будет предложено указать имя объекта iSCSI и его описание (необязательное). Имя объекта используется клиентами протокола iSCSI для идентификации объекта и подключения к нему. Имя объекта iSCSI может содержать только буквы и цифры без пробелов.
На втором шаге потребуется ввести уникальное имя (IQN) инициатора (клиента) iSCSI, который будет подключаться к объекту. Чтобы узнать IQN клиентов iSCSI, на которых установлена система Windows Server, нужно запустить программу iSCSI Initiator из папки Administrative Tools в меню Start. На экране 4 показана панель, в которой можно посмотреть имя IQN. Для одного объекта можно задать список из нескольких имен IQN. Вы также можете указывать клиентов iSCSI с помощью полного доменного имени (FQDN) и IP-адреса. Как только объект будет создан, выполните привязку к виртуальному диску. Для этого щелкните правой кнопкой мыши по объекту и выберите либо создание нового виртуального диска, либо использование существующего. При необходимости вы можете связать с объектом несколько виртуальных дисков. Каждый виртуальный диск, который вы добавляете к объекту, получает уникальный логический номер устройства (LUN), как и обычная подсистема SCSI. Клиент iSCSI обращается к каждому виртуальному диску, используя его LUN.
Экран 4. Вкладка General панели iSCSI Initiator Properties |
Для получения доступа к объекту iSCSI клиентскую систему настраивают с помощью инициатора iSCSI. Чтобы добавить объект, сначала его нужно обнаружить. Для этого перейдите во вкладку Discovery, нажмите кнопку Add Portal и укажите IP-адрес сервера Storage Server. Указывается IP-адрес сетевого адаптера, выделенного под обмены по протоколу iSCSI (экран 5). Как только объект будет обнаружен, он попадет в список в папке Target и получит статус Inactive. Выберите объект с таким статусом и нажмите кнопку Log On для подключения к нему. Вы можете настроить компьютер таким образом, чтобы каждый раз при запуске он подключался к данному объекту.
Экран 5. Вкладка Discovery панели iSCSI Initiator Properties |
И для объекта iSCSI, и для инициатора можно настроить дополнительные параметры, такие как исходный IP-адрес, который обычно является IP-адресом сетевого адаптера, подключенного к сети, выделенной под обмен по протоколу iSCSI. Я рекомендую просто принять стандартные настройки, за исключением случаев, когда возникают проблемы с подключением инициатора к соединителю.
После подключения инициатора iSCSI к объекту диски становятся доступными и видимыми в оснастке Disc Managment. По умолчанию диски будут выключены, и их необходимо включить. Если вы не монтировали диски в системе Storage Server и не выполняли их подготовку, необходимо инициализировать и отформатировать диски в клиентской системе, перед тем как вы сможете присвоить им букву или монтировать их в пустой каталог тома NTFS.
Защита iSCSI
В производственных средах вам, скорее всего, приходится прикладывать массу усилий, чтобы физически обезопасить свои серверы и данные. При использовании протокола iSCSI количество потенциальных рисков возрастает. Если внутренний злоумышленник или (что еще хуже) хакеры из внешней сети смогут найти доступ к вашей сети iSCSI, они получат возможность перехватывать трафик iSCSI и получать важную информацию. Кроме того, они могут подключиться к объекту iSCSI, монтировать виртуальный диск себе на машину и получить к нему доступ, если сумеют обойти различные элементы контроля доступа к файловой системе, такие как DACL.
К счастью, существует несколько решений, которые позволят минимизировать риск. Во-первых, как уже говорилось выше, нужно создать отдельную сеть iSCSI и убедиться, что никакой трафик не входит в сеть и не выходит из нее. Все маршрутизаторы, коммутаторы и другое оборудование должны быть предоставлены сети iSCSI в единоличное пользование. Во-вторых, для ограничения доступа можно задействовать протокол Challenge Handshake Authentication Protocol (CHAP), который использует общий секрет, известный объектам и инициаторам. Вы также можете применить модификацию протокола CHAP, известную как взаимный CHAP, в котором и объекту, и инициатору необходимо обладать парой секретов. Для проверки подлинности можно дополнительно использовать технологию RADIUS, которая позволяет повысить надежность.
Несмотря на то что есть возможность разрешить доступ к объекту только тем инициаторам, которые знают общий секрет, механизмы протокола CHAP не остановят злоумышленника при сборе важной информации путем простого мониторинга обмена между инициаторами и объектами. Объекты и инициаторы, использующие операционные системы компании Microsoft, поддерживают использование протокола IPsec с общим секретом, который можно задействовать для шифрования трафика между инициаторами и объектами. Имейте в виду, что использование протокола IPsec приводит к большим потерям в производительности, и это делает данный протокол менее подходящим для окружений с высокими требованиями к скорости обработки.
Верхушка айсберга
В этой статье я лишь коротко рассказал о возможностях, которые предоставляет система Storage Server. Storage Server — это решение для построения сетей хранения на основе технологий NAS и iSCSI, ориентированное на крупные предприятия и легко интегрируемое в сети Windows. Встроенная технология дедупликации поможет сохранить место на диске, а кроме того, ее можно применять в отказоустойчивых конфигурациях для построения высоконадежных комплексов. Хотя изначально все это кажется сложным, как только вы установите систему Storage Server и начнете пользоваться протоколом iSCSI, вы поймете, что данное решение предоставляет огромную свободу действий и достаточно удобно в использовании.
Джон Хоуи (jhowie@microsoft.com) — менеджер центра Microsoft Security Center of Excellence. Имеет сертификаты CISSP, CISM и CISA