Особенности Linux-ядра, созданного для дистрибутива компании Oracle

07.01.2011 13:02

Опубликовано интервью с директором по маркетингу открытых продуктов Oracle, касающееся подготовки нового Linux-ядра для дистрибутива Oracle Unbreakable Linux. Напомним, что в конце сентября Oracle заявила о начале поставки для своего Linux-дистрибутива, являющегося клоном RHEL 5, собственной сборки Linux-ядра, специально оптимизированного для выполнения промышленного программного обеспечения и продуктов Oracle.

Из интересных сведений, которые можно почерпнуть из интервью можно отметить:

  • Ядро основано на версии 2.6.32 и включает в себя большое количество оптимизаций и исправлений, подготовленных благодаря совместной работе инженеров и тестировщиков из различных подразделений Oracle, развивающих Linux-дистрибутив, СУБД, промежуточное ПО и аппаратные платформы. Несмотря на то, что Oracle не планирует синхронизировать свои дополнения с каждым новым выпуском основной ветки Linux-ядра, разработчики отслеживают процесс развития основной ветки ядра и скорее всего будут переходить на более новые базисные версии раз в год.
  • Все созданные в рамках проекта Unbreakable Enterprise Kernel разработки являются открытыми и доступны для свободной загрузки через публичный Git-репозиторий. Все изменения подробно документируются в changelog-файле и поставляются в виде индивидуальных патчей (для сравнения, изменения, внесенные компанией Red Hat в модифицированное ядро для RHEL 6, поставляется в виде одного большого патча).
  • Готовые бинарные сборки для совместимых c RHEL 4 и 5 дистрибутивов и src.rpm-пакеты представлены на сайте public-yum.oracle.com. Не накладывается никаких ограничений на поставку подготовленного в Oracle ядра в сторонних продуктах.
  • Ядро оптимизировано для достижения значительного повышения производительности при использовании совместно с продуктами Oracle Exadata Database Machine и Oracle Exalogic Elastic Cloud, но также рекомендуется для использования с любыми другими Linux-приложениями от Oracle и любых других производителей. Большая работа предпринята в направления увеличения производительности, масштабируемости и надежности при выполнении промышленных приложений;
  • Unbreakable Enterprise Kernel гарантирует неизменность ABI-интерфейса и позволяет менять ядро без опасения нарушения совместимости с уже собранным пользовательским окружением. Новое ядро проверено на совместимость с большинством приложений RHEL 5, для запуска которых не потребуются какие-либо системные изменений. Например, пользователь Oracle Linux может перейти от ядра Unbreakable Enterprise Kernel к ядру, совместимому с дистрибутивами Red Hat, и обратно. Оба ядра покрываются стандартными планами коммерческой поддержки Oracle;
  • По сравнению с ядром из состава RHEL 5, ядро Unbreakable Enterprise Kernel демонстрирует повышение производительности в OLTP-тестах на 75%, а в Infiniband-тестах на 200%. Кроме того, при использовании нового ядра для работы с SSD-накопителями наблюдается ускорение на 137% (справедливости ради стоит отметить, что все сравнения Oracle базируются на оценке ядра из состава RHEL 5, в то время как уже вышел релиз RHEL 6 с существенно обновленным ядром, также базирующемся на ветке 2.6.32);
  • Специальные оптимизации для hi-end серверов и систем, базирующихся на архитектуре NUMA. Улучшение системы управления питанием и контроля эффективности энергопотребления. Более точный контроль потребления ресурсов CPU и памяти;
  • Поддержка расширений по контролю целостности данных (Data Integrity Extensions) и информационной модели T10-защиты (T10 Protection Information Model), что позволяет защитить данные от их повреждения при их записи в хранилище за счет сохранения дополнительных корректирующих блоков. Добавлена поддержка аппаратных платформ по управлению сбоями. Интегрирована подсистема Performance Counter, позволяющая задействовать для выявления узких мест, отладки и профилирования специальных "PERFMON" регистров, доступных в современных CPU (например, Intel Core 2);

Отдельно отмечается активное участие разработчиков Oracle в продвижении новых технологий в основную ветку Linux-ядра и организация работы в тесном сотрудничестве с сообществом. В частности, в основное ядро уже включены многие наработки Oracle, связанные с кластерными технологиями, обеспечением целостности данных, файловыми системами (например, Btrfs), виртуализацией, асинхронным вводом/выводом и тестированием качества. По оценке организации Linux Foundation силами Oracle произведено около 2.3% всех изменений в основном Linux-ядре.

Даже улучшения продвигаемые под эгидой "оптимизировано для Oracle", не являются специфичными и могут оказаться полезными для любых других Linux-дистрибутивов и приложений. Кроме того, в Oracle создана одна из самых больших в мире инфраструктур для тестирования Linux-решений, максимально приближенная к организации работы реальных промышленных систем. Linux уже используется в критических к возникновению сбоев системах компании, что гарантирует продолжение интереса Oracle к развитию Linux.