Linux на IBM Z - Linux on IBM Z

История операционных систем мэйнфреймов IBM
Пара мэйнфреймов IBM. Слева находится IBM Z z13. Справа находится IBM LinuxONE Рокхоппер.

Linux на IBM Z (или же Linux на Z для краткости и ранее Linux на z Systems) - собирательный термин для Linux операционная система, скомпилированная для работы Мэйнфреймы IBM, особенно IBM Z и серверы IBM LinuxONE. Подобные термины, которые подразумевают то же значение, Linux на zEnterprise, Linux на zСерия, Linux / 390, Linux / 390x, и т. д. Условия zLinux или же z / Linux также иногда используются, но IBM не одобряет эти термины, поскольку они подразумевают версию Linux, предлагаемую IBM или распространяемую IBM, что неверно. (Кроме того, «zLinux» без косой черты также неверно, поскольку программное обеспечение IBM и номенклатура программного обеспечения включают косую черту: z / VM, z / OS, z / VSE и т. Д.; Аппаратное обеспечение: z900, z13 и т. Д. )

История

Linux на IBM Z возник как две отдельные попытки перенести Linux на IBM Система / 390 серверы. Первая попытка, проект «Снежный человек», разработанный Линас Вепстас в конце 1998 - начале 1999 было независимым распределением и с тех пор было прекращено.[1] IBM опубликовала сборник патчей и дополнений к Linux 2.2.13. ядро 18 декабря 1999 г., чтобы запустить сегодняшнюю основную версию Linux на Z.[2] Официальные анонсы продуктов быстро последовали в 2000 году, включая Интегрированное средство для Linux (IFL) двигатели. Think Blue Linux был ранним дистрибутивом для мэйнфреймов, состоящим в основном из Красная шляпа пакеты, добавленные в ядро ​​IBM.[3] Коммерческие дистрибьюторы Linux представили выпуски для мэйнфреймов очень быстро после первоначальной работы с ядром.

В начале участия IBM в исправлениях Linux для IBM Z были только объектный код (OCO) модули без исходного кода.[4] Вскоре после того, как IBM заменила модули OCO на Открытый исходный код модули. Linux на Z - это бесплатно программное обеспечение под Стандартная общественная лицензия GNU.

По данным IBM, к маю 2006 года более 1700 клиентов использовали Linux на своих мэйнфреймах.[5]

Виртуализация

Виртуализация требуется по умолчанию на IBM Z; нет возможности запустить Linux на Z без некоторой степени виртуализации. (Только самые первые 64-битные модели мэйнфреймов, z900 и z800, включали невиртуализированный «базовый режим».) Виртуализация первого уровня обеспечивается диспетчером ресурсов процессора и системы (PR / SM ) для развертывания одного или нескольких логических разделов (LPAR). Каждый LPAR поддерживает множество операционных систем, включая Linux на IBM Z. A гипервизор z / VM также можно запустить как виртуализацию второго уровня в LPAR, чтобы создать столько виртуальных машин (VM), сколько ресурсов назначено LPAR для их поддержки. KVM на z - еще один вариант гипервизора.

Когда приложения Linux в LPAR получают доступ к данным и приложениям в других LPAR, таких как CICS, IBM DB2, IMS, Linux, и другие подсистемы мэйнфрейма, работающие на одном физическом мэйнфрейме, они могут использовать HiperSockets - быстро, только на память TCP / IP соединения. По сравнению со стандартом TCP / IP сетевые карты (Сетевые адаптеры, также известные как открытые системные адаптеры (OSA) в мэйнфреймах), HiperSockets могут улучшить скорость реакции конечного пользователя (уменьшить задержку сети и накладные расходы на обработку), безопасность (поскольку нет сетевого подключения для перехвата) и надежность (поскольку нет сети соединение терять).[6]

В моделях zEC12, zBC12 и более поздних моделях концепция HiperSocket выходит за пределы физической машины через RDMA через конвергентный Ethernet (RoCE) для обеспечения безопасного и высокоскоростного межсистемного обмена данными. Таким образом, приложения в LPAR A в системе A могут использовать HiperSockets для связи с приложениями в LPAR B в системе B для обеспечения атрибутов безопасности и производительности.[нужна цитата ]

Аппаратное обеспечение

Начиная с версии ядра Linux 4.1, выпущенной в начале 2015 года, Linux на Z доступен только как 64-битный операционная система, совместимая с z / Архитектура мэйнфреймы. Ранее Linux на Z также был доступен как 31-битный операционная система, совместимая со старыми моделями мэйнфреймов, выпущенными до модели z900 2000-х годов. Однако более новое 64-битное ядро ​​Linux и 64-битный Linux в дистрибутивах Z по-прежнему обратно совместимы с приложениями, скомпилированными для 31-битного Linux на Z. Исторически обозначения архитектуры ядра Linux были «s390» и «s390x», чтобы различать 31-битный и 64-битный Linux на ядрах Z соответственно, но «s390» теперь также обычно относится к одной архитектуре ядра Linux на Z.

Linux работает на стандартных CP мэйнфреймов общего назначения (центральные процессоры), а также на IFL (Интегрированное средство для Linux ). IFL - это процессоры мэйнфреймов, предназначенные для работы под Linux либо изначально, либо под гипервизором (z / VM или KVM на z). Микрокод ограничивает IFL запускать "традиционные" рабочие нагрузки, такие как z / OS, но они физически идентичны другим процессорам IBM Z. IFL обычно дешевле приобретать у IBM, чем CP.[7]

Преимущества

Linux на Z дает гибкость работы с Linux с преимуществами отказоустойчивое оборудование мэйнфрейма способна выполнять более 90000 операций ввода-вывода в секунду[8] и с среднее время наработки на отказ (MTBF)[9] измеряется десятилетиями.[10] Используя виртуализацию, можно объединить множество небольших серверов в один мэйнфрейм, получив некоторые преимущества централизации и снижения затрат, но при этом позволяя использовать специализированные серверы. Вместо паравиртуализация, Мэйнфреймы IBM используют полная виртуализация, который обеспечивает гораздо большую плотность рабочей нагрузки, чем паравиртуализация.[нужна цитата ] Сочетание полной виртуализации оборудования и легкости Виртуальная машина контейнеры, которые запускают Linux изолированно (что-то похожее по концепции на Докер ) приводят к созданию платформы, которая поддерживает больше виртуальных серверов, чем любая другая в одном месте,[11] что также может снизить эксплуатационные расходы. Дополнительную экономию можно увидеть за счет уменьшения потребности в занимаемой площади, питании, охлаждении, сетевом оборудовании и т. Д. инфраструктура необходимо для поддержки Дата центр. Мэйнфреймы IBM позволяют прозрачно использовать шаги выполнения избыточного процессора и проверка целостности, что важно для критически важных приложений в определенных отраслях, таких как банковское дело.[нужна цитата ] Мэйнфреймы обычно позволяют горячая замена оборудования, например процессоры и память. IBM Z обеспечивает отказоустойчивость для всех ключевых компонентов, включая процессоры, память, соединение ввода-вывода, источник питания, пути каналов, сетевые карты и другие. Благодаря внутреннему мониторингу выявляются возможные проблемы, а проблемные компоненты могут переключаться без сбоев даже в одной транзакции.[12] В редких случаях сбоя микропрограммное обеспечение автоматически активирует запасной компонент, отключит отказавший компонент и уведомит IBM о необходимости отправки сервисного представителя. Это прозрачно для операционной системы, что позволяет выполнять текущий ремонт без выключения системы. Многие отрасли по-прежнему полагаются на мэйнфреймы, где они считаются наилучшим вариантом с точки зрения надежности, безопасности или стоимости.[10]

Ценообразование и стоимость

Linux на Z, как правило, не подходит для малых предприятий, у которых будет менее 10 распределенных серверов Linux, хотя некоторые дорогостоящие лицензионные программы для каждого процессора могут быстро сократить это количество. практическое правило. Большинство поставщиков программного обеспечения, включая IBM, рассматривают высоко виртуализированные IFL так же, как невиртуализированные процессоры на других платформах в целях лицензирования. Другими словами, единое количество запущенных экземпляров Linux на IFL обычно считается одним «обычным» процессором при той же цене процессора при лицензировании программного обеспечения. Тестирование, разработка, обеспечение качества, обучение и резервные производственные экземпляры серверов могут работать на одном IFL (или нескольких IFL, но только при необходимости для максимальной производительности). Таким образом, после некоторого минимального порога Linux на Z может быстро стать рентабельным с учетом затрат на рабочую силу и программное обеспечение.

Уравнение затрат для Linux на Z не всегда хорошо понимается и является спорным, и многие предприятия и правительства испытывают трудности с измерением, а тем более с принятием решений на основе программного обеспечения, рабочей силы и других затрат (таких как стоимость простоев и нарушений безопасности). Затраты на приобретение часто более заметны, а небольшие немасштабируемые серверы «дешевы». Тем не менее, затраты, не связанные с приобретением, не менее реальны и обычно намного превышают стоимость приобретения оборудования.[нужна цитата ] Кроме того, отдельные пользователи и отделы в рамках крупных предприятий и правительств иногда испытывают трудности с совместным использованием вычислительной инфраструктуры (или любых других ресурсов, если на то пошло), ссылаясь на потерю контроля. Централизация серверов, которую предоставляет Linux на Z, может вознаградить сотрудничество лучшим обслуживанием и более низкими затратами, но это не означает, что сотрудничество всегда легко осуществляется в рамках корпоративной бюрократии.

Linux на Z также поддерживает менее дорогие дисковые устройства хранения, чем z / OS, поскольку Linux не требует подключения FICON или ESCON, хотя z / OS может использовать дисковое пространство более эффективно, в конечном итоге, из-за аппаратного сжатия базы данных, распространенного в z / OS. и меньшее количество экземпляров операционной системы, которые обычно требуются z / OS. Есть также некоторые эксплуатационные преимущества при использовании некоторых хранилищ, подключенных к FICON, в Linux на Z, например, поддержка z / VM Live Guest Relocation.

Соответствующие рабочие нагрузки

Характеристики мэйнфреймов предназначены для таких бизнес-нагрузок, как обработка транзакций (особенно в сочетании с одновременной крупномасштабной пакетной обработкой) и управление большими базами данных. Дизайн мэйнфрейма традиционно подчеркивает «сбалансированную» производительность всех вычислительных элементов, включая ввод / вывод, реализованную через канал ввода / вывода. Мэйнфреймы максимально разгружают ввод-вывод, системный учет и другие неосновные вычислительные задачи с основных процессоров, а z / Architecture дополнительно разгружает криптографические вычисления. Например, в одном компьютере IBM z13 доступно до 141 процессорного ядра, которое можно настроить как IFL. Однако каждая такая машина также имеет 27 дополнительных основных ядер: 2 в качестве запасных, 1 для поддержки микропрограмм, а остальные выполняют задачи поддержки системного учета и ввода-вывода. Кроме того, каждый адаптер ввода-вывода обычно имеет два PowerPC процессоров, а z13 поддерживает сотни адаптеров ввода-вывода. Существуют также отдельные процессоры, выполняющие задачи управления памятью и кешем, мониторинг окружающей среды и внутренние соединения, например.

Исторически сложилось так, что мэйнфреймы в целом и Linux на Z в частности не выполняли однозадачные вычисления с «интенсивной загрузкой процессора» с заметно высокой производительностью по сравнению с некоторыми другими платформами, за некоторыми заметными исключениями, такими как криптографические вычисления. Примеры включали большинство научных симуляций, прогноз погоды, и молекулярное моделирование. Суперкомпьютеры, включая суперкомпьютеры на базе Linux, отлично справляются с этими рабочими нагрузками. Это разделение между мэйнфреймами и другими платформами в последние годы значительно размылось, начиная с выпуска в 2008 году System z10, машины на базе четырехъядерных процессоров с тактовой частотой 4,4 ГГц и аппаратное десятичное число с плавающей запятой. Поскольку технология процессоров для мэйнфреймов продолжает развиваться, и особенно с появлением в 2015 году моделей IBM LinuxONE и IBM z13, IBM начала продвигать свои мэйнфреймы как идеальные платформы для выполнения аналитики в реальном времени и других ресурсоемких задач, которые мэйнфреймы исторически не выполняли. беги хорошо.

Мэйнфреймы не имеют графических или звуковых адаптеров и поэтому не подходят для цифровые СМИ редактирование или системы автоматизированного проектирования (CAD), за исключением, возможно, вспомогательных ролей (например, хранение контента, инвентаризация деталей, управление метаданными, службы безопасности и т. Д.)

Поддерживать

Как и все другие версии Linux, Linux на Z регулируется GPL. бесплатно программное обеспечение лицензия. Полный Linux на Z исходный код предоставляется многочисленными сторонами на бесплатной и равной основе, а архитектурная поддержка является частью основных усилий ядра Linux. IBM поручает сообществу несколько своих программистов, но IBM ни в коем случае не единственный участник.

Хотя нет никаких препятствий для запуска любого дистрибутива Linux на Z в системе IBM z, IBM регулярно тестирует три конкретных дистрибутива Linux на Z: Красная шляпа, SUSE,[13] и, начиная с 2015 года, Канонический с Ubuntu Linux. Другие известные дистрибутивы Linux на Z включают: Debian,[14] Fedora,[15] Slackware,[16] CentOS, и Gentoo.[17]

Почти все бесплатные или открытые программные пакеты, доступные для Linux, обычно доступны для Linux на Z, включая HTTP-сервер Apache, Программное обеспечение Samba, JBoss, PostgreSQL, MySQL, PHP, Язык программирования Python, Система одновременных версий (CVS), Коллекция компиляторов GNU (GCC), LLVM, и Perl, Ржавчина,[18] среди многих других.[19]

Red Hat и SUSE предлагают основную поддержку своих дистрибутивов под управлением Linux на Z.[20][21] В 2015 году Canonical объявила о планах предложить официальную поддержку своего распространения, начиная с начала 2016 года. IBM Global Services также предлагает контракты на поддержку, включая круглосуточную поддержку.[22] Некоторые стандартные программные приложения Linux доступны предварительно скомпилированными, включая популярные корпоративные программные пакеты с закрытым исходным кодом, такие как WebSphere,[23] DB2[24] и Oracle[25] базы данных и приложения, SAP R / 3, SAP ERP,[26] и IBM Ява Комплект разработчика (JDK),[27] чтобы назвать лишь несколько.

Ресурсы для разработчиков

IBM предлагает ресурсы для разработчиков, желающих настроить Linux для z:

  • Linux Test Drive - бесплатная программа, дающая право на использование одной виртуальной машины Linux на IBM Z на 30 дней.[28]
  • Приложение IBM Systems Application Advantage для Linux (Чипхоппер ), программа для разработчиков, помогающая разработчикам писать и публиковать кроссплатформенное программное обеспечение для Linux.[29]
  • Программа Community Development System для Linux на IBM Z (CDSL), платформа для предоставления Открытый исходный код разработчики платформу для переноса на Linux на System z.[30]
  • Программа удаленной разработки Linux - платная расширенная программа поддержки разработчиков.[31]

Linux на Z поддерживает Unicode и ASCII как и любой другой дистрибутив Linux - это не EBCDIC -на основе операционной системы.[32] Однако для удобства Linux может читать параметры ядра в EBCDIC. z / VM использует эту возможность.

Перенести приложения Linux на Linux на Z довольно просто. Возможные проблемы включают: порядок байтов (Linux на Z является прямым порядком байтов) и полагаться на непереносимые библиотеки, особенно если исходный код недоступен.[33] Программы можно легко кросс-скомпилированный в двоичные файлы z / Architecture в системах Linux, отличных от мэйнфреймов.[34]

Эмуляторы

Существует как минимум три программных мэйнфрейма IBM Z эмуляторы.

  • FLEX-ES от Fundamental Software - это коммерчески предлагаемый вариант.[35]
  • Открытый исходный код Эмулятор Геркулеса поддерживает Linux на IBM Z (и даже может работать в Linux на самой System z).
  • В 2010 году IBM представила функцию модульного тестирования Rational Developer для System z (теперь она называется Rational Development and Test Environment for z или иногда сокращенно RDTz), которая обеспечивает среду выполнения с ограниченным использованием, которая может работать на оборудовании X86. Условия лицензии IBM ограничивают использование RDTz определенными задачами разработки приложений, не включая окончательную предварительную компиляцию или предварительное тестирование (например, стресс-тестирование). RDTz включает z / OS (с общим промежуточным ПО), а также совместим с Linux на Z.[36]

Смотрите также

Рекомендации

  1. ^ Вепстас, Линас. «Linux на архитектуре мэйнфрейма IBM ESA / 390». Получено 5 июн 2013.
  2. ^ «Linux / 390 - Примечания и наблюдения». Получено 5 июн 2013.
  3. ^ «Linux для S / 390». Получено 5 июн 2013.
  4. ^ "На основе ядра 2.2". developerWorks. IBM. Получено 5 июн 2013.
  5. ^ Милберг, Кен. "Руководство поколения X по мэйнфрейму, часть III". Журнал IBM Systems. Получено 5 июн 2013.
  6. ^ «ГиперСокетс». Информационный центр базовых навыков z / OS. IBM. Получено 5 июн 2013.
  7. ^ «IBM Z: Linux на Z - Решения - IFL». IBM. Получено 5 июн 2013.
  8. ^ "IBM Z - Подключение ввода-вывода: FICON / zHPF / CTC". www.ibm.com. 2012-11-15. Получено 2016-06-01.
  9. ^ сотрудники, Computerworld. «MTBF». Computerworld. Получено 2016-06-01.
  10. ^ а б Грин, Тимоти. «Вот почему IBM все еще строит мэйнфреймы - разношерстный дурак». Пестрый дурак. Получено 2016-06-01.
  11. ^ "IBM: Об операционной системе z / VM". www.vm.ibm.com. 2015-01-14. Получено 2016-06-01.
  12. ^ «IBM Z - устойчивость бизнеса: управление данными - сервер». www.ibm.com. 2010-10-26. Получено 2016-06-01.
  13. ^ "IBM Z: Linux на IBM Z - Ресурсы - Проверенные платформы". IBM. Получено 5 июн 2013.
  14. ^ «Порт S / 390». Debian. Получено 5 июн 2013.
  15. ^ "Архитектуры / s390x". Проект Fedora. Получено 5 июн 2013.
  16. ^ "Проект Slack / 390 Linux". Slackware Inc. Архивировано с оригинал 23 февраля 2019 г.. Получено 25 ноября 2018.
  17. ^ «Проект: С390». Gentoo. Получено 16 октября 2014.
  18. ^ https://github.com/rust-lang/rust/pull/36369
  19. ^ «Статус Debian autobuilder для s390, 29 апреля 2013 г.». Debian. Архивировано из оригинал 24 июня 2013 г.. Получено 5 июн 2013.
  20. ^ «Red Hat Enterprise Linux для IBM Z». Красная шляпа. Получено 5 июн 2013.
  21. ^ «SUSE Linux Enterprise Server для Z». SUSE. Получено 5 июн 2013.
  22. ^ «Услуги и поддержка IBM для Linux». IBM. Получено 5 июн 2013.
  23. ^ «WebSphere MQ для Linux для System z». IBM. Архивировано из оригинал 2 января 2013 г.. Получено 5 июн 2013.
  24. ^ «Требования к установке для серверов DB2 и клиентов IBM Data Server (Linux)». Информационный центр IBM DB2 Версия 10.1. IBM. Получено 5 июн 2013.
  25. ^ "IBM System z: Linux на System z - Решения - zSolution Oracle - Обзор". IBM. Получено 5 июн 2013.
  26. ^ «Приложения SAP расширяют возможности бизнеса» (PDF). Получено 5 июн 2013.[постоянная мертвая ссылка ]
  27. ^ "developerWorks: Технические темы: Технология Java: Комплекты разработчика IBM: Linux: Информация для загрузки". Получено 5 июн 2013.
  28. ^ "Тест-драйв Linux". IBM. Получено 5 июн 2013.
  29. ^ «IBM Systems Application Advantage для Linux (Chiphopper)». IBM. Получено 5 июн 2013.
  30. ^ "IBM Z: Linux на IBM Z - Система разработки сообщества для Linux - Регистрационная форма". IBM. Получено 5 июн 2013.
  31. ^ "Программа удаленной разработки Linux". IBM. Получено 5 июн 2013.
  32. ^ «Операционная система мэйнфрейма: Linux для System z». Информационный центр базовых навыков z / OS. IBM. Получено 5 июн 2013.
  33. ^ Геллерих, Вольфганг. «Перенос приложений на Linux для Z». IBM developerWorks. IBM. Получено 23 октября 2013.
  34. ^ "Как". IBM developerWorks. Получено 23 октября 2013.
  35. ^ «Система / 390 на серверах на базе Intel». Получено 5 июн 2013.
  36. ^ «Центр разработки и тестирования Rational IBM Z». IBM. Получено 5 июн 2013.

внешняя ссылка