Организация внешней памяти
Организация дисковой памяти
Сервер ESS (Enterprise Storage Server) является одной из наиболее мощных систем дисковой памяти [3.12-3.15]. Он предназначен для использования в любых серверах IBM zSeries, а также может быть подключен к другим типам серверов с платформами Intel, UNIX и др. Сервер построен на основе гибкой и масштабируемой архитектуры Seascape и имеет несколько модификаций от ранних Е-моделей до F-моделей и моделей 800 и 750.
Подключение дисков в ESS выполняется в соответствии с архитектурой последовательного подключения накопителей SSA (Serial Storage Architecture), предложенной IBM в августе 1995 года и предназначавшейся в первую очередь для дисковых систем [3.16]. SSA является открытой архитектурой, основанной на использовании последовательного высокоскоростного полнодуплексного SSA-канала для подключения дисковых накопителей. Разработка этого стандарта связана с необходимостью преодоления ограничений интерфейса SCSI по длине, быстродействию и другим параметрам. Принцип организации SSA показан на рис. 3.16а. Для объединения дисковых накопителей используется кольцевая структура на основе двух последовательных линий для чтения и записи, допускающих обмен на скорости до 40 Mb/s. Каждое устройство (диски, адаптеры дисков DA), включенное в кольцо, имеет узел с двумя SSA-интерфейсами для связи с узлами соседних устройств. Между любыми двумя устройствами в кольце имеется два альтернативных пути. Суммарная пропускная способность узла достигает 160 Mb/s. Предусмотрено подключение до 127 устройств на одно кольцо с допустимым расстоянием между устройствами до 25 м (медный кабель) или до 10 км при использовании оптоволокна.
Архитектура SSA реализует концепцию соединений узел-узел, что позволяет организовать в кольце множественные обмены (spatial reuse) и тем самым увеличить его пропускную способность. Адаптер дисков может включать два узла, что позволяет подключить два кольца к одному адаптеру. На рис 3.16б показан способ реализации SSA, используемый в ESS и допускающий одновременное выполнение до восьми обменов. Сдвоенный адаптер, включающий DA1, DA2, теоретически допускает суммарную пропускную способность до 320 Mb/s.
В кольце используются принципы автоматического конфигурирования (self-configuring) и самовосстановления (self-repairing), что допускает:
- функционирование при наличии отказа линии или узла за счет реконфигурации;
- выбор альтернативных путей;
- горячую замену дисков и кабелей;
- наращивание числа дисков без останова и т.д.;
В общем случае архитектура SSA включает следующие компоненты:
- физический уровень SSA-PH1, определяющий физические и электрические параметры линий, драйверов и разъемов;
- транспортный уровень SSA-TL1, определяющий форматы посылок и кодирование управляющей информации;
- уровень SSA-SCSI отображения спецификаций SCSI на SSA-устройства, предназначенный для прямого подключения SCSI-устройств к SSA.
Обмен информацией в SSA осуществляется фреймами, обобщенный формат которых представлен на табл. 3.10. При передаче информации используется преобразование байтов в десятиразрядные символы. Флаги, состоящие из одного служебного символа, играют роль концевиков фрейма. Поле типа фрейма (1 символ) определяет назначение фрейма (управляющий, привилегированный, информационный). Адрес, включающий от 1 до шести символов, используется для указания объектов SSA или канала, принимающих фрейм. Поле данных имеет переменную длину от 0 до 128 символов и содержит данные приложений или посылки в зависимости от типа фрейма. Контрольный 32-разрядный код CRC вычисляется для всех передаваемых полей, кроме флагов. Передача фреймов между узлами реализуется с использованием подтверждающих квитанций и временной буферизации в узлах.
Флаг (1 символ) | Тип фрейма (1 символ) | Адрес (1 6 символов) | Поле данных (0 128 символов) | CRC (4 байта) | Флаг (1 символ) |
Структурная организация сервера ESS приведена на рис. 3.17. Сервер состоит из двух симметричных процессорных кластерных комплексов, реализующих функции управления запоминающим массивом. Для связи кластеров с серверами используется 16 адаптеров HA (host adapter), каждый из которых включает один порт Fibre Channel/FICON или два порта ESCON, SCSI. Каждый из адаптеров HA соединен с двумя кластерными комплексами через общие шины внутренних межсоединений CPI (Common Parts Interconnect buses). Любой кластер может поддерживать операцию ввода-вывода через любой из адаптеров HA.
Кластер включает процессорный комплекс CPC, память cache и энергонезависимую память NVS. Процессорный комплекс реализован на базе 4-way SMP процессора. В моделях ESS серии E используется 32-разрядные процессоры с частотой 332 MГц, а в моделях серии F - 64-разрядные процессоры с частотой 255 MГц. Производительность процессоров модели 800 в два раза (в 2,5 раза для турбо-режима) выше, чем у моделей F.
Память cache используется в операциях чтения и записи с дисковым массивом для увеличения производительности ESS. Каждый из кластеров имеет собственную неразделяемую память cache. Для защиты данных в операциях записи в ESS создаются две копии: одна в памяти cache, вторая - в энергонезависимой памяти NVS. Каждый из кластеров использует NVS, размещенную в другом кластере, что позволяет сохранить последнюю копию данных при отказе одного из кластеров.
Связь кластеров с дисковым массивом осуществляется через адаптеры дисков DA. Каждый кластер имеет четыре адаптера DA, содержащих по два узла SSA для подключения дисков. Это позволяет создать до восьми сдвоенных SSA-колец (см. рис. 3.17). Для построения запоминающего массива используются диски (модули DDM, включающие управление и дисковый накопитель HDD) со следующими параметрами:
- 18,2 GB 10000/15000 об./мин;
- 36,4 GB 10000/15000 об./мин;
- 72,8 GB 10000/15000 об./мин;
- 145,6 GB 10000 об./мин.
Минимальной конструктивной единицей наращивания объема запоминающего массива является дисковый блок, состоящий из 8 однотипных по параметрам дисков. Допускается использование в одном массиве дисковых блоков разного типа. Схема подключения дисковых блоков к адаптерам DA кластеров приведена на рис. 3.18. Для подключения используется восемь колец, соединенных с узлами адаптеров в разных кластерах. Базовая конфигурация предусматривает использование до двух дисковых блоков в каждом кольце, размещаемых на основной раме (блоки 1 16, 128 дисков). Расширенная конфигурация допускает подключение четырех дополнительных дисковых блоков в каждом из колец (блоки 17 48) с использованием рамы расширения (до 384 дисков).
Дисковые блоки инсталлируются парами (см. рис. 3.18), в которых они могут быть конфигурированы по стандартам RAID-5 (6+P+S или 7+P), RAID-10 (3+3+2S или 4+4), где P - диск для контрольных сумм по четности, S - резервный диск.
Хранение информации на дисках реализуется на базе двух архитектур. Архитектура CKD (Сount Key Data) или ECKD (enhanced CKD) применяется в серверах zSeries и основана на использовании записей переменной длины с указанием в них длины и ключа. В качестве команд в данной архитектуре применяются CCW.
Архитектура с фиксированными блоками FBA или FB (Fixed Block Architecture) используется для подключения ESS к устройствам со стандартами SCSI или Fibre Channel (FCP). FB-архитектура основана на представлении данных или логических дисков блоками и секторами фиксированных размеров. Местонахождение каждого блока может быть вычислено. Концепция дорожек и цилиндров при этом также используется.
Характеристики некоторых моделей ESS приведены в таблице 3.11.
Для повышения надежности хранения данных в архитектуре ESS предусмотрена возможность создания зеркальных копий данных с использованием резервных локальных или удаленных средств хранения данных [3.17]. Для этого применяются следующие способы:
- удаленное копирование PPRC (Peer-to-Peer Remote Copy);
- расширенное удаленное копирование ERC (Extended Remote Copy);
- быстрое копирование FC (Flash Copy).
Технология PPRC основана на зеркальном копировании данных, сохраняемых в основном ESS, в резервный ESS, подключенный к основному через последовательные каналы (до восьми каналов ESCON). Допускается подключение нескольких резервных ESS к одному основному и наоборот. Максимальное удаление основного и резервного ESS составляет 103 км (с повторителями). Копирование PPRC выполняется в следующей последовательности:
- Запись данных приложения в cache и NVS основного ESS.
- Отключение канала между приложением и основным ESS путем передачи приложению признака "канал свободен".
- Запись данных из основного ESS в cache и NVS резервного ESS.
- Передача признака "запись завершена" из резервного ESS в основной.
- Передача из основного ESS приложению признака "устройство свободно", сигнализирующего о полном завершении копирования.
Данный вариант копирования называется синхронным PPRC; он обеспечивает для приложения завершение операции записи в ESS только после записи в резервный ESS. Асинхронный способ PPRC Extended Distance (PPRC-XD) позволяет завершить операцию записи на этапе 2 передачей двух признаков, "канал свободен" и "устройство свободно", с последующим выполнением копирования в резервный ESS.
В отличие от PPRC, способ расширенного удаленного копирования ERC предполагает использование дополнительной системы для пересылки копируемых данных - System Data Mover (SDM). Это специальная управляющая программа, которая исполняется на одном из серверов, например, на сервере с резервным ESS. Такой сервер осуществляет пересылку копируемых данных "через себя", и ему должны быть доступны и основной, и резервный ESS. Операция записи в основной ESS завершается на этапе 2 аналогично варианту PPRC-XD, после чего сервер SDM выполняет необходимые операции копирования в резервный ESS. Способ позволяет помимо ESCON использовать для копирования линии FICON с длиной до 100 км без повторителей.
Способ Flash Copy копирования предназначен для "мгновенного" (point-in-time) создания в ESS копии имеющихся данных, что обеспечивает возможность работы приложений с копиями данных с минимальной задержкой. Процесс Flash Copy запускается функцией ESS Copy Services function для исходного и целевого томов данных в одном ESS и включает следующие фазы.
В фазе запуска процедуры Flash Copy в ESS внутренним программным обеспечением создается "пустой" резервный том и уровень метаданных, обеспечивающий фиксацию начального состояния основного и резервного томов и отслеживание последующих изменений в томах в процессе копирования. После завершения фазы запуска, которая выполняется за достаточно короткое время, резервный том, как и основной, становятся доступными для обращений. Обращение к томам осуществляется через уровень метаданных, определяющий том, с которым фактически будет выполняться требуемая операция.
Фаза копирования предназначена для физического копирования данных в резервный том. Во время этой фазы оба тома доступны для чтения/записи, а копирование по умолчанию выполняется в фоновом режиме с меньшим приоритетом по сравнению с операциями ввода-вывода. При попытке модификации в исходном томе не скопированных данных немедленно выполняется их копирование в резервный том. После завершения копирования процедура Flash Copy считается выполненной. Возможно отключение фонового копирования, при этом допускается размещение в резервном томе только исходных копий модифицируемых данных.