Московский государственный университет путей сообщения
Опубликован: 11.04.2006 | Доступ: свободный | Студентов: 1311 / 300 | Оценка: 4.39 / 4.00 | Длительность: 17:21:00
ISBN: 978-5-9556-0036-1
Специальности: Разработчик аппаратуры
Лекция 10:

Кластерная технология Parallel Sysplex

< Лекция 9 || Лекция 10: 123 || Лекция 11 >

В центрах обработки данных бывает необходимо иметь более одного процессора. Такой подход оказывается весьма полезным для обеспечения большой мощности вычислительных ресурсов и емкости ресурсов данных, а также возможностей восстановления в случае сбоев. Однако независимое управление несколькими большими системами создает проблемы при разделении общих ресурсов и увеличивает стоимость эксплуатации. Архитектура zSeries позволяет соединить множество систем и рассматривать их как единую логическую единицу. Это достигается с помощью технологии, разработанной корпорацией IBM, и называемой кластерной технологией Parallel Sysplex (Sysplex - это аббревиатура слов System Complex) [4.3].

В рамках рассматриваемой технологии системы zSeries различные конфигурации могут взаимодействовать как между собой, так и с процессорами более ранних серий. В этой связи, помимо вышеуказанных преимуществ, Parallel Sysplex позволяет равномерно распределять загрузку между новейшими процессорами и процессорами более старых моделей.

Кроме того, Parallel Sysplex дает пользователям возможность выполнять динамическую реконфигурацию (добавление или удаление процессоров) системы без ее остановки и последующего рестарта. Следует также отметить обеспечение целостности разделяемых между несколькими процессорами данных при их постоянном изменении.

Впервые базовая среда Parallel Sysplex была введена корпорацией IBM в 1990 году. Она обеспечивала управление мультисистемами с помощью компонента системы MVS/ESA (известной теперь как OS/390), называемого межсистемными сервисами Coupling Facility (XCF). Компонент XCF дает возможность установленным в среде системы программам взаимодействовать с программами этой же системы, или других систем. В базовой среде Sysplex образы выполняющихся OS/390 взаимодействуют с использованием соединения <канал-к-каналу> и разделяемых данных. В случае нахождения выполняющихся образов на различных процессорах они синхронизируются с помощью Sysplex-таймера для обеспечения корректной совместной работы, что очень важно для обработки разделяемых данных.

Таким образом, кластер Parallel Sysplex zSeries содержит новейшую технологию мультисистемного разделения данных. Каждый узел кластера может одновременно обрабатывать разделяемые данные в памяти локального процессора под синхронным управлением, опирающимся на аппаратные средства. В результате этого текущие запросы, относящиеся к логически единому процессу, такому, как обработка транзакций или запросы к базе данных, могут динамически распределяться для параллельного выполнения на узлах кластера Sysplex с использованием доступных ресурсов процессоров. Расширение мощностей серверов в рамках рассматриваемой технологии достигается связыванием в единый кластер до 32-х процессоров. При этом каждый сервер в кластере Parallel Sysplex имеет доступ ко всем ресурсам и данным, а каждый образ может выполняться на любом сервере. Такое разделение данных и параллельное выполнение образов позволяют динамически балансировать нагрузку по всем серверам кластера Parallel Sysplex. Динамическое распределение нагрузки, в свою очередь, позволяет переназначать нагрузку на доступные серверы в случае выхода из строя программного обеспечения или аппаратных средств какого-либо из серверов кластера. Таким образом обеспечивается непрерывность вычислительного процесса в целом.

Еще одно важное достоинство технологии Parallel Sysplex заключается в возможности манипуляции программными и аппаратными средствами без нарушения работоспособности системы в целом. Благодаря разделению данных и динамическому управлению загрузкой, серверы могут быть удалены из кластера или добавлены к нему без остановки работы системы. Это свойство позволяет заказчикам конфигурировать кластер <по шагам>, в соответствии со своими текущими потребностями. Ниже рассматривается архитектура кластеров Parallel Sysplex и программные средства их поддержки.

Структура Parallel Sysplex

Технология Parallel Sysplex включает в себя программные, микропрограммные и аппаратные средства, которые тесно взаимодействуют между собой. Структура кластера Parallel Sysplex представлена на рис. 4.15 [4.3,4.5].

Ядром кластера являются два или более центральных обрабатывающих комплексов (Central Processing Complex, CPC), однако в отдельных случаях возможно построение кластера из одного CPC. Обычно это процессоры моделей ES/9000, S/390 или z900.

Для обеспечения взаимодействия между сервисами Parallel Sysplex необходимо наличие связей между участвующими в нем системами и подсистемами. Для реализации таких связей между CPC необходимо, по меньшей мере, две линии: входная и выходная. Эти линии могут быть реализованы как ESCON/FICON-каналы или как устройства Coupling Facility. Устройства ESCON/FICON представляют собой волоконно-оптические широкополосные каналы связи.

Структура кластера Parallel Sysplex

Рис. 4.15. Структура кластера Parallel Sysplex

Как видно из рис. 4.15, CPC соединяются между собой устройствами Coupling Facility (CF). Эти устройства представляют собой процессоры, обеспечивающие среду для хранения разделяемых данных, откуда они могут быть считаны для обработки внутри Parallel Sysplex.

Процессор CF может быть реализован либо в виде логического раздела (LPAR) в рамках процессора S/390, но без каналов ввода/вывода и периферийных устройств, либо в виде автономного процессора. Поэтому принято различать автономные и внутренние CF. Автономный CF обычно реализуется на процессоре типа 9674 и является внешним по отношению к CPC, что показано в левой части рисунка. В последнее время большинство CPC снабжается внутренними CF, которые перед использованием нуждаются только в активации. Этот вариант показан в правой части рисунка. Блок z900, например, может поставляться с несколькими центральными процессорами общего назначения (CPU) вместе с дополнительными CPU, которые могут быть сконфигурированы и использованы только как LPAR CF. Кроме того, имеется возможность конфигурирования одного или более разделов LPAR системы S/390 в качестве CF. Следует отметить, что с точки зрения конечного пользователя никакой разницы между типами CF не существует. Связь CF-CPC функционально является эквивалентной каналам CPC, к которым подключаются периферийные устройства. Она обеспечивает физический путь передачи данных из CF и приема данных в CF.

Код управления CF (CF Control Code, CFCC) является эквивалентом операционной системы этого устройства. Он реализуется только в виде микрокода внутри CF. Следует отметить, что на данном процессоре никакое программное обеспечение не выполняется.

В качестве оконечного устройства каждое CF имеет в своем составе адаптер связи. Такой адаптер обеспечивает прием и передачу данных между CF и CPC и реализован в виде специального микрокода. Адаптер имеет внутренние буферы, в которые помещаются данные. Буферы, подобно субканалам, характеризуются внутренним состоянием. Так, например, субканал может иметь состояние <субканал занят> в случае заполнения буфера. Состояние буферов контролируется соответствующими сервисами Parallel Sysplex.

Конфигурации последних версий Parallel Sysplex могут включать в свой состав еще один вид связей, называемый связью CF-к-CF. Этот вид связей используется некоторыми сервисами разделения данных для синхронизации изменений в данных. Примером такого сервиса может служить иерархическая база данных.

Для корректного функционирования кластера необходима информация о его конфигурации, текущем состоянии и т. п. Эта информация хранится в так называемых Coupling - наборах данных (Coupling Data Sets, CDS). Каждый CPC имеет в своем составе дисковые накопители DASD, содержащие множество наборов системных данных различного назначения. Эти наборы данных в рамках кластерной технологии Parallel Sysplex рассматриваются как общий (единый) набор наборов данных, необходимый для определения и функционирования кластера и его сервисов. Он разделяется всеми компонентами Parallel Sysplex. CDS определяет окружение кластера и содержит политики, используемые для описания способов управления функционированием Parallel Sysplex со стороны OS/390 или z/OS. В CDS можно выделить шесть Coupling-наборов:

  • Базовый Coupling-набор. Этот набор определяет структуру кластера и содержит информацию, относящуюся к таким компонентам Sysplex, как OS/390 или z/OS и компонентам специальных групп внутри него, называемых XCF-группами (будут рассмотрены ниже).
  • CFRM CDS (Coupling Facility Resource Management). Этот набор содержит политику управления ресурсами, которая определяет Coupling Facility и структуры, которые могут быть распределены внутри CF.
  • LOGR CDS (Logger CDS) содержит политику регистрации, используемую системным регистратором для построения регистрационных потоков клиентов. Клиентом системного регистратора является общий сервер очереди (Common Queue Server, CQS), который выполняет запись в два регистрирующих потока: один для очереди полностью разделяемых структур, второй - для локальных структур.
  • SFM CDS (Sysplex Failure Management CDS) содержит политику управления восстановлением после сбоев, которая определяет, как система реагирует на различные типы сбоев, такие как потеря связи между компонентами кластера, занятость адаптера CF и т. п.
  • ARM CDS (Automatic Restart Management CDS) содержит политику управления автоматическим рестартом (перезапуском) системы, которая определяет стратегию для рестарта заданий или задач в случае их аварийного завершения.
  • WLM CDS (WorkLoad Manager CDS) содержит политику, используемую менеджером загрузки для управления системными ресурсами с целью их равномерного распределения.

Под политикой в данном случае понимается описание того, как Sysplex должен управлять ресурсами и событиями. Политики обычно создаются администраторами кластера или системными программистами и загружаются при инсталляции. Например, политика ARM описывает действия сервиса восстановления, которые он должен выполнить при сбое в какой-либо подсистеме. Как было показано выше, каждая политика содержится в своем CDS.

В 1990 году наиболее широко известная операционная система IBM MVS была модернизирована с целью включения в ее состав специального системного программного обеспечения, получившего название <межсистемные сервисы>, Coupling Facility (XCF). С появлением технологии Parallel Sysplex XCF стало основной частью всех разрабатываемых в среде MVS, OS/390 и z/OS программных систем различного назначения. В настоящее время XCF обеспечивает сервисы Sysplex для операционных систем IBM и подсистем, таких как иерархическая база данных. Примерами таких сервисов могут служить групповые сервисы, сервисы мониторинга, сервисы восстановления и т. п. Более подробно сервисы XCF будут рассмотрены в следующем разделе. Однако и сейчас можно отметить, что фактически все они имеют отношение к коммуникациям между компонентами операционных систем и/или подсистемами и Sysplex.

В связи с развитием кластерной технологии появился еще один набор сервисов OS/390 и z/OS, известный в настоящее время как расширенные межсистемные сервисы Coupling Facility (XES). Эти сервисы обеспечивают компонентам операционных систем средства разделения данных для доступа к разделяемым данным в структурах Coupling Facility. Примерами таких сервисов могут служить сервисы соединений, блокирующие сервисы, сервисы кэширования и т. п.

Внутри Coupling Facility имеются блоки памяти, обращение к которым осуществляется как к структурам. Эти структуры содержат все относящиеся к пользователям разделяемые данные. Можно выделить три типа доступных пользователям структур, каждая из которых предоставляет различные наборы функций: структуры кэширования, структуры блокировки и списочные структуры. Эти структуры содержат информацию о разделяемых данных, разделяемых очередях сообщений и ресурсах. Определение этих структур и управление ими является одним из самых существенных моментов при реализации многих Sysplex-приложений.

Некоторые Sysplex-сервисы распределяют и используют внутреннюю память CPC для сигнализации о наступлении различных событий внутри Coupling Facility. Эта память распределяется в виде битовых векторов в аппаратной системной области памяти (Hardware System Area, HSA), в которых каждый бит сигнализирует о наступлении связанного с ним события. Имеется два типа таких битовых векторов:

  • локальные вектора кэширования, которые сигнализируют о том, что буфер базы данных был обновлен;
  • вектора списочных уведомлений, которые сигнализируют о том, что в списочную структуру пришло сообщение.

Вследствие того, что системы OS/390 и подсистемы работают в рамках Sysplex во взаимодействии с этими же подсистемами или с другими подсистемами и программами, очень важно, чтобы они использовали единое общее время. Например, две базы данных, разделяющие общие данные, фиксируют моменты времени, в которые происходили изменения данных в локальных файлах регистрации. Если эти моменты времени не будут синхронизированы, то восстановление данных (в случае их разрушения) будет затруднено. Поэтому все CPC в кластере связаны с Sysplex-таймером (IBM 9037), который и обеспечивает требуемую синхронизацию в рамках всего кластера. Существенным является также то, что два приложения, запрашивающие текущее время суток от любого CPC в кластере, обязательно получат одинаковое его значение.

< Лекция 9 || Лекция 10: 123 || Лекция 11 >