Новые технологии делают популярную ОС еще более привлекательной
За последний год компания Sun Microsystems приложила немало усилий для доработки операционной системы Solaris 10. В ходе эволюционного совершенствования Solaris, который традиционно был распространенной корпоративной системой и пользовался популярностью на финансовых, телекоммуникационных и прочих вертикальных рынках, стал еще более привлекательным для ИТ-директоров предприятий среднего и крупного бизнеса с многочисленным парком машин. Нововведения в последнем релизе Solaris позволили повысить эффективность работы, избавить администратора от множества рутинных операций, а также дали возможность быстрее обнаружить и устранить неполадки.

Более продуктивной и удобной систему сделало применение таких инновационных технологий, как технология динамической трассировки DTrace и практически полностью переработанный инструмент виртуализации Solaris Containers. Эксперты рынка настолько высоко оценили эти усовершенствования, что после официальной презентации Solaris 10 технология DTrace была названа бизнес-изданием Wall Street Journal наиболее значимой инновацией 2006 года.

“Изнутри” DTrace представляет собой средство мониторинга, которое позволяет выявить истинную проблему, когда без явно определяемых причин ухудшается производительность, сервер зависает или возникают какие-либо другие неполадки в работе системы. По сути, разработчики DTrace объединили стандартные системные средства мониторинга и диагностики Unix и Linux, добавив некоторые новые команды и сделав ее более доступной и удобной в использовании. С применением DTrace можно отследить все системные вызовы, устройства, интерфейсы и процессы. При запуске компьютера DTrace по умолчанию находится в состоянии наблюдения, запрещающем изменение системы. Существует, однако, системный ключ, который дает возможность администратору запускать или останавливать процессы, посылать сигналы, вызывать прерывания либо записывать данные в файл или канал.

Одна из примечательных особенностей DTrace — агрегирование. С помощью этой функции можно подсчитать, сколько определенных вызовов происходило в заданный промежуток времени и сколько времени занял каждый вызов. Также можно проследить, какие процессы и с какой частотой запускаются во время работы приложения, частоту их обращения к диску, а также отследить процессы, длительность жизни которых составляет несколько миллисекунд. В целом, использование динамической трассировки задач позволяет повысить скорость работы программ до 30 раз.

Технология Solaris Containers также призвана существенно упростить работу системному администратору. Функционально она представляет собой виртуальные софт-контейнеры, позволяющие более эффективно использовать системные ресурсы и минимизировать количество объектов, которыми необходимо управлять администратору. При запуске независимых приложений начинается распределение процессорного времени, оперативной памяти, каналов ввода/вывода и возникает проблема разделения ресурсов между ними. Solaris Resource Manager позволяет задать распределение ресурсов между созданными контейнерами. Материнская операционная система, ядро которой используют созданные контейнеры, интерпретируется системой как глобальный контейнер. Примечателен тот факт, что в Solaris Containers виртуализируется не аппаратная платформа, а окружение операционной системы со своим набором процессов, сетевым адресом, файловой системой. Формируется рабочая среда, которую пользователю на первый взгляд сложно отличить от традиционного Solaris.

В контейнерах пользователь может работать с приложениями, создавать пользователей, работать с внешними устройствами, файловыми системами и сетью. При настройке контейнера можно указать, будет ли он иметь собственный независимый набор программ и приложений или будет использовать программы, “заплатки” и глобальные настройки, установленные в глобальной зоне. Это позволяет снизить утилизацию системных ресурсов и администрировать только одну копию операционной системы даже при установке нескольких сотен виртуальных серверов. При этом отсутствует возможность устанавливать различные операционные системы или разные их версии, но вместо этого экономится та часть процессорных ресурсов, которая обычно тратится на поддержание инфраструктуры виртуализации.

Еще одно удобство пользования контейнерами заключается в том, что их можно перемещать вместе с созданными внутри них пользователями, установленными приложениями и данными. Система контейнеров разработана таким образом, чтобы обеспечить максимальную безопасность. Все процессы, происходящие внутри контейнера, могут быть видны только из самого контейнера или из глобальной зоны. Таким образом, контейнеры могут использоваться при создании систем с доступом из интернета. В сеть выходит не глобальная зона, а один из контейнеров, который выполняет функции портала. Даже в случае взлома какой-либо зоны злоумышленник не сможет получить доступ ко всей системе, а останется в рамках контейнера. Также есть возможность задавать процессорные доли как в многопроцессорных, так и в однопроцессорных системах. Настройки этих технологий можно динамически корректировать по мере изменения нагрузки. Итак, усовершенствованная технология контейнеров позволяет создавать до 8192 полностью изолированных виртуальных операционных систем, которые будут функционировать как набор независимых серверов Solaris 10, работающих на одном физическом сервере.

КОММЕНТАРИИ ЭКСПЕРТА

Комментарии относительно особенностей развития и применения ОС Solaris в качестве корпоративной платформы редакции PCWeek/UE дает Павел Анни, руководитель отдела продуктов и решений представительства Sun Microsystems в регионе СНГ.


Павел Анни: “DTrace делит историю Solaris на “до“ и “после“. Издание Wall Street Journal назвало эту технологию наиболее значимой инновацией 2006 года“
Павел Анни: “DTrace делит историю Solaris на “до“ и “после“. Издание Wall Street Journal назвало эту технологию наиболее значимой инновацией 2006 года“
PCWeek/UE: За счет чего ОС Solaris продолжает завоевывать популярность новых пользователей?

Павел Анни:
Solaris уже завоевал репутацию стабильной корпоративной системы и продолжает свое развитие в этом направлении. Проводятся конференции, на которых в течение нескольких дней проходит обмен мнениями между разработчиками и пользователями Solaris. На сайте OpenSolaris создан раздел Community Statistics, где можно получить информацию о том, сколько ошибок было обнаружено и исправлено, сколько предложений по усовершенствованию было внесено.

На сегодняшний день Solaris является хорошей платформой для обучения студентов в университетах. Это одна из существенных целей, которых мы хотим добиться, — обеспечить обучение специалистов с использованием настоящей корпоративной системы, а не на базе каких-либо других платформ. В этом направлении уже предприняты определенные действия: на сайте OpenSolaris выложен в общем доступе целый набор материалов для университетского курса с лекциями и презентациями. После его прохождения будущий специалист получает широкий спектр знаний о Solaris.

Для системного администратора Solaris стал максимально приспособленной для наблюдения системой. В последних релизах Solaris исключена возможность создания ситуации, когда по невыясненным причинам резко ухудшается быстродействие системы. Даже без использования исходного кода, с помощью инструментария Dtrace, можно добиться проникновения вглубь Solaris, вплоть до системных стеков. Если это не помогает, то можно обратиться к исходному коду, понять, что и каким образом происходит. На сегодняшний день можно смело утверждать, что Solaris  — наиболее прозрачная корпоративная операционная система из всех существующих, начиная от систем мониторинга и заканчивая исходным кодом.

PCWeek/UE: Кто предоставляет корпоративным заказчикам сервисную поддержку по ОС Solaris?

П. А.:
Что касается корпоративных заказчиков, которые хотят получить четкий и определенный сервис, компания Sun Microsystems может предоставить этот сервис заказчику непосредственно, предлагая официальный дистрибутив Solaris. Версия Solaris сборки Sun отличается от Open Solaris. Не все функции и возможности, которые присутствуют в Solaris от Sun, были опубликованы в исходных текстах. Прежде всего потому, что внутри Solaris существует некоторое количество компонентов, например драйверов, которые мы получаем от сторонних организаций и не имеем права публиковать для соблюдения лицензионных соглашений. Существуют фрагменты кода, получаемого от производителей аппаратных частей в виде т.н. code-drop, например фрагмент двоичного кода, который наши разработчики вставляют в оболочку драйвера. То же самое касается OpenOffice.org и StarOffice — есть несколько функций, унаследованных от других производителей, которые мы не имеем права открывать.

Здесь можно привести аналогию с Linux Red Hat и Linux Gentoo. Linux Red Hat скомпилирован компанией Red Hat, которая несет за него ответственность. Linux Gentoo пользователь может загрузить с сайта и скомпилировать самостоятельно. Отличие заключается в том, что Red Hat не может повлиять на процесс разработки Linux, руководить процессом разработки ядра. У Sun другая ситуация — наша компания полностью контролирует всю разработку и может вносить изменения в финальный код ОС. Поэтому пользователи будут получать поддержку от Sun на ту версию Solaris, которую им поставила Sun.

PCWeek/UE: Как происходит обмен инновациями между “открытыми” версиями Solaris и официальным релизом, на который распространяется поддержка Sun Microsystems?

П. А.:
На данный момент в Open Solaris выложен исходный код следующей версии Solaris, которая сейчас находится в стадии завершения разработки, но скоро будет выпущена и станет официальной. На данный момент она носит рабочее название Solaris Nevada. Таким образом, в Open Solaris сегодня фактически выложен будущий Solaris. Корпоративный пользователь при заказе любой машины производства Sun получает установленный официальный Solaris, DVD с дисками Solaris, поддержку от Sun. Также существуют сервисы Update Connection и Solaris Connection, подписавшись на которые пользователь получает обновления и апдейты.

На данный момент существует три версии ОС: Solaris 10  — официальная версия, Solaris Nevada или Solaris Express — “следующий” Solaris, который представляет собой собранные двоичные файлы из Open Solaris, а также сам Open Solaris. Версии Solaris 10 и Solaris Express можно скачать с http://www.sun.com/, а Open Solaris с http://opensolaris.org/. Там находятся исходные коды, из которых пользователь потом собирает свой собственный Solaris. Естественно, в Solaris Express поддерживается больше возможностей, чем в текущем Solaris 10.