Продолжается подписка на наши издания! Вы не забыли подписаться?

Windows Server 2003

Павел Румянцев

Не так давно Microsoft объявил о сроках выхода новой версии серверной ОС – Windows Server 2003. Новый сервер появится на прилавках в конце апреля. В России о выпуске Windows Server 2003 будет объявлено несколько позже – в конце мая. Это заставляет предположить, что мы увидим уже локализованную версию. Московское представительство Microsoft предоставило редакции предварительную версию ОС – Windows Server 2003 RC2.

Естественно, только что вышедший «из-под пера» разработчиков Windows Server 2003 не может не привлечь внимания. Естественно, он был инсталлирован и подвергнут пристальному осмотру на предмет отличий от старой версии – Windows Server 2000. Естественно, что за короткий срок такой продукт, как Windows Server, досконально не изучишь, но кое-что всё же показалось интересным. Однако невозможно не принимать к сведению и то, что говорят и пишут по поводу этого продукта фирма-разработчик и другие компьютерные издания. При этом хорошо подходит правило, которое выработал для себя и которого придерживался начальник разведки в одном из старых советских фильмов о войне. По его словам, у него вся информация делится на три категории, - «видел», «полагаю» и «хлопцы говорят». Именно в соответствии с этим правилом и создавалась эта статья.

Здесь хотелось бы сделать небольшое отступление. При инсталляции легальной копии сервера мы в редакции моментально столкнулись с весьма неприятной особенностью этого продукта. Как известно, сервер является одним из продуктов, для использования которых необходимо пройти процедуру авторизации в Microsoft, примерно такую же, как при установке Windows ХР. Таким образом Microsoft борется с пиратами и пытается добиться, чтобы у каждого пользователя был свой собственный экземпляр ПО. Наверное, тем самым жизнь пиратам Microsoft усложнила, но надолго ли? И насколько серьёзно это усложнение? А вот обычным пользователям, не подключенным к Интернет постоянно, от такой процедуры регистрации одна морока. Мы намеренно попытались авторизоваться разными способами – как по Интернет, так и по телефону. Когда мы пытались произвести авторизацию по телефону, нам пришлось минут двадцать «висеть на телефоне» и слушать звучащую в трубке приятную музыку, периодически прерываемую голосом «железной леди», объясняющей нам, что все сотрудники заняты… А представьте себе, как парень, к примеру, из Петропавловска-Камчатского дозванивается до Москвы… Каково ему будет дожидаться ответа в течение получаса, и дождется ли он его вообще, учитывая наше качество связи? Кстати, кажется, и у сотрудников службы авторизации нет чёткого понимания лицензионной политики фирмы. Во всяком случае, ответ на свой вопрос о том, на скольких компьютерах я имею право устанавливать trial-версию Windows, я ждал двое суток… Регистрация через Интернет (при условии наличия правильно сконфигурированного подключения) не составляет никаких проблем.

Итак, как декларирует Microsoft («хлопцы говорят»), Windows Server 2003 является очередным шагом на пути эволюции (заметьте, эволюции!) серверной платформы. После выпуска семейства ОС Windows XP, не содержавшего сервера как такового, появление нового серверной ОС выглядит совершенно естественно. Но почему об этом сервере (или семействе) так много говорится? Наверное, потому, что одной из особенностей этого продукта является поддержка им технологии .NET. Если в предыдущих версиях операционных систем семейства Windows приходилось инсталлировать .NET Framework как самостоятельный продукт или как часть другого продукта (скажем, Visual Studio .NET), то в данном случае .NET Framework встроен в операционную систему. Естественно, в этом случае сервер непосредственно после установки готов к запуску на нём .NET-приложений. Это снимает одно из препятствий на пути распространения платформы .NET как таковой. До сих пор создание .NET-приложений натыкалось на необходимость распространять вместе со своей программой дистрибутив .NET Framework – ведь ни одна из существующих ОС .NET Framework не содержит.

Вернёмся к нашим баранам. Что же нового привнесла Microsoft в эту версию ОС? В тех случаях, когда говорится о новых возможностях Windows Server 2003, в пресс-релизах Microsoft в основном используются слова «improved» и «enhanced», а не «new». Наверное, в данном случае это к лучшему. Понятно, что написанная «с нуля» и ещё неотработанная система изобиловала бы ошибками, на «вылавливание» которых потребовались бы годы… Приятно, что Microsoft уделила особое внимание исправлению ошибок и несогласованностей вместо введения нескольких сот новых "фич". Вполне возможно, были найдены более эффективные алгоритмы решения тех или иных задач. Это всё понятно и объяснимо. С одной стороны, нет программ без ошибок, а, с другой стороны, нет предела совершенству. Microsoft откровенно говорит о том, что ранее выпускавшийся Windows Advanced Server, Limited Edition фактически являлся одной из ранних реализаций Windows Server 2003, то есть выпуск WAS был своеобразной «разведкой боем», репетицией перед выпуском WS2003.

Варианты поставки

Как и ранее, говоря о WS2003, мы фактически можем говорить не об одном продуктЕ, а о продуктАХ, ибо, согласно официальным документам Microsoft, семейство Windows Server 2003 состоит из четырёх продуктов. Собственно, названия этих серверов и определяют их назначение:

  1. Windows Server 2003 Web Edition – самая дешевая и ограниченная в возможностях версия. Она прекрасно подойдет небольшому Web-сайту, и, скорее всего, создана как противовес Apache. Поддерживает до двух процессоров и до 2 ГБ оперативной памяти.

  2. Windows Server 2003 Standard Edition – серверная операционная система для повседневных нужд бизнеса. Она рассчитана на применение в качестве сервера рабочей группы. Учитывая средние размеры российских предприятий, эта версия подойдет в большинстве случаев. Эта же версия подойдет и для создания корпоративного Web-сайта. Поддерживает до четырех процессоров и до 4 ГБ оперативной памяти.

  3. Windows Server 2003 Enterpise Edition – платформа для корпоративных приложений (имеются 32- и 64-разрядная версии). Поддерживает до восьми процессоров и до 32 ГБ оперативной памяти на платформе x86, до 64 ГБ – под Itanium. Эта версия может работать в кластерах, содержащих до 8 узлов.

  4. Windows Server 2003 Datacenter Edition - платформа, предназначенная для приложений, требующих высочайшего уровня масштабируемости (выпущены 32- и 64-разрядная версии). Эта версия работает минимум на 8-процессорных машинах, и поддерживает серверы, содержащие до 32 процессоров. Как и Enterpise Edition, поддерживает кластеры. Datacenter Edition способен работать c 64 ГБ оперативной памяти на платформе x86, и с 512 ГБ – под Itanium. Сообщается, что Datacenter будет поддерживать архитектуру памяти NUMA (Non-Unified Memory Architecture), но процессоры по-прежнему будут работать в SMP-режиме.

Надежность и безопасность

Хотелось бы обратить внимание читателя на одну деталь. В своих «победных реляциях», посвящённых описанию свойств нового продукта, Microsoft ПЕРВЫМ пунктом отмечает надёжность нового сервера. Думаю, что в отношении серверных ОС надёжность является само собой разумеющимся понятием, как говорится, «по умолчанию». Вероятно, вопрос надёжности функционирования был одним из краеугольных камней при разработке нового сервера. Это очень хорошо согласуется с ранее анонсированной Microsoft инициативой «trustworthy computing» (вычисления, на которые можно положиться). Как фирма заявляет в своих официальных документах, Windows Server 2003 является одним из шагов на пути к «trustworthy computing». Каждый компьютер должен создавать надёжную и совершенно безопасную среду для работы программ и устройств. Windows Server 2003, по утверждениям Microsoft, является в этом смысле одним из самых совершенных программных продуктов.

Говоря о надёжности системы как таковой, нужно остановиться как минимум на двух моментах. Во-первых, улучшена поддержка кластеров.

Во-вторых, в состав системы включён новый API, обеспечивающий новые антивирусные возможности, такие как процесс сертификации антивирусных драйверов. Есть и другие моменты – например, все настройки аппаратного обеспечения по умолчанию выставлены на минимально возможный уровень, например, по умолчанию видеодрайверы (ахилессова пята NT) не используют возможностей акселерации, предоставляемых видеоадаптером. О некоторых других улучшениях надежности будет рассказано ниже.

Если внимательно посмотреть на документы, выпущенные Microsoft в связи с выходом нового сервера, а также почитать отчёты о выступлении официальных лиц этой компании, бросается в глаза ещё одна деталь. Судя по всему, вторым краеугольным камнем при разработке сервера была его безопасность. Например, Билл Вегте, вице-президент подразделения Windows Server Division корпорации Microsoft, заявил следующее: «При разработке Windows Server 2003 мы ставили во главу угла повышение безопасности системы. Безопасность является одной из главных забот пользователей, и новые функции, реализованные в этой версии, значительно облегчают создание защищенных систем. Windows Server 2003 представляет собой надежную безопасную платформу, обогащенную целым рядом новаторских решений». В чём это проявилось на самом деле?

Репутация систем, построенных на платформе Windows, была изрядно подмочена большим количеством ошибок, не связанных с безопасностью как таковой, но приводящих к возможности обхода систем безопасности (достаточно вспомнить широко известный прием c переполнением буфера). Так как от ошибок никто не застрахован, Microsoft постарался уменьшить влияние потенциально возможных ошибок в коде на безопасность системы. По словам Microsoft, каждая строчка кода была «просмотрена» (reviewed) на предмет возможных «падений» или «слабостей». Косвенным подтверждением этому факту может служить ATL 7.1, включённый в состав MS VS .NET 2003, с использованием которого был написан Windows Server 2003. Если сравнить его с ATL 7.0, бросается в глаза, что код внимательно просматривался высококвалифицированными программистами с целью устранения небрежностей и всего, что может хоть как-то привести к непредсказуемому поведению системы, использующей этот код. Этому можно только радоваться.

Помимо этого, для обеспечения безопасности в состав сервера были включены некоторые новые возможности. Возможно, наиболее заметным (в буквальном смысле :)) является включение в состав сервера Secure Windows Update, позволяющего получать обновления непосредственно с сайта производителя ПО и не заботиться о возможном искажении их злоумышленниками. О безопасности соединения с Интернет должен заботиться Internet Connection Firewall (ICF), также впервые включённый в состав сервера.

Стоит сказать о CLR. Естественно, включение CLR в состав продукта сделано отнюдь не исключительно с целью повышения безопасности. Но использование managed code, работающего под управлением CLR позволяет сделать систему гораздо более надёжной и устойчивой.

Необходимо особо сказать и о режимах работы устанавливаемых компонентов и сервисов. По умолчанию все сервисы, имеющие выход «наружу», за пределы компьютера, устанавливаются, но не запускаются, а многие – просто не устанавливаются. Более того, после инсталляции сервер настроен на самый высокий, почти параноидальный уровень безопасности. Но в то же время автор сообщения, прочитанного мной на одном из форумов сайта rsdn.ru, пишет: «…могу высказать общее впечатление – все заблокировано (lockdown) по умолчанию по самое не хочу. То одно, то другое. Пока по всяким форумам, да статьям в Knowledge Base узнал, как все включить, упарился. А отношение мое к этому положительное. Незачем все кругом нараспашку держать, а захочешь открыть – придётся сначала узнать, что это такое…». Естественно, такой подход к политике безопасности нельзя не счесть разумным. Для облегчения жизни сразу после установки сервера появляется визард, помогающий сконфигурировать сервер под те или иные задачи.

Рисунок 1.

Microsoft в этом релизе постарался увеличить масшабируемость ОС за счет улучшения работы кластерных систем. Определённые улучшения были добавлены в NLB (Network Load Balancing) и CLB (Component Load Balancing). В частности, для управления NLB в WS2003 используется новый менеджер, позволяющий сосредоточить всё управление NLB в одном месте и, естественно, делающий это управление более простым и наглядным. Скриншот этой утилиты приведен на рисунке 1.

Как сказал Дэвид Соломон в своем выступлении, посвященном WS2003, в ближайшее время стоит ожидать появления некоторых сногсшибательных тестов производительности, уже подготовленных Microsoft.

Возможно, в результате борьбы за устойчивость ОС Microsoft допускает некоторые перегибы. Уменьшилось количество поставляемых драйверов – например, в поставке ОС не нашлось драйверов для одной из наиболее распространенных у нас сетевых карт Realtek RTL8029PCI, хотя в поставку Windows 2000 такой драйвер входил. А при установке на процессор AMD Athlon 1400 и материнскую плату от VIA общая производительность системы оказалась в полтора раза ниже стоящей системы под ХР, работающей на Pentium III 800 MHz. После установки "родных" драйверов от VIA машина "пришла в норму" и начала работать с подобающей скоростью.

А теперь поговорим о некоторых составляющих нового сервера, наиболее интересных для программистов.

COM+ 1.5

В новом продукте внесены значительные изменения в такую составляющую Windows, как COM+. Новая версия COM+ получила номер 1.5.

Эти изменения могут быть разделены на две большие группы – изменения, позволяющие осуществлять более серьёзный и гибкий контроль над поведением приложений, и изменения, приводящие к повышению надёжности. Большинство этих нововведений появились еще в ХР, но в серверной ОС они появляются в первый раз.

Поговорим сначала о гибкости управления приложениями COM+. Теперь стало возможным помечать компоненты как общедоступные (public) и скрытые (private). Если к общедоступным компонентам может обращаться, в общем-то, любое приложение, то вызов private-компонентов имеют право осуществлять только компоненты, входящие в то же приложение, что и private-компонент. Это позволяет обеспечить более высокий уровень контроля над работой приложений.

К каждому приложению может быть применена своя политика безопасности (Software restriction policy). Приведённый ниже скриншот (рисунок 2) не требует особых пояснений:

Рисунок 2.

Говоря о гибкости управления, нельзя не заметить того факта, что в новом сервере стало возможным осуществлять перезапуск процесса не только посредством интерфейса пользователя COM+ (COM+ User Interface) или программно при помощи COM+ administrative Software Development Kit. Теперь администратор имеет возможность определять условия, при выполнении которых процесс будет прекращён или перезапущен. Такими условиями могут быть захват процессом определённого объёма памяти, «молчание» процесса в течение определённого периода времени и так далее. Думаю, приведённый на рисунке 3 скриншот позволит составить более полное представление об этой возможности.

Рисунок 3.

Кроме того, на одном компьютере одновременно могут быть запущены разные конфигурации одного и того же приложения COM+. Это выполняется с помощью COM+ Partitions, позволяющих, например, создать "тестовую" и "рабочую" конфигурации приложения. Это, разумеется, упрощает жизнь администратора.

В Windows Server 2003 реализованы такие полезные вещи, как возможность давать компонентам алиасы и более гибко конфигурировать уровни изоляции компонентов. Естественно, и в данном случае можно говорить о возможности более гибкого управления компонентами и приложениями.

Теперь стало возможным конфигурировать серверные приложения COM+ как сервисы. Это позволяет осуществлять более серьёзный контроль над запуском приложений COM+. Запуск приложения как сервиса позволяет DLL, в которой реализован компонент, загружаться в память непосредственно при загрузке системы. В качестве учетной записи, под которой может запускаться сервис, теперь можно использовать учетные записи Local service и Network Service. В случае запуска приложения в виде службы может использоваться учетная запись local System.

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

COM+ 1.5 позволяет создать дамп процесса без его остановки, что, конечно, может быть использовано в отладочных целях.

И ещё один факт. Реализация COM+, включённая в Windows Server 2003, по возможности старается предотвращать ситуации, которые потенциально могут приводить к ошибкам. Например, перед созданием COM-сервера или COM-объекта COM+ пытается проверить объём свободной памяти. В том случае, если свободной памяти для создания сервера или объекта недостаточно, то попытки создания не производится.

Наконец, COM+ SOAP-сервис позволяет клиентам обращаться к сконфигурированным COM-компонентам, используя протокол SOAP (Simple Object Access Protocol) и XML. Приятно, что делается это одним щелчком мыши. COM+ SOAP-сервис облегчает развертывание COM+-приложений в сети в виде XML Web-сервисов с сохранением централизованного управления ими.

Всё сказанное выше может служить подтверждением того, что изменения, внесённые в COM+, отнюдь не являются косметическими.

IIS 6.0

Отдельного разговора заслуживает одна из «священных коров» Microsoft – Web-сервер, он же Internet Information Services (IIS).

Во-первых, как уже говорилось, при установке сервера IIS по умолчанию не инсталлируется – делать это придется вручную,

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

Даже после запуска IIS обслуживает только статический контент, другими словами, такие потенциально опасные средства, как ASP, ASP.NET, Server-Side Includes, WebDAV publishing и FrontPage Server Extensions работать по умолчанию не будут, и попытка воспользоваться ими возвратит ошибку 404. Думаю, что любой пользователь Интернета знает, что «нет повести печальней в этом мире, чем сообщение 404» (оговорюсь, что копирайт последней фразы не мой.:) ).

Internet Information Service (IIS) теперь может использовать криптографические возможности и идентифицировать пользователя по его «отпечатку» (digest authentication). Помимо этого, внесена масса изменений и дополнений позволяющих администратору сервера более гибко контролировать доступ как пользователей, так и потенциально небезопасного контента, к ресурсам.

Изменено в IIS и многое, не имеющее прямого отношения к безопасности. В частности, в настоящей версии изменён формат метабазы. Если раньше метабаза хранилась в двоичном файле, то в новой версии она хранится в формате XML. Естественно, что и порядок хранения метабазы изменился – вместо одного двоичного файла используются файлы MetaBase.xml (основной файл) и MBSchema.xml (схема, определяющая структуру основного файла).

Какая-либо забота о кластеризации с IIS 6.0 полностью снята и возложена на WS2003. Таким образом, резко упрощается создание кластерных систем, что, в свою очередь, приводит к повышению надёжности системы в целом.

В предыдущих версиях IIS администрирование его было возможно посредством использования ABO (Admin Base Objects) и ASDI (Active Directory Services Interfaces) в приложениях на C++ или скриптовых файлах. IIS 6.0 включает в себя провайдер WMI, специально предназначенный для управления IIS.

Для тех программистов, которые ранее использовали ASP, теперь есть возможность безболезненно перейти на ASP.NET. В IIS версии 6.0 реализована возможность совместного использования ASP и ASP.NET.

По заверениям Microsoft (подтверждаемых многими бета-тестерами системы) значительно возросла скорость работы IIS. Это объясняется переносом работы HTTP на уровень ядра IIS, за что отвечает новый модуль http.sys.kernel.

Поразительной особенностью семейства WS2003 является нетребовательность к ресурсам. Не секрет, что «ОС Windows ресурсы любят», однако требования к ресурсам, приведенные в пресс-релизах, заслуживают быть приведёнными здесь (данные приведены для процессоров семейства x86):

 

Web Edition

Standard
Edition

Enterprise
Edition

Datacenter
Edition

Минимальная частота процессора 133 МГц 133 МГц 133 МГц
(733 МГц для Itanium)
400 МГц
(733 МГц для Itanium)
Рекомендованная частота процессора 550 МГц 550 МГц 733 МГц 733 МГц
Минимальный размер RAM 128 MB 128 MB 128 MB 512 MB
Рекомендованный размер RAM 256 MB 256 MB 256 MB 1 GB
Дисковое пространство, требуемое для установки 1,5 GB 1,5 GB 1,5 GB
(2 GB для Itanium)
1,5 GB
(2 GB для Itanium)

Надеемся, что к моменту выхода релиза системные требования не будут изменены. Стоит заметить, что на стареньком Pentium III – 450 с 256 Мбайтами памяти, на котором в редакции установлен Windows Server 2003 Enterprise Edition, этот сервер «бегает» достаточно быстро, и случаев «торможения» я не заметил.

Выводы

Подводя итог сказанному выше, можно сделать вывод о том, что новый сервер отличается от тех, на основе которых он был написан, четырьмя вещами – поддержкой .NET, повышенной надёжностью, повышенной безопасностью и поддержкой 64-разрядных процессоров Itanium. Кроме того, привлекательной чертой этого сервера является нетребовательность к ресурсам.

Исходя из заявлений самой же фирмы Microsoft, можно сделать вывод о том, что её новый продукт не представляет собой революционного прорыва в Windows, как это было, скажем, с Windows NT. Насколько можно судить, появление этого продукта обусловлено, в большей степени, появлением платформы .NET, и, в степени меньшей, имевшимися возможностями по улучшению существующих серверов Windows NT и Windows 2000. Следовательно, если не считать поддержку .NET, то и ждать от этого продукта следует только улучшенной работы, не более, никак не принципиальных изменений. Другое дело – как улучшения и доработки, о которых говорилось выше, влияют на производительность и надёжность сервера. Естественно, в целом значение внесённых изменений недооценивать нельзя.


Copyright © 1994-2016 ООО "К-Пресс"