- 2.1. X/Open
- 2.2. POSIX
- 2.3. System V Interface Definition (SVID)
- 2.4. MIPS Application Binary Interface (mipsABI)
- 2.5. Common Desktop Environment (CDE)
Reliant Unix - операционная система для семейства серверов RM, уже несколько лет выпускавшихся компанией Siemens- Nixdorf (SNI) и Pyramid Technology. Она возникла в результате объединения ОС SINIX и DC/OSx, вобрав в себя отличительные черты предшественников: производительность и работоспособность больших кластерных вычислительных систем от DC/OSx и высокую степень соответствия промышленным стандартам от SINIX. Система Reliant Unix полностью совместима с обоими своими предшественниками - существующие программные продукты, предназначенные для них, могут свободно выполняться на Reliant Unix. Система была разработана с учетом поддержки всех последующих расширений 64-разрядной архитектуры (Reliant Unix 5.44). Обе компании, SNI и Pyramid, стремятся к тому, чтобы семейство компьютеров RM охватило весь диапазон производительности на современном и перспективном рынке серверов. При этом представители данного семейства должны обеспечиваться единой операционной системой Reliant Unix.
Центральный момент всей системной стратегии SNI - поддержка стандартов в аппаратных средствах и программном обеспечении, а главное, неукоснительное следование им. Собственно говоря, будучи включенной в деятельность X/Open, IEEE и ANSI, компания SNI давно играет немаловажную роль в международной стандартизации. Соответствие стандартам - основа интероперабельности и переносимости, что особенно желательно в гетерогенных системных средах.
В вычислительных системах потери времени в результате прерывания работы могут стоить очень дорого. Поэтому работоспособность системы - высший приоритет для многих заказчиков. Reliant Unix поддерживает механизмы для конфигураций с высокой работоспособностью и безопасностью, а включение в систему продуктов OBSERVE и AUDIT открывает широкий диапазон возможностей.
Для повышения работоспособности во всем мире применяются кластерные архитектуры, которые обеспечивают совместное использование разделяемых ресурсов, увеличение производительности, сокращение времени отклика на запрос и простоев системы. Отличительная особенность Reliant Unix - возможность интеграции SMP- и MPP-систем в комплексные кластерные среды.
1. Семейство RM
Семейство серверов RM базируется на RISC-процессорах MIPS. Приложения и дополнительные системные программные продукты могут выполняться на всех моделях без перекомпиляции при условии, что они не используют аппаратные особенности, зависящие от конкретной модели. Семейство RM может быть масштабировано от однопроцессорных систем к SMP, включающих до 24 процессоров, и системам MPP, масштабируемых до сотен узлов. Завершают линию комплексные кластерные системы. Модели RM могут использоваться для любых целей: от настольных рабочих станций и серверов подразделений до систем класса мэйнфрейм, применяемых в центрах обработки данных.
RM200 - компактная высокопроизводительная однопроцессорная система, которую можно использовать в качестве настольной рабочей станции, сервера рабочей группы или многопользовательской системы (порядка 20 терминалов или принтеров). Модель RM300 - компактный одно/двухпроцессорный сервер, предназначенный для использования в качестве сервера подразделения или многопользовательской системы (порядка 100 терминалов или принтеров). Модель RM400 - высокопроизводительный Unix-сервер на базе 1-4 процессоров MIPS R10000, используемый как сервер больших подразделений либо небольших предприятий, или как многопользовательская система (порядка 400 терминалов или принтеров). SMP-систему RM600, масштабируемую до 24 процессоров MIPS, используют начиная от сервера подразделения (100 пользователей) до сервера большого предприятия (более 2000 пользователей). В системе RM600E (усовершенствованной RM600) применена современная архитектура cc-NUMA - кэш-когерентный доступ к неоднородной памяти [1]. Эта архитектура снимает ограничения по масштабируемости, присущие SMP, основанной на концепции системной шины, и гарантирует аппаратную кэш-когерентность для дальней памяти, в результате чего отпадает необходимость в программном обеспечении когерентности, а скорость доступа значительно возрастает. Система остается такой же простой для программирования, как и при SMP-архитектуре, но приобретает возможность гораздо большей масштабируемости. Например, модель RM600E/24 на процессорах R10000/200 МГц имеет производительность 2033 SPECint-rate-base95.
Суперкомпьютер Reliant RM1000 состоит из нескольких сотен отдельных узлов на базе процессоров, обладающих собственной оперативной и внешней памятью и соединенных высокоскоростной сетью [2]. Кластерная архитектура обеспечивает рост производительности, далеко превосходящий пределы, существующие для SMP-систем. Компании SNI и Pyramid предлагают несколько вариантов кластерной архитектуры RM (рис. 1).
Рисунок 1.
Варианты кластерной архитектуры RM.
Первый вариант - отказоустойчивый кластер обеспечивает повышенную работоспособность приложений c локальными данными, расположенными на SCSI-устройствах, подключенных к отдельным узлам. В кластере имеется возможность переключения SCSI-периферии между узлами. Ведется постоянный мониторинг серверов кластера. Когда какой-нибудь сервер выходит из строя, то его SCSI-периферия реконфигурируется, а приложения переносятся на исправные узлы. Для работы СУБД оптимален кластер, в состав которого входят до 8 RM600 (192 процессора), имеющих одновременный доступ к объединенной базе данных. Такой доступ осуществляется с помощью мультихостового SCSI. Когда на каком-либо узле произойдет сбой, то исправные узлы смогут продолжать работу без каких-либо помех для нормального функционирования базы данных.
В третьем варианте кластерный сервер создает в корпоративной сети интегрированную SMP/MPP-среду, в которой реализованы и режим оперативных транзакций (OLTP), и приложения поддержки принятия решений. В этой среде имеется возможность одновременного доступа к данным: приложения OLTP выполняются на узле RM600, а распараллеленные запросы к базе данных - на узлах MPP-системы RM1000.
2. Соответствие международным стандартам
Система Reliant Unix основана на Unix System V Release 4 (SVR4) - наиболее развитой версии Unix, включающей все основные разработки в области Unix, и интегрирует их в однородную операционную систему, которая удовлетворяет международным стандартам и стандартам де-факто.
Помимо удовлетворения основных требований к открытым Unix-платформам дополнительные компоненты Reliant Unix, такие, как доступ к базам данных, языки программирования, человеко-машинный интерфейс и коммуникации, также соответствуют международным стандартам, что подтверждается сертификатом X/Open Unix 93. Кроме того, Reliant Unix совместим с Unix 95, а впоследствии и с 64-разрядным Unix API, поддержанным SNI и Pyramid совместно с другими ведущими Unix-производителями. При этом Reliant Unix удовлетворяет mipsABI - стандарту, обеспечивающему совместимость на уровне двоичного кода для процессоров MIPS, и включает SINIX/windows - продукт, реализующий среду рабочего стола на базе X Window и OSF/Motif и соответствующий стандарту CDE (Common Desktop Environment).
2.1. X/Open
Open Group возникла в результате объединения X/Open (X/Open Company Ltd) и OSF (Open Software Foundation). Стандарт, определенный X/Open в Portability Guide 4 (XPG4), жизненно важен для открытых систем. XPG4 задает тон в определении других международно согласованных интерфейсов и в системных характеристиках, выходящих за пределы стандартов и соглашений XPG4. Маркировки Base XPG4 и Unix 95 говорят о том, что система соответствует X/Open, и гарантируют интероперабельность и переносимость.
2.2. POSIX
IEEE - международная организация, которая ведет работу в области стандартизации. IEEE в своем стандарте 1003.x, известном как POSIX, впервые определила, что означает открытая система: переносимость в другие системы, способность общаться с различными приложениями, согласованные интерфейсы пользователя. Стандарт POSIX содержит описание и определение примитивов ОС, библиотечных подпрограмм, переменных среды, системных вызовов и команд shell.
Соответствие спецификациям POSIX может иметь место лишь при условии соблюдения международного стандарта ISO/IEC. Ранее оно обеспечивалось только для стандартов POSIX 1003.1 и POSIX 1003.2. Процесс включения новых стандартов POSIX будет продолжаться. Стратегия SNI заключается в том, чтобы ОС RM всегда соответствовала X/Open.
2.3. System V Interface Definition (SVID)
В состав Unix System V Release 4, выпущенной USL (Unix System Laboratory) в 1990 году, вошли функции из различных ОС от других производителей (BSD, XENIX, SunOS) и стандартов; интерфейсы этой системы описаны в документе "System V Interface Definition" Version 3 (SVID V3), который является частью определений X/Open, принятых в качестве промышленного стандарта в мире Unix. Система Reliant Unix 5.43 соответствует соглашениям SVID.
2.4. MIPS Application Binary Interface (mipsABI)
MipsABI - это детальное описание интерфейсов двоичных программ на MIPS-процессорах с ОС Unix SVR4. Программные продукты, удовлетворяющие mipsABI, могут без каких-либо изменений выполняться на платформах, которые базируются на MIPS.
Вместе с SNI в определении данного интерфейса участвовали NEC, Oracle, Pyramid, SAS Institute, SGI/MIPS, Sony, Tandem, Unisoft, Unix International и USL. Стандарт mipsABI - основное необходимое условие для того, чтобы программный продукт продавался на массовом рынке. Он исключает необходимость производить отдельную специализированную версию для каждой платформы. Производители получают возможность сосредоточить усилия на дальнейшем развитии своих продуктов. Расширение выбора наряду с увеличением конкуренции способствует снижению цен для конечного заказчика. Поскольку все семейство RM базируется на MIPS-процессорах, то достигается полная совместимость на базе mipsABI. Система Reliant Unix 5.43 соответствует mipsABI V1.2.
2.5. Common Desktop Environment (CDE)
Стандарт общей среды рабочего стола CDE совместно разработан и определен HP, IBM, Novell и SunSoft. Спецификация CDE принята X/Open для включения в X/Open Portability Guide. Она основана на среде рабочего стола X Window и OSF/Motif, предоставляя конечному пользователю согласованный графический интерфейс на всех рабочих станциях, X-терминалах, ПК, а разработчику - единый набор программных интерфейсов для Unix-систем. Спецификация CDE включает и интегрирует существующие технологии от производителей-участников и задумана так, чтобы поддерживать распределенные приложения. В Reliant Unix реализация CDE - SINIX/Windows 3.0.
3. Основные характеристики Reliant Unix
Reliant Unix содержит следующие функциональные расширения SVR4:
- симметричное мультипроцессирование;
- интегрированные функции коммуникации;
- диспетчеризацию в реальном времени;
- усовершенствованную реакцию на сбои системы;
- расширенные функции системного администрирования;
- буферизацию (spooling) с расширенным набором функций;
- резервное копирование и инсталлирование системы;
- файловую систему с расширенными возможностями;
- интернационализацию и локализацию;
- возможность оперативной замены (OLR);
- возможность автовосстановления (LAR);
- графическое конфигурирование;
- SINIX/monitor (мониторинг выполнения);
- поддержку RAID;
- средства разработки программ.
Для поддержки SMP ядро Reliant Unix расширено функциями синхронизации доступа к системным данным, координации взаимодействия параллельных процессов и управления межпроцессорными коммуникациями. Reliant Unix обеспечивает полностью симметричное мультипроцессирование, когда все процессоры управляются единственной копией ОС с равным доступом ко всем ресурсам; каждый процессор может обрабатывать любой системный вызов, в том числе какую угодно операцию ввода/вывода и любое прерывание. Все процессоры используют единое пространство памяти через общую шину ("плотно сцепленная" глобальная разделяемая память). Динамическое распределение загрузки (равномерно между всеми процессорами) обеспечивает эффективное использование параллельных процессоров без каких-либо модификаций прикладных программ.
Этот метод, используемый для реализации мультипроцессирования, полностью встроен в ядро и не оказывает влияния на выполняемые приложения. Распараллеливание задач производится на уровне процессов - время выполнения отдельного приложения не уменьшается, однако общая производительность системы возрастает.
Reliant Unix содержит все необходимые компоненты для связи c локальной сетью TCP/IP, служащей транспортной системой для коммуникационных служб более высокого уровня: NFS, NIS и X Window. В ОС включены удаленные login, copy, shell и службы DARPA TELNET и FTP. Коммуникационная служба NFS позволяет создавать локальную файловую систему, распределенную по сети, - пользователь может получить доступ к файлам и программам, используя обычные операции чтения, записи, копирования, удаления и т. п., даже когда они физически хранятся на удаленной системе. Непосредственный доступ к NFS имеет только системный администратор. NFS может быть использована совместно с другими реализациями, например DFS на SINIX V5.2x, NFS на SINIX-ODT V1.5, NFS на другом Unix-компьютере или PC-NFS.
Стратегия диспетчеризации в реальном времени определяет порядок предоставления процессора программам и приоритеты этих программ. При общепринятой стратегии диспетчеризации приоритеты процессов изменяются динамически в зависимости от уже затраченного процессорного времени, что гарантирует хорошее время отклика для интерактивных процессов. При стратегии диспетчеризации в реальном времени приоритеты процессов изменяются только по запросу. Процессы реального времени всегда выполняются поверх других процессов.
При подключении источника бесперебойного питания сбои электроснабжения не приведут к краху системы - кратковременное нарушение питания может быть преодолено без прекращения работы (shut down) операционной системы. Если время нарушения питания превысит некоторое время задержки, то будет инициирован обычный процесс завершения работы системы. Время задержки устанавливается для предотвращения закрытия системы при кратковременном нарушении питания. Имеется система мониторинга, обнаруживающая нарушения температурного режима и сбои вентиляторов. Если такие нарушения продолжаются более трех минут, операционная система автоматически закрывается. Когда нарушения или сбой питания обнаруживаются в стойках периферии, то запускаются пользовательские скрипты, инициирующие соответствующую реакцию системы, в частности конфигурирование и деконфигурирование отдельных устройств SCSI.
Расширенные функции системного администрирования в Reliant Unix выполняет интегрированная административная система SYSADM, основанная на пакете OAM из состава SVR4 (Operation, Administration, Management) с некоторыми усовершенствованиями. Функции, предлагаемые SYSADM, включают управление идентификацией пользователей и групп, конфигурирование системы мониторов и принтеров, управление сетевой интеграцией TCP/IP, инсталлирование программных продуктов, мониторинг системной активности и администрирование средств системной поддержки.
Помимо стандартной для SVR4 буферизации (spooling) Reliant Unix предлагает усовершенствованную систему буферизации, позволяющую, например, более гибко использовать принтеры, увеличивая их работоспособность и общую производительность.
Для резервного копирования файловых систем и инсталлирования в ОС имеется мощный инструмент DSSI, с помощью которого можно резервировать и восстанавливать логические и физические диски, дисковые разделы, включая и корневую систему. Это средство также можно использовать для восстановления частично поврежденных дисковых областей и для двоичного дублирования логических и физических дисков. Носитель для резервного копирования - магнитофонная кассета.
Процедура инсталлирования системы позволяет проводить установку даже неопытному персоналу. Подготовлено несколько вариантов для оптимального инсталлирования системы с малым объемом основной и дисковой памяти. Предусмотрена возможность последующего добавления или удаления компонентов ОС для адаптации к изменяющимся требованиям. Процедура поддерживает инсталляцию больших проектов по сети. Использование сохраненных параметров позволяет провести загрузку или обновление ОС полностью без вмешательства человека.
Ответственность за сохранность данных возлагается на файловую систему с журналированием Veritas, которая обеспечивает целостность файловой системы, а в случае сбоя быстро ее восстанавливает.
Виртуальные диски - промежуточное звено между файловой системой и физической структурой диска. Виртуальные диски образуются путем комбинирования частей физических дисков в логические дисковые разделы. Виртуальный диск может быть смесью различных дисковых устройств и/или контроллеров. Функции таких дисков аналогичны физическим, за исключением того, что доступ к ним осуществляется через специальное системное обеспечение - в результате управление диском становится независимым от его реальной структуры.
Зеркалирование дисков значительно улучшает целостность и устойчивость больших объемов данных - в случае сбоя исходные данные из первичного раздела деактивируются и заменяются данными из вторичного раздела. Этот метод обеспечивает сохранность данных и возможность непрерывного продолжения обработки. Зеркалироваться могут только разделы (файловые системы) целиком, а не отдельные файлы.
Асинхронный обмен с диском, соответствующий требованиям USL V4.3, позволяет комбинировать несколько дисковых работ. Это приводит к повышению производительности дисков и улучшению поддержки работы СУБД.
Операционная система удовлетворяет требованиям XPG4 для интернационализации и локализации. В качестве стандарта доступны системные сообщения и базы данных с зависящей от страны информацией (определение особых форматов данных, денежных единиц, порядка сортировки и пр.).
Возможность оперативной замены (OLR) важных аппаратных компонентов в случае сбоя без нарушения функционирования других компонентов повышает работоспособность системы в целом. OLR доступна в Reliant Unix 5.43 для старших моделей RM600 с жесткими дисками, зеркалированными с помощью функций ОС. На RM400 OLR доступна, когда зеркалирование выполняется внутренним RAID-контроллером - OLR может быть проведена даже для системного диска.
Функция автовосстановления (LAR) позволяет компьютеру продолжать работу при поломке его аппаратных компонентов. Дефектные узлы обнаруживаются, а когда система перезагружается, деконфигурируются и не используются. LAR работает совместно с функцией порогового мониторинга и программой LOGGING. События, записанные в файле LOGGING, обнаруживаются функцией мониторинга. Когда число событий превысит определенный порог, функция мониторинга вызывает заранее подготовленные скрипты или программы, которые обеспечивают соответствующую реакцию на то или иное событие.
Для всех компьютеров серии RM возможно графическое конфигурирование аппаратуры и администрирование с помощью программы Config. Наряду с алфавитно-цифровым интерфейсом, этот инструмент имеет оконный графический интерфейс в стиле Motif, доступный на рабочих станциях с графическими возможностями. Компоненты системы имеют наглядное графическое представление, что облегчает работу системного администратора при навигации в больших конфигурациях и их редактировании. Программа обеспечивает доступ и к удаленным системам, поэтому совсем необязательно иметь опытного системного администратора на каждой установке в сети.
Перед активацией созданная или отредактированная конфигурация проверяется на согласованность, а Config реализует все изменения в системных данных компьютера и запускает процессы, необходимые для управления устройствами. Программа Config выполняет следующие функции:
На старших моделях RM600 программа Config обладает следующими дополнительными возможностями:
Для оперативной замены неисправных аппаратных узлов, подсвеченных на экране красным цветом, достаточно указать курсором на изображение узла и выбрать функцию "Change Disk". Программа Config закроет шину SCSI и выключит диск, после чего попросит администратора заменить дефектное устройство. Дефектные платы/контроллеры деактивируются простым щелчком мыши.
SINIX/monitor осуществляет мониторинг производительности для выявления узких мест в работе системы. В графическом окне показываются основные величины производительности:
ОС Reliant Unix обеспечивает необходимую программную среду для использования подсистемы RAID. Модульная структура массива дисков и гибкость системной конфигурации дополняют высокую готовность RAID уровней 1, 3 и 5.
В состав Reliant Unix входит система разработки на языке Си, компиляторы C++, COBOL, Fortran 77, Pascal и Basic.
4. Высокая работоспособность
Компьютеры серии RM могут обеспечивать коэффициент готовности 99% сами по себе, без применения каких-либо дополнительных мер. Обычно, когда речь идет о высокой работоспособности, подразумевают именно это значение. Системы, использующие все функции, предоставляемые Reliant Unix, могут достичь коэффициента готовности 99,997%, или 20 минут простоя в год.
Один из основных факторов увеличения работоспособности - минимизация времени, расходуемого на закрытие и перезапуск системы. Для ускорения перезагрузки применяются следующие методы:
Кроме того, для повышения работоспособности системы применяются уже упоминавшиеся средства OLR, LAR, RAID, резервные батареи (BBU) и источники бесперебойного питания. Дальнейшее повышение работоспособности достигается применением кластерной архитектуры с исключением отдельных узлов при сбоях. В нормальных условиях приложение использует все системы, сгруппированные в кластер. В случае сбоя системы приложения распределяются среди других систем кластера. Тем самым гарантируется доступ ко всем данным и приложениям в любое время.
5. ORACLE Parallel Server (OPS) на кластерной системе RM
Технология OPS значительно улучшает функционирование и производительность систем реляционных баз данных при их работе на RM600. Версия Oracle 7 включает возможности повышения производительности и работоспособности:
На каждом узле кластера устанавливается экземпляр Oracle с OPS. Все узлы имеют неограниченный доступ к общей области данных с помощью мультихостового SCSI. Функции координации доступа от различных экземпляров реализуются на нескольких независимых уровнях. Первый, физический уровень доступа проходит от различных узлов к общему дисковому пулу (мультихостовый SCSI). Второй, уровень кэша, включает общекластерный диспетчер кэша и распределенный менеджер блокировки (DLM), обеспечивающие согласованность данных. Третий, уровень транзакции, включает механизмы блокировки минимальных единиц данных.
Если на некотором узле кластера OPS происходит сбой, база данных остается доступной для других узлов. Приложения с неисправного узла перезапускаются на другом узле. Сбой обнаруживается следующим образом. Распределенный менеджер блокировки с регулярными интервалами обменивается сообщениями "я - живой" со всеми отдельными узлами. Если от некоторого узла вовремя не пришло сообщение, то это означает, что узел вышел из строя. Чтобы отличить сбой узла от сбоя связи, пути прохождения сообщений дублируются. В случае сбоя узла исправные экземпляры восстанавливают состояние базы данных. Эта операция выполняется оперативно, поэтому задержки в работе не ощущается.
Работа администратора базы данных значительно упрощается, поскольку имеется только одна база данных. Задачи определения и управления базой данных, а также администрирование ОС на отдельных узлах выполняются на центральной кластерной консоли RM200, которую можно использовать и как консоль управления сетью, системой и приложениями, а также в качестве сетевого рабочего места в LAN. В результате такой централизации администрирования помимо постоянной работоспособности на кластере базы данных достигается более высокая пропускная способность.
5.1. Кластерная технология и OBSERVE
OBSERVE - программный продукт для мониторинга вычислительных систем, приложений и периферии. В кластере каждый работающий узел имеет свою, не резервируемую, периферию. Узлы с регулярными интервалами выполняют взаимный мониторинг, обмениваясь сообщениями "я - живой" по продублированным межузловым соединениям. Когда на некотором узле случается сбой, то происходит автоматическое переключение на исправные узлы его SCSI-периферии (например дисков) и рабочих мест, присоединенных последовательно или через LAN, а приложения перезапускаются на исправном узле. Во время этого переключения приложения, выполняющиеся на системе, принявшей дополнительную нагрузку, продолжают нормально выполняться. Перезагрузка этой системы не требуется.
Сила OBSERVE - в его гибкости. Можно решить, какие именно события следует отслеживать и в течение какого времени. Можно выбрать компоненты системы и приложения для мониторинга и задать реакцию на обнаружение сбоев узлов кластера.
5.2. Взаимодействие между OBSERVE и OPS
Две технологии кластерных архитектур - OBSERVE и OPS - полностью независимы, но могут эффективно дополнять друг друга. С одной стороны, Oracle и OPS сосредоточены в основном на постоянной работоспособности базы данных. С другой стороны, OBSERVE:
Дополнительное использование OBSER-VE вместе с кластером OPS рекомендуется всякий раз, когда не только общая дисковая область базы данных Oracle, но также и приложения и объекты должны показывать высокую работоспособность. Кластер OPS управляет общим дисковым пулом, а OBSERVE - другими объектами (приложениями, ПК-клиентами, терминалами, локальными дисками).
6. Reliant Unix 5.44 - 64-разрядная ОС
Как известно, процессоры MIPS имеют 64-разрядную архитектуру, позволяющую перейти барьер в 4 Гбайт для адресации оперативной памяти и файловой системы. В Reliant Unix 5.44 могут выполняться одновременно и 32-, и 64-разрядные приложения. Новая версия ОС позволяет оперативной памяти RM600 расширяться до 24 Гбайт, адресному пространству пользователя - до 1 Тбайт, а размеру файлов и файловых систем - до 16 Тбайт. Поддерживаются 64-разрядные версии СУБД Oracle 8.0 и Informix 7.3. Все ранее существовавшие 32-разрядные приложения могут выполняться на версии 5.44.
Таблица 1.
Соответствие ОС Reliant Unix стандартам POSIX.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Литература
[1] Е. Коваленко. Система Sequent Extreme NUMA-Q. Открытые системы, # 2, 1997, сс. 6-13.
[2] Е. Коваленко. Архитектура RM1000. Открытые системы, # 6, 1996, сс. 5-10.