Не просто UNIX...

Операционная система Solaris

Павел Анни

Лицо системы

Незаметные работяги

Точно и в срок

   С точностью до буквы

   Московское время...

А если серьезно?

   Sun Management Center

   Solaris Resource Manager

   Динамические системные домены

   Sun Cluster

   Sun Grid Engine

   Sun ONE

Не только Solaris...

 

Sun Microsystems сообщает о результатах финансового года

 

За многие годы в отношении операционной системы UNIX сложился стереотипный образ «угрюмой» системы, подвластной только кучке хакеров, умеющих быстро-пребыстро набирать длиннющие команды на клавиатуре. В этом была доля истины, что гарантировало высокую квалификацию людей, эксплуатирующих UNIX-серверы (это вам не Windows, который может запустить кто угодно!). В последнее время, однако (спасибо движению Open Source и Linux!), все более широкие массы населения смотрят на UNIX без страха, но с некоторой мечтательностью: «Вот вырасту большой — поставлю себе Linux». А самые отважные из них строят планы о работе с Solaris, справедливо признавая первенство этого «самого UNIX’ового из UNIX’ов».

На сегодняшний день Solaris — это не просто UNIX. Помимо собственно ядра операционной системы он содержит великое множество дополнительных возможностей, приложений и инструментов, которые действительно делают его средой, пригодной для построения информационной системы от начала до конца. В этой статье мы рассмотрим лишь некоторые из программных компонентов Solaris и сетевой среды Sun ONE (Open Network Environment), а более полные описания и документы можно найти по адресам: http://www.sun.com/solaris, http://www.sun.com/sunone и http://www.iplanet.com/.

Лицо системы

Знакомство с системой начинается с пользовательского интерфейса. Как бы ни был мил и дорог каждому настоящему ценителю интерфейс командной строки и старый добрый shell, требования рынка диктуют свое. Сегодняшний и завтрашний пользовательский интерфейс Solaris — это графическая оболочка GNOME. Удобные, настраиваемые в соответствии с любыми вкусами и привычками меню и окна, система виртуальных экранов (до сих пор не понимаю, как живут без нее пользователи Windows), богатый набор настольных приложений: календарь, почтовая программа, менеджер файлов, системный монитор и многое другое...

Одна из интересных особенностей GNOME — возможность менять «кожу» по желанию пользователя. Если вам ближе и привычнее интерфейс а-ля Windows 95/98 — можете его установить (рис. 1).

Если же один его вид может навсегда оттолкнуть вас от экрана, предлагаем другой вариант, совсем непохожий (рис. 2).

Людям с изысканным вкусом приятно будет вспомнить строгий, минималистский интерфейс NextStep (да еще на французском языке! — рис. 3).

Думаете, это все варианты? Как бы не так! На сайте http://www.themes.org/ их десятки, если не сотни — выбирайте любую или разработайте свою и поделитесь с общественностью.

В начало В начало

Незаметные работяги

Но самое интересное в Solaris начинается дальше — за пользовательским экраном. Отправка и получение почты, каталоги пользователей и ресурсов, базы данных, программы поиска, сортировки, обработки файлов, справочники и руководства — все это и многое другое входит в стандартную установку Solaris. Философия системы такова, что разработчики ничего не скрывают от пользователя, а все системные средства и утилиты могут применяться и для прикладных задач.

В начало В начало

Точно и в срок

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

В начало В начало

С точностью до буквы

Вся внутренняя административная работа в Solaris построена на обработке текстовых файлов: конфигурации, скрипты, системные журналы, документы. Именно поэтому здесь имеются сильные средства обработки текстов, позволяющие полностью автоматизировать любые задачи поиска и преобразования данных. Иногда эти программы и команды могут показаться магическими заклинаниями, но именно наличие интерфейса командной строки (спасибо историческим корням!) позволяет сделать так, что большая часть работы будет выполняться автоматически, без нажатия клавиш и перемещения мыши.

sort — нет ничего проще, чем отсортировать строки файла по алфавиту: sort file. Но полезность этого не совсем очевидна (впрочем, для того чтобы зарегистрировать участников семинара, я заношу их в текстовый файл в порядке поступления заявок по почте и потом распечатываю в алфавитном порядке названий компаний). А вот наиболее частое применение сортировки в моей повседневной жизни: когда свободного пространства на диске становится все меньше, интересно узнать, какие директории занимают больше всего места. Пожалуйста:

du -k ~/ | sort -nr | head -30

Известен, правда, случай, когда человек отсортировал по алфавиту строки программы на Си — обидно: все строчки есть, но не на своих местах...

awk корнями уходит в далекой прошлое, когда установка и поддержка реляционной базы данных требовала таких усилий и ресурсов, что для решения простых задач хотелось обойтись без этого. Текстовый файл, строки которого разделены на поля, и программа awk — чем не база данных? Выборки, сортировки, печать отдельных полей в отчетах по определенному формату, слияние таблиц... Как ни архаично выглядит, но все просто, надежно и происходит автоматически.

sed — нет причин для беспокойства, ваши файлы уже редактируются. Мощнейшее средство пакетного редактирования текстовых файлов, позволяющее автоматизировать весьма сложные преобразования, включающие поиск, замену, вставку и удаление строк, слов и символов. В качестве простого примера пронумеруем все непустые строки в текстовом файле:

sed ‘/./=’ filename | sed ‘/./N; s/\n/ /’

Perl — развитие Web и технологии CGI сделало этот инструмент настолько популярным даже в кругах, далеких от UNIX, что все забыли изначальное предназначение этого языка — подготовка сложных отчетов по выборкам из больших текстовых файлов. До сих пор он является любимейшим средством системных администраторов и стал основой для целой культуры со своими традициями, легендами, героями и памятниками (см. http://www.perl.com/).

В начало В начало

Московское время...

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

at — возможность выполнить заданную команду в определенное время. При этом имеется широкий спектр возможностей задания этого времени: точное время и дата, а также время, отстоящее от текущего на определенное количество дней, часов, минут.

cron — без этого средства, позволяющего задать периодичность выполнения команд (ежедневно, еженедельно, ежегодно), системные администраторы вынуждены были бы еженощно приходить на работу, чтобы производить резервное копирование, удалять устаревшие файлы журналов и делать много другой работы вручную. А пользователям это средство дает возможность полностью автоматизировать, в частности, рассылку поздравительных писем по большому списку друзей и знакомых.

В начало В начало

А если серьезно?

Разумеется, все вышеописанное лишь вступление к серьезному использованию Solaris — к «школе администратора». Большая часть этих средств и инструментов является принадлежностью любого UNIX-сервера — от домашней Linux-станции до многопроцессорного сервера банковской системы. Чем же отличается Solaris, используемый в «серьезных» системах?

Рассмотрим этот вопрос с точки зрения администратора (пока оставив в стороне такие свойства Solaris, как масштабируемость, стабильность и надежность ядра — их не опишешь словами, их надо проверять на практике). Большое количество дополнительных свойств и продуктов, работающих с Solaris, значительно облегчают работу (и жизнь) системного администратора. Мне часто доводилось слышать такое: «Все, что вы предлагаете дополнительно, можно реализовать и самостоятельно, с помощью скриптов и программ собственной разработки». Разумеется, именно так все эти продукты и были сделаны: какое-то время назад одному администратору захотелось облегчить свою жизнь, автоматизировав некоторые процедуры. Потом путем совершенствования, развития, тестирования и отладки из этого возник инструмент, который помогает сегодняшним администраторам совершать те же процедуры, не тратя времени на написание и отладку собственных программ. В результате мы получили набор полезных средств для тех, кто эксплуатирует большие системы.

В начало В начало

Sun Management Center

Sun Management Center (рис. 4) является альтернативой:

  • периодическому просмотру системных журналов в поисках сообщений об ошибках;
  • кропотливому анализу производительности системы в поисках узкого места с помощью команд vmstat, iostat, netstat;
  • периодическому просмотру файловых систем в поисках свободного места;
  • диагностике оборудования командами PROM;
  • многим другим рутинным операциям, служащим для поддержания «здоровья» системы.

Базовая версия Sun Management Center распространяется бесплатно и включает в себя:

  • автоматическое исследование топологии сети и распознавание систем;
  • топологическое и иерархическое представления систем;
  • управление конфигурациями;
  • базовый мониторинг оборудования;
  • управление многими узлами.

Начиная с января сего года базовый пакет доступен для скачивания по адресу: http://www.sun.com/software/sunmanagementcenter/download.

Дополнительная функциональность разбита на два пакета — Advanced System Monitoring и Premier Management Applications.

Пакет Advanced System Monitoring включает:

  • полную функциональность Kernel Reader;
  • систему контроля «здоровья» (health check) для Solaris;
  • систему мониторинга файловых систем;
  • систему мониторинга размеров директорий;
  • систему мониторинга процессов и просмотра системных журналов и некоторые другие возможности.

Пакет Premier Management Applications включает:

  • Web-интерфейс управления;
  • групповые операции;
  • систему распространения конфигураций модулей;
  • интерфейс командной строки (для создания сценариев);
  • импорт/экспорт данных и некоторые другие возможности.
В начало В начало

Solaris Resource Manager

Многие администраторы со стажем с удовольствием вспоминают те времена, когда они владели инструментом влияния на пользователей — системой управления ресурсами. Были и жесткие приоритеты в системах реального времени типа RSX-11M, и квоты машинного времени на пакетную обработку на ЕС ЭВМ, и логические разделы для выполнения привилегированных задач на мэйнфреймах. И это было тем, чего им всегда не хватало в системах с разделением времени типа UNIX. Это и понятно: UNIX вырос в университетской среде, где не было критических бизнес-задач, которые должны быть выполнены в строго определенный период времени.

Внедрение UNIX-серверов в серьезные приложения потребовало более строгого распределения ресурсов — памяти, ввода-вывода, процессорной мощности. Ответом Sun Microsystems стало средство Solaris Resource Manager. Этот инструмент, также созданный группой администраторов, позволяет выделять вычислительные ресурсы отдельным пользователям, группам пользователей или отдельным процессам, с обеспечением гарантированного времени для выполнения VIP-программам и с резервом для всех остальных.

На рис. 5 показано, как выглядит типичная картина распределения ресурсов с использованием Solaris Resource Manager.

Важно отметить, что такое распределение является динамическим, то есть администратор может в любой момент изменить его в зависимости от изменения приоритетов задач.

В начало В начало

Динамические системные домены

Вдобавок к управлению ресурсами возникает желание разделить выполняемые задачи таким образом, чтобы они вообще не влияли друг на друга, чтобы, допустим, сбой или зависание одной из задач никак не сказывались на выполнении другой. Другими словами, сделать нечто похожее на логические разделы (LPAR) в мэйнфреймах. Так родилось, пожалуй, одно из самых ярких новшеств, внедренных Sun Microsystems за последние годы в своих системах, — динамические системные домены.

Инженеры-разработчики уже делали шаги в этом направлении. Так, в 1994 году статические домены были реализованы в суперсервере Cray CS6400, а динамическими они стали в 1997 году, в сервере Sun Enterprise 10000. Тогда это была первая подобная реализация в UNIX-мире — 16 динамических доменов в одной системе! Сейчас доменная система доступна даже на 8-процессорном сервере Sun Fire 3800, как и на всем семействе Sun Fire 3800-6800.

Основные свойства динамических доменов таковы:

  • полная изолированность приложений друг от друга — ошибка или сбой в одном домене не приводят к сбою в другом;
  • возможность запускать на разных доменах разные версии операционной системы и приложений, обеспечивая наличие зон разработки, тестирования и «боевой» работы;
  • возможность динамического перераспределения физических ресурсов системы путем изменения границ домена (с точностью до системной платы); процесс занимает около 1-1,5 мин;
  • возможность создания высокоскоростной междоменной сети на основе системного коммутатора (Inter-Domain Networking);
  • возможность создания междоменных кластеров высокой готовности.

Подробнее об этом см.: http://www.sun.ru/products/servers/ent10000/ras/overview.html#domains.

В начало В начало

Sun Cluster

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

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

Подробнее об этом см.: http://www.sun.com/software/cluster/.

В начало В начало

Sun Grid Engine

Известно, что в типичной информационной системе вычислительные ресурсы используются весьма непроизводительно — рабочие станции простаивают в среднем 90% времени. Многие пакеты задач, требующие высокопроизводительных вычислений, могли бы быть решены гораздо быстрее, если бы их удалось выполнять на свободных системах. Ориентируясь на эти задачи, компания Sun Microsystems предлагает программное средство Sun Grid Engine, позволяющее распределять вычислительные задачи по свободным вычислительным ресурсам простаивающих компьютеров.

Sun Grid Engine с помощью агентов, установленных на вычислительных узлах сети, производит мониторинг доступных вычислительных ресурсов, собирает задачи, требующие выполнения, в очередь и управляет этой очередью, давая задания различным узлам сети. Система управления с графическим интерфейсом позволяет управлять этим процессом как администраторам, так и пользователям, имеющим соответствующие права.

Подробнее об этом см.: http://www.sun.com/gridware/.

В начало В начало

Sun ONE

При всем многообразии возможностей, заложенных в операционную систему Solaris, она является лишь платформой для построения крупных информационных систем. Полезность системы определяется сервисами, которые она предоставляет. Компания Sun Microsystems определила свою стратегию в этом направлении, объявив программу Sun ONE (Open Network Environment), которая объединяет Web-сервисы, реализованные на платформах открытых систем в рамках существующих стандартов.

Sun ONE — это архитектура современной сетевой среды, ориентированной на предоставление сервисов, управление компонентами программ и данных (рис. 6). Данная среда включает в себя:

  • службу каталогов и политик;
  • сервер приложений, управляющий компонентами, написанными в среде J2EE;
  • службу доступа к базам данных и корпоративным хранилищам;
  • службу доставки сервисов и взаимодействия с пользователями, учитывающую все многообразие клиентских устройств (компьютеры, PDA, телефоны и т.п.);
  • средства разработки и отладки сетевых приложений.

Подробнее об этом см.: http://www.sun.com/sunone.

В начало В начало

Не только Solaris...

В этой статье мы кратко (увы, слишком кратко) рассмотрели Solaris и его окружение, позволяющее создавать и эксплуатировать сетевую инфраструктуру. Для создания среды, предоставляющей прикладные сервисы, компания Sun Microsystems предлагает семейство продуктов iPlanet, обеспечивающее функции службы каталогов (Directory Server), передачи сообщений (Messaging Server), персонализации и интеграции (Portal Server), управления приложениями (Application Server), доставки и взаимодействия (Web Server) и многие другие сервисы, входящие в архитектуру Sun ONE.

Но это уже совсем другая история и тема для отдельной статьи.

КомпьютерПресс 9'2001

1999 1 2 3 4 5 6 7 8 9 10 11 12
2000 1 2 3 4 5 6 7 8 9 10 11 12
2001 1 2 3 4 5 6 7 8 9 10 11 12
2002 1 2 3 4 5 6 7 8 9 10 11 12
2003 1 2 3 4 5 6 7 8 9 10 11 12
2004 1 2 3 4 5 6 7 8 9 10 11 12
2005 1 2 3 4 5 6 7 8 9 10 11 12
2006 1 2 3 4 5 6 7 8 9 10 11 12
2007 1 2 3 4 5 6 7 8 9 10 11 12
2008 1 2 3 4 5 6 7 8 9 10 11 12
2009 1 2 3 4 5 6 7 8 9 10 11 12
2010 1 2 3 4 5 6 7 8 9 10 11 12
2011 1 2 3 4 5 6 7 8 9 10 11 12
2012 1 2 3 4 5 6 7 8 9 10 11 12
2013 1 2 3 4 5 6 7 8 9 10 11 12
Популярные статьи
КомпьютерПресс использует