После выхода RHEL 6.2 начал переводить "What's new in Red Hat Enterprise Linux 6.2",
но т.к. постоянно появлялись более интересные материалы, закончил
перевод только сейчас (немного сократил его). Надеюсь, что актуальность
поста не совсем потеряна.
В
конце 2011 года, спустя тринадцать месяцев после релиза Red Hat
Enterprise Linux 6, выпущено второе обновление корпоративного
дистрибутива Linux. Оно является логическим продолжением первого
обновления и содержит не только исправления, вышедшие после RHEL 6.1, но
и обширный список новых функций — значительно улучшены виртуализация,
управление ресурсами и файловыми системами.
Управление ресурсами
Планировщик ядра RHEL теперь поддерживает функцию «контроля над группами
CPU потоков» (cgroup). Она предотвращает использование приложениями
больше ресурсов CPU, чем отведены этой группе даже если часть ресурсов
CPU останется неиспользованной. Это актуально, например, для «облачных»
сред доступных по «pay-per-use» (оплата только используемых ресурсов),
потому что не позволяет пользователям захватить больше ресурсов, чем они
купили. Подобные ограничения потребления ресурсов интересны так же и
для предоставления гарантированного уровня обслуживания. Теперь можно
быть уверенным, что приобретённые пользователем ресурсы CPU доступны в
гостевой системе быстро и в любое время.
Кроме того, в Red Hat улучшили масштабируемость cgroup-кода. Теперь
можно использовать несколько сотен групп, работающих одновременно без
какого-либо снижения производительности. Разработчики Red Hat так же
отмечают улучшенную производительность cgroup контроллеров для задач
ввода-вывода и работы памяти.
Ядро
Ядро RHEL основано на версии linux kernel 2.6.32 и предлагает функцию
pstore, которая позволяет анализировать данные о сбое системы (на
некоторых из современных аппаратных платформ), сохраняемые в специальной
энергонезависимой памяти.
Как обычно, компания Red Hat добавила целый ряд драйверов для поддержки
новых аппаратных средств. Особенно большое число изменений затрагивают
драйверы для систем хранения данных и сетевых устройств. Отдельного
внимания заслуживает улучшение поддержки 10-Гигабитных сетевых
устройств. Аудио драйверы, USB 3.0 и PCI Express (PCIe), также были
обновлены.
Red Hat, как правило, не меняет основные компоненты дистрибутива в
течении жизненного цикла мажорной версии RHEL (т.е, например, 6.0).
Однако, на этот раз было сделано исключение для графического стека.
Произошла смена Mesa 3D на версию 7.11 и X Server на 1.10. Разработчики
изменили своё правило для того, чтобы получить возможность обновить
графические драйверы для AMD, Intel и NVIDIA. В Release Notes упомянута и
поддержка графики Intel для следующего поколения чипсетов. Вероятно,
имеется ввиду платформа Ivy Bridge, появление которой ожидается в 2012
году. В обновлённом драйвере тачпада Synaptics добавлена поддержка
технологии мультитач (multi-touch).
В Red Hat обновили утилиту perf, используемую для мониторинга
производительности, и её kernel-компоненты, где среди прочих улучшений
была добавлена поддержка и cgroup.
Файловые системы
Улучшена поддерживаемая в рамках аддона «
Scalable File System»
масштабируемая файловая система XFS. Оптимизирована обработка нагрузок,
связанных с интенсивной обработкой метаданных, которые бывают,
например, при обращении к директории с большим количеством мелких
файлов. Ранее подобные операции могли сильно влиять на
производительность.
В качестве ознакомительной технологии (
Technology Preview), в новый релиз включена
Parrallels NFS (pNFS),
как часть NFS 4.1. Эта технология призвана существенно увеличить
скорость доступа к данным, путём параллельной обработки данных.
Благодаря «Lazy Inode Table Initialisation», такие операции с файловой
системой Ext4, как разметка диска теперь могут быть выполнены гораздо
быстрее, т.к. изначально в процессе форматирования создаются только
наиболее важные из файловых структур (а остальные чуть позже).
Асинхронная запись данных позволяет записывать данные на файловую
систему CIFS до двух раз быстрее, чем прежде.
Сети
Теперь полностью поддерживается работа с кластерной Samba (CTDB) на кластерной файловой системе GFS2.
Аддон High Availability (HA) позволяет поддерживать HA-конфигурации для приложений, работающих под управлением виртуализации VMware на гостевых ОС RHEL 6.2.
Недавно добавленный Stream Control Transmission Protocol (SCTP) для поддержки
множественной адресации
позволяет узлам сети быть доступными под разными IP-адресами. В ядре
RHEL 6 теперь есть системный вызов sendmmsg, который позволяет целому
пакету отправляемых сообщений использовать один вызов, что уменьшает
накладные расходы системных вызовов и повышает пропускную способность
сети. Так же для увеличения пропускной способности в обновления RHEL,
включены функция Transmit Packet Steering (XPS).
Виртуализация
Добавлен целый ряд новых функций, связанных с виртуализацией, которые
будут не лишними и для Red Hat Enterprise Virtualization (в RHEV 3.0 то
же ядро, что и в RHEL 6.2).
Начиная с версии 6.2, RHEL будет использовать «обмен (sharing) квантами
времени виртуального CPU» для гостевых систем KVM, имеющих доступ к
нескольким процессорам. Эта технология позволяет гостевым системам
использовать выделяемые им ресурсы более эффективно, и, следовательно,
работать быстрее. Особенно выгодно это на больших системах с
многоядерными процессорами, в них актуальна проблема качества и
производительности, которые снижаются из-за проблем преимущественного
доступа. Обычно это связано с блокировками, которые обеспечивает
эксклюзивный доступ к структурам данных. Однако, стоит заметить, что
этот функционал требует аппаратной поддержки. У AMD он называется «Pause
Filter», а у Intel «Pause Loop Exiting» (PLE).
Разработчики Red Hat повысили скорость обработки UDP данных
выполняющихся через virtio-net драйверы; RHEL 6.2 будет более эффективно
обрабатывать сетевые пакеты, которые меньше 4 Кбайт. Оптимизации
сетевой коммуникации «I/O path» предназначены для повышения
производительности. В Red Hat также отмечают, что увеличилась скорость
сетевых технологий macvtap и vhost. Однако, они всё ещё Technology
Previews и, следовательно, не включены в договор поддержки. То же
относится и к поддержке «live snapshot», которая позволяет гостевой
системе сохранять образ файловой системы во время работы — например,
чтобы создать резервную копию данных.
На NUMA-системах с помощью libvirt теперь можно не только определить
используемые процессоры, но и области памяти для гостевых ОС. В идеале,
это позволяет использовать память, которая наиболее доступна для
приложений, исполняемых на NUMA-узле. Qemu, который используется для
KVM, теперь также предлагает эмуляцию USB 2.0. При работе в
паравертулизированном Xen гостевой ОС, RHEL 6.2 поддерживает ballooning
(«подкачку») памяти, функцию, которая позволяет корректировать память во
время выполнения программы.
Также недавно стала поддерживаться работа приложений в
Linux Container (LXC).
Это позволяет отделить приложения от остальной системы и регулировать
использование ресурсов с помощью cgroup и пространства имён. Данный
функционал может быть задействован через libvirt API и virt-manager;
однако, у неё также статус Technology Preview на данный момент.
Подробнее?
Более подробную информацию об этих и других новых функциях RHEL 6.2
можно найти в документации Red Hat. Краткий обзор доступен в "
Red Hat Enterprise Linux 6.2 – What's New". Полную информацию можно найти в
Release Notes, а для тех, кто хочет копать ещё глубже —
Technical Notes.