По мере того как интернет занимает все большую часть современной жизни, его инфраструктура становится более сложной, и для поддержки этой инфраструктуры требуются все более обширные знания. В данной лекции рассказывается о Windows Server 2003 (WS03) и возможностях IIS 6, о метабазе, содержащей всю конфигурационную информацию IIS, и об архитектуре IIS 6. Итак, начнем.
IIS 6 является последней версией веб-сервера от Microsoft. Он поставляется вместе с Windows Server 2003 и выпускается в четырех вариантах: Web Server, Standard Server, Enterprise Server и Datacenter Server.
Web Server имеет ограниченные функциональные возможности. Он
обеспечивает все необходимое для работы веб-сервера, включая
распределение загрузки сети, но не может выступать в роли контроллера
домена, играть роль бюро сертификатов и
Standard Server представляет собой версию со стандартным набором функций и используется в большинстве случаев.
Enterprise Server обеспечивает все базовые функции Standard Server и возможность реализации сетевой конфигурации с четырехузловым кластером. При соответствующей поддержке оборудования он позволяет добавлять память во время работы сервера, группировать серверы для обеспечения отказоустойчивости вместо простого распределения трафика между ними. Планируется выпуск Enterprise Server в 64-битном варианте.
Datacenter Server, флагман семейства, поддерживает самое большое количество процессоров и памяти и является самой дорогостоящей версией операционной системы. Эта версия обеспечивает поддержку Microsoft Datacenter и кластеров с восемью узлами. Как и Enterprise Server, Datacenter Server будет выпущен в 64-битном варианте.
Большим преимуществом самой дорогостоящей версии является поддержка оборудования. В таблице показано оборудование, поддерживаемое версиями WS03. Можно видеть, что чем дороже версия, тем больше памяти и процессоров она позволяет иметь.
| Web | Standard | Enterprise | Datacenter | |
|---|---|---|---|---|
| Максимальный объем оперативной памяти, Гб | 2 | 4 | ||
| Максимальное количество процессоров | 2 | 2 | 8 | 32 |
WS03 устанавливается аналогично предыдущим версиям операционных систем. Поскольку эта книга посвящена IIS, мы не будем подробно рассказывать об этом. Приведем лишь несколько рекомендаций.
Немного истории
Перед началом установки IIS давайте обратимся к истории IIS.
Версия 1. IIS 1 являлась надстройкой Windows NT 3.51. В этой версии
отсутствовали многие возможности, однако имелись стандартные
веб-службы, FTP и
Версия 2. IIS 2 поставлялась с Windows NT 4, имела незначительные отличия от IIS 1.
Версия 3. С выходом пакета Service Pack 3 для Windows NT 4 IIS обновилась до версии 3. Появились новые возможности, такие как Active Server Pages (ASP).
Версия 4. IIS 4 вошла в состав пакета Windows NT 4 Option Pack. Эта
версия претерпела кардинальные изменения – была упразднена служба
Версия 5. IIS 5 поставлялась с Windows 2000 Server, имела незначительные отличия от IIS 4.
Версия 6. IIS 6 представляет собой фундаментальный прорыв в технологии веб-служб от компании Microsoft. Службы FTP, SMTP и NNTP не сильно отличаются от своих аналогов в предыдущей версии, а вот в веб-сервере IIS 6 произошли серьезные изменения, применен новый подход с точки зрения безопасности.
В Windows 2000 Server компонент IIS устанавливался по умолчанию. В WS03 необходимо инсталлировать IIS вручную согласно новой концепции Microsoft "Выключено по умолчанию". IIS более не является частью установки по умолчанию.
Ниже приведены основные шаги по установке IIS.
Если отметить опцию IIS, то будут установлены только компоненты по умолчанию. Для установки дополнительных компонентов их следует указать вручную.
При нажатии на кнопку Details (Подробности) появится список компонентов IIS (см. рис. 1.1).
Выберите все необходимые компоненты, затем три раза нажмите на кнопку OK, чтобы вернуться к главному окну Windows Components (Компоненты Windows). После нажатия на кнопку Next (Далее) вставьте компакт-диск Windows 2003, если он еще не находится в считывающем устройстве.
(рис 1.1) Компоненты IIS
Компонент Серверные расширения BITS состоит из двух частей: фильтра
BITS позволяет передавать файлы в фоновом режиме, чтобы не прерывать работу пользователей, находящихся в системе. Передача файлов контролируется для ограничения используемой полосы пропускания канала связи. В случае нарушения соединения передача будет возобновлена при его повторной установке. По окончании передачи файла приложение, запрашивавшее этот файл, получит уведомление.
BITS устанавливается вместе с Windows 2003 и Windows XP и существует в виде отдельной надстройки в Windows 2000.
Для работы IIS необходима установка данного компонента.
Компонент не устанавливается по умолчанию. Служба FTP позволяет создавать FTP-сервер, используемый для отгрузки или загрузки файлов.
Компонент необходим для отгрузки веб-сайтов пользователей непосредственно из Microsoft FrontPage или Visual InterDev. Он позволяет создателям веб-страниц осуществлять контроль на веб-сервере, поэтому установка данного компонента является угрозой безопасности.
Опции данного компонента позволяют настраивать и открывать для общего доступа принтеры через HTTP, аналогично функциям веб-печати в Windows 2000 Server. Для WS03 данная служба является необязательной.
Компонент устанавливает сервер новостей для создания групп новостей.
Служба SMTP позволяет отправлять электронную почту с сервера IIS. Используется для веб-сайтов, осуществляющих отправку электронной почты.
Служба WWW является основной службой, обеспечивающей работу служб HTTP. Содержит несколько компонентов.
Active Server Pages (ASP). Устанавливает динамические библиотеки ASP и другие файлы для работы ASP на веб-сервере. Компонент устанавливается всегда, хотя отключен по умолчанию.
Internet Data Connector (IDC). Реализует работу с базой данных на веб-сайте.
Remote Administration (HTML). Позволяет выполнять удаленное администрирование IIS через веб-браузер. Отличается от предыдущих версий по HTML-администрированию IIS, которые разрешали администрирование только одного сервера.
Remote Desktop Web Connection (Подключение к удаленному рабочему столу). Компонент устанавливает элементы управления ActiveX для подключения браузера Internet Explorer к сеансу сервера терминала с использованием предоставляемых страниц. Этот компонент в Windows 2000 назывался Terminal Services Advanced Client.
Server Side Includes (Включения серверной части). Компонент обеспечивает поддержку включений серверной части и устанавливается всегда.
WebDAV Publishing. Представляет собой набор расширений HTTP, позволяющий пользователям осуществлять доступ и управлять файлами в опубликованных с его помощью каталогах на веб-сервере. Компонент устанавливается всегда.
World Wide Web Service (Служба WWW). Компонент является ядром приложения службы WWW, без него невозможна работа многих компонентов IIS.
Существует несколько служб для поддержки IIS, их перечень приведен в панели управления службами в WS03. Набор служб зависит от установленных компонентов IIS. Если компонент не установлен, то связанная с ним служба в панели управления службами не отображается.
Служба IIS Admin является главной службой администрирования IIS, остальные службы зависят от нее. При остановке службы остальные службы IIS будут также остановлены.
FTP Publishing. Обеспечивает работу FTP-сервера в IIS.
World Wide Web Publishing. Обеспечивает работу веб-сервера в IIS.
Simple Mail Transfer Protocol (SMTP). Обеспечивает работу сервера SMTP в IIS.
Network News Transfer Protocol (NNTP). Обеспечивает работу NNTP-сервера в IIS.
HTTP SSL. Необходима для выполнения службой WWW Publishing функции сертификации SSL.
Совет. Службы связаны между собой таким образом, что службу, для функционирования которой необходима работа другой службы, нельзя включить без второй службы. Эти зависимости показаны на вкладке Dependencies окна Properties (Свойства) службы.
Основные компоненты IIS расположены в каталоге %systemroot%\System32\inetsrv. Структура каталогов inetsrv показана в
следующей таблице.
| Каталог | Описание |
|---|---|
| ASP Compiled Templates | Содержит используемый шаблон ASP. |
| History | Содержит историю изменений метабазы, позволяющую выполнять откат изменений в метабазе. |
| iisadmpwd | Содержит ASP-страницы, относящиеся к аутентификации IIS Admin. |
| MetaBack | Каталог по умолчанию для резервных файлов метабазы. |
Примечание. Более подробная информация о метабазе приведена в разделе "Метабаза" далее в лекции.
В IIS 6 веб-сайт администрирования позволяет управлять всем сервером
Windows из локального или удаленного веб-браузера. Веб-сайт
администрирования располагается в каталоге %systemroot%\System32\ServerAppliance. Он функционирует через SSL,
используя порт 8098 по умолчанию. Для доступа к веб-сайту
администрирования введите в строке адреса браузера https://имя_компьютера:8098 (где имя_компьютера представляет собой имя
компьютера, который необходимо администрировать).
Все файлы справки IIS 6 перемещены в централизованное место
расположения вместе с остальными файлами справки Windows. Это папка %systemroot%\help\iishelp. Самым простым способом вызова справки IIS
является выбор команды Help/Help Topics (Справка/Вызов справки) в
консоли MMC.
Каталог Inetpub является основным каталогом файлов IIS. В нем
расположены каталоги с содержимым каждой установленной службы. Путь по
умолчанию для каталога Inetpub – C:\Inetpub.
Каталог Inetpub содержит следующие подкаталоги.
| Каталог | Описание |
|---|---|
AdminScripts |
Содержит сценарии Visual Basic, используемые для администрирования сервера IIS. |
ftproot |
Каталог верхнего уровня службы FTP. |
mailroot |
Каталог верхнего уровня службы SMTP. |
nntpfile |
Каталог верхнего уровня службы NNTP. |
wwwroot |
Каталог верхнего уровня веб-сайта по умолчанию. |
Поскольку функционирование всех компонентов WS03 рассматривается с точки зрения безопасности, и для доступа необходима учетная запись, IIS устанавливает две учетные записи и одну группу в базу данных учетных записей для использования их в работе. Эти элементы позволяют IIS выполнять программы и рабочие процессы, а пользователям – осуществлять доступ к сайту. Ниже приведена более подробная информация.
Учетная запись обеспечивает
Учетная запись используется для запуска рабочих процессов и является членом группы IIS_WPG.
Члены этой группы могут запускать рабочие процессы. Любая учетная
запись, выполняющая рабочие процессы, должна быть членом данной группы.
Это учетная запись с низким уровнем безопасности, обладающая правами
сетевой службы. Процессы, использующие уровень прав
Эти процессы можно просмотреть в консоли MMC
Для управления IIS служит оснастка MMC. MMC представляет собой универсальное средство, позволяющее сохранять единую структуру и внешний вид приложений. Для управления IIS 6 используется оснастка IIS. Консоль IIS MMC расположена в окне Start\Administrative Tools (Пуск\Администрирование).
С помощью оснастки IIS Manager (или MMC) (см. рис. 1.2) осуществляется управление FTP-сайтами, наборами приложений, веб-сайтами, виртуальными серверами SMTP и NNTP на данном компьютере или на той машине, с которой установлено соединение. По умолчанию соединение установлено с локальным компьютером. Для подключения другого компьютера щелкните правой кнопкой мыши на имени локального компьютера и выберите команду Connect (Подключить).
(рис 1.2) Оснастка IIS Manager (Диспетчер IIS)В верхней части окна IIS Manager (Диспетчер IIS) находится панель инструментов, с помощью которой на сайте выполняются основные функции. Над панелью инструментов располагается строка меню, содержащая команды управления. Нужно помнить, что MMC представляет собой отдельную программу, и что не все опции в ней связаны с IIS. Некоторые опции предназначены для настройки компонентов MMC. Вид панели инструментов и меню изменяется в зависимости от выбора объекта в левой области окна IIS Manager.
Самым простым способом управления компонентом является использование всплывающего меню, появляющегося при щелчке на компоненте правой кнопкой мыши. В этом меню приведены команды администрирования, применимые к этому компоненту. Большая часть параметров настройки содержится в команде Properties (Свойства).
Свойства локального компьютера. Свойства локального компьютера позволяют изменять параметры, глобально
влияющие на все компоненты IIS. Для открытия окна свойства локального
компьютера щелкните правой кнопкой мыши на имени_компьютера (локального
компьютера) в окне IIS MMC, затем выберите Properties (Свойства).
Отобразится окно Properties (см. рис. 1.3).
Изменение любых параметров в этом окне требует последующего перезапуска IIS. На IIS в целом здесь влияют два параметра: Enable Direct Metabase Edit (Включить прямое изменение метабазы) и Encode Web Logs In UTF-8 (Использовать для веб-журналов кодировку UTF-8).
(рис 1.3) Окно свойств локального компьютераПараметр Enable Direct Metabase Edit (Включить прямое изменение метабазы) позволяет редактировать метабазу при работе IIS. В предыдущих версиях IIS метабаза представляла собой исполняемый файл, доступ к которому был возможен только при помощи специальной утилиты из пакета инструментальных средств. Теперь этот файл можно редактировать в программе Notepad (Блокнот), так как он представлен в формате XML (Расширяемый язык разметки). Можно помещать конфигурацию в буфер и вставлять ее из буфера, сохранять конфигурацию, причем изменения будут вступать в силу незамедлительно. Данный способ работы требует включения журнала метабазы, но так как это является установкой по умолчанию, то никаких вопросов возникать не должно.
Опция Encode Web Logs In UTF-8 (Использовать для веб-журналов кодировку
UTF-8) указывает, что в журналах веб и/или FTP должна использоваться
кодировка UTF-8, а не локальный набор символов. UTF-8 представляет
собой стандарную кодировку текста с восьмибитным
Метабаза похожа на реестр IIS и содержит все данные о конфигурации IIS. В предыдущих версиях метабаза представляла собой исполняемый файл, редактирование которого было возможно только при помощи редактора метабазы, входящего в состав пакета утилит. В IIS 6 метабаза имеет формат XML (см. рис. 1.4), и для редактирования используется Notepad (Блокнот). Несмотря на коренные отличия метабазы IIS 6 от предыдущей версии, она совместима с метабазой IIS 5, поэтому все прежние API и сценарии будут функционировать.
(рис 1.4) Просмотр файла метабазы в программе БлокнотМетабаза находится в папке %systemroot%\system32\inetsrv и имеет
достаточно информативное имя – MetaBase.xml. Схема метабазы хранится в
файле MBSchema.xml. Так как метабаза представляет собой текстовый файл,
ее можно легко изменить при помощи любого текстового редактора. Менее
вероятно и повреждение такого файла. Даже в случае повреждения метабазу
можно легко исправить или восстановить.
Метабаза в IIS периодически резервируется и сортируется по версиям. При
этом используются два номера версии: главный и дополнительный. Именами
файлов резервных копий являются MetaBase_[10-значный главный номер
версии]_[10-значный дополнительный номер версии].xml и MBSchema_[10-значный главный номер версии]_[10-значный дополнительный
номер версии].xml. Например, MBSchema_0000000160_0000000000.xml.
По умолчанию сохраняются десять копий метабазы, что позволяет
осуществлять откат, восстанавливая одну из предыдущих версий.
Количество резервируемых версий настраивается с помощью редактирования
свойства MaxHistoryFiles метабазы. Как правило, число сохраняемых копий
не должно быть меньше десяти. При каждом сохранении метабазы ее
резервная копия и соответствующая схема записываются в папку history.
IIS проверяет количество пар резервных файлов, и если оно становится
больше, чем значение параметра MaxHistoryFiles, то удаляются наиболее
старые пары.
По умолчанию папка history расположена в каталоге %systemroot%\System32\inetsrv\history. Настроить место расположения
можно посредством изменения ключа реестра HKEY_LOCAL_MACHINE\Software\Microsoft\InetMGR\Parameters\. Добавьте
новое строковое значение с именем MetadataFile. Значение ключа
MetadataFile должно представлять собой абсолютный путь к месту
расположения, в котором необходимо сохранять файлы метабазы (например: D:\IISMetadata\ThisIsMyMetabase.xml ).
Предупреждение. В любом случае редактирование реестра является весьма опасным, поэтому здесь подходят все классические предупреждения. Будьте очень, очень осторожны!
При изменении места расположения файлов метабазы убедитесь, что все файлы метабазы перемещены в это место, иначе при запуске IIS в этом месте расположения будет создана новая метабаза по умолчанию. Изменение места расположения метабазы не вступит в силу до тех пор, пока не будут перезапущены службы IIS Admin и World Wide Web Publishing.
Несмотря на то, что можно использовать файлы истории для восстановления файлов конфигурации метабазы, выполнение ее резервного копирования имеет некоторые преимущества. Одним из них является то, что файлы истории метабазы используются только на том компьютере, на котором они были созданы, в то время как резервные копии можно восстановить на любом другом компьютере. Резервирование метабазы выполняется по запросу через IIS MMC.
Полное резервирование метабазы и ее восстановление выполняется также с помощью опции Backup/Restore Configuration (Настройка резервного копирования/восстановления) в IIS MMC. Для получения доступа к этой опции выделите компьютер в IIS и выберите Action\All Tasks\Backup\Restore Configuration (Действие \ Все задачи\ Резервирование/восстановление конфигурации).
С помощью диалогового окна Configuration Backup/Restore (Резервирование/восстановление конфигурации) (см. рис. 1.5) создается, восстанавливается или удаляется резервная копия метабазы. В этом окне отображены все резервные копии метабазы.
(рис 1.5) Резервирование/восстановление конфигурацииПри создании резервной копии необходимо указать ее имя. Файл резервной
копии располагается в папке %system%\System32\Inetsrv\MetaBack. Файл
метабазы имеет расширение .MD0, а файл схемы – расширение .SC0. Каждой
последующей резервной копии с тем же самым именем будет присваиваться
номер, на единицу больший предыдущего. Опция пароля защищает резервную
копию при помощи указанного вами пароля. Парольная защита снимается
только при помощи ввода того же самого пароля. Это позволяет переносить
веб-сайт с одного компьютера на другой с сохранением защищенности
метабазы.
Предупреждение. Перенос метабазы на другой компьютер будет выполнен должным образом, если конфигурация дискового устройства на новом компьютере идентична прежней. Поскольку пути хранятся в метабазе, то в случае размещения содержимого на другом диске веб-сайт будет работать неправильно. Необходимо также соблюдать особую внимательность при наличии у сайта сертификата SSL.
Для восстановления выберите нужную конфигурацию, затем нажмите на кнопку Restore (Восстановить). Появится предупреждение о том, что все настройки будут удалены (они будут восстановлены в варианте, сохраненном в зарезервированной копии конфигурации), и что все службы будут остановлены и перезапущены. Это действие необходимо выполнять обдуманно.
Для удаления резервной копии метабазы выберите нужную копию и нажмите на кнопку Delete (Удалить). В появившемся окне подтверждения на удаление файла выберите Yes (Да). Резервная копия будет удалена.
Еще один способ резервирования метабазы – использование утилиты Windows
Backup (Архивация Windows). Утилита архивации автоматически использует
компонент Metabase MetaBase.xml и MBSchema.xml. Если утилита
архивации обнаружит на резервируемом диске метабазу, она запишет
метабазу, находящуюся в памяти, в файлы и запретит внесение в нее
изменений в течение двух минут (максимум).
Совет. Компонент Metabase
Если в окне Properties (Свойства) включена опция Enable Direct Metabase Edit (Включить прямое изменение метабазы) (см. рис. 1.3), то для изменения метабазы в процессе работы IIS используют несколько различных методов.
Любимое средство тех пользователей, которые привыкли все делать вручную
– текстовый редактор – используется для непосредственного
редактирования метабазы. Просто откройте файл MetaBase.xml, внесите
изменения и сохраните его. Изменения вступят в силу немедленно.
Компания Microsoft реализовала новый подход, согласно которому все
программы должны быть доступны для инструментария управления Windows
(
ADSI (Интерфейс сценариев Active Directory) редактирует копию метабазы, находящуюся в памяти компьютера. ADSI создает вхождение объекта метабазы, с которым можно выполнять действия на программном уровне.
Подробная информация об изменении метабазы приведена в лекции 9.
Схема метабазы загружается в память вместе с метабазой при
инициализации IIS. Схема содержит определения всех свойств, которые
могут изменяться в ключах метабазы. Схема в определенной мере даже
усиливает эти определения. Пока свойство записано в качестве
внутреннего свойства схемы, оно работает по той причине, что оно
определено. Такой подход можно обойти посредством использования особого
свойства в файле MetaBase.xml, что, по существу, заключается в создании
своего собственного определения для свойства. При этом целью является
определение всех используемых свойств, а не наложение ограничений на
несколько определенных переменных. Несмотря на то, что редактирование
метабазы является несложным процессом, изменять схему метабазы не
рекомендуется.
Если вы работали с предыдущими версиями IIS, то заметите в версии IIS 6
значительные усовершенствования. Версия 6 намного более стабильна и
безопасна в работе. При ознакомлении с данной информацией имейте в
виду, что она относится к компоненту веб-сервера IIS. В шестой версии
IIS службы FTP, SMTP и NNTP по-прежнему выполняются в процессе inetinfo.exe.
В предыдущих версиях IIS (см. рис. 1.6) все компоненты выполнялись в
процессе inetinfo.exe или вне процесса в dllhost.exe. Сайт с ошибкой,
выполняющийся в inetinfo.exe, мог вызвать сбой веб-службы со всеми
вытекающими последствиями.
(рис 1.6) Диаграмма процесса веб-сервера IIS 5IIS 6 отделяет код веб-сервера от кода поддержки приложений при помощи
HTTP-слушателя режима ядра http.sys и службы веб-администрирования
(WAS), являющейся диспетчером процесса и конфигурации пользовательского
режима (см. рис. 1.7). Эти программы не выполняют никакого стороннего
кода, поэтому ошибка веб-сайта не оказывает на них никакого
воздействия. Код выполняется в рабочем процессе. Рабочие процессы
выполняются с помощью приложения w3wp.exe. Каждая копия w3wp.exe
представляет собой отдельный рабочий процесс. Рабочие процессы
существуют отдельно друг от друга и от ядра, поэтому их можно
изолировать от операционной системы.
(рис 1.7) Диаграмма процесса веб-сервера IIS 6Совет. Выражение "в процессе" означает код, выполняемый в том же процессе, что и родительский. "Вне процесса" означает код, выполняемый в отдельном процессе.
Веб-служба IIS 6 выполняет весь прикладной код в изолированной среде.
Такой подход называется режимом изоляции рабочего процесса. Он уже был
реализован в IIS ранее, однако его использование приводило к
значительному спаду производительности. Однако в IIS 6 все выполняется
вне процесса, поэтому никакого снижения производительности не
происходит. Предыдущие версии IIS использовали процессы режима
пользователя для маршрутизации запросов, направленных друг к другу. В
IIS 6 запросы вызываются непосредственно из ядра, с полной изоляцией
рабочих процессов друг от друга. Это помогает в том случае, если два
приложения нужно отделить по причинам безопасности. В настоящий момент
такие службы IIS, как FTP и SMTP, все еще выполняются в inetinfo, как и
в IIS 5. Возможно, в следующей версии рабочие процессы будет
изолированы и для этих служб, однако пока что они могут воздействовать
на процесс inetinfo.
Иногда изоляция рабочих процессов вызывает проблемы с приложениями,
которым требуется доступ к данным между вхождениями или выполнение в
среде пула приложений IIS 5. В данном случае IIS использует функцию режима изоляции IIS 5. Этот режим функционирует так же, как и в IIS 5,
что позволяет приложениям выполняться в пуле приложений IIS 5 с
сохранением возможности режима ядра http.sys ставить в очередь и
обрабатывать запросы.
Большая часть сайтов прекрасно функционирует под IIS 6, однако в некоторых случаях необходимо использовать режим изоляции и пресекать рециркуляцию рабочих процессов.
Включение режима изоляции IIS 5.0. Включение режима изоляции производится на корневом уровне папки Web Sites (Веб-узлы) в IIS MMC. Это действие осуществляется для всех веб-сайтов на cервере в целом; нельзя включать этот режим для отдельных веб-сайтов. Для включения режима изоляции выполните следующие действия.
IIS вводит принципиально новый способ поддержки приложений. Пулы
приложений позволяют выполнять код в изолированной среде. Каждый пул
приложения обслуживается одним или несколькими рабочими процессами. При
запуске IIS служба веб-администрирования (Web Administration Service)
инициализирует таблицу маршрутизации пространства имен http.sys с одной
записью для каждого приложения. Эта таблица определяет, к какому пулу
приложений должно быть маршрутизировано приложение. При получении
запроса http.sys дает WAS команду на запуск одного или нескольких
рабочих процессов для поддержки этого пула приложения. Такая изоляция
процессов в целом повышает стабильность веб-сервера.
WAS имеет возможность контролировать состояние ("здоровье") IIS
посредством отслеживания рабочих процессов и мониторинга степени их
исправности. Это позволяет предотвратить отказы IIS. WAS отслеживает
рабочие процессы посредством отправки пинг-запросов через установленные
промежутки времени. Если рабочий процесс не отвечает на пинг-запрос,
WAS завершает процесс и запускает новый, что сохраняет возможность
системы отвечать на системные запросы даже в случае "зависания"
рабочего процесса. При возникновении сбоя в рабочем процессе и его
"зависании" http.sys будет выдавать последовательные запросы до тех
пор, пока WAS не запустит новый рабочий процесс для поддержки этого
пула приложения. Конечный пользователь столкнется с временной потерей
обслуживания приложениями в данном пуле приложений, в то время как
ключевые веб-службы и другие приложения продолжат свою работу.
WAS можно настроить на блокирование рабочего процесса вместо его уничтожения, что позволяет выполнить проверку неисправного рабочего процесса.
WAS настраивается также и на выполнение команды (например, на запуск отладчика) при блокировке рабочего процесса. Рабочие процессы периодически перезапускаются в дополнение к перезапуску при возникновении ошибок, что позволяет уменьшить объем потерянных данных посредством инициализации среды и возвращения этих данных системе. При перезапуске рабочего процесса WAS создает новый рабочий процесс и сообщает существующему рабочему процессу о необходимости завершения выполняемых операций и своей работы в течение определенного времени. Это позволяет поддерживать приложение в рабочем состоянии с обновлением рабочих процессов в фоновом режиме. Если рабочий процесс не завершает работу в разрешенный промежуток времени, то он уничтожается.
Перезапуск рабочих процессов производится по следующим критериям:
Режим изоляции рабочих процессов позволяет улучшить масштабируемость веб-сервера. На сервере с такой конфигурацией могут существовать тысячи веб-сайтов. Каждый пул приложений контролируется в индивидуальном порядке с ограничением процессорного времени для отдельных пулов.
Для поддержки одного пула приложений можно установить несколько рабочих процессов. Такие структуры называются веб-наборами. Веб-наборы улучшают мультипроцессорную масштабируемость, так как каждый рабочий процесс становится родственным отдельному процессору для увеличения количества обращений в кэш этого процессора. При возникновении перегрузки рабочего процесса его поддерживают другие рабочие процессы. Этот подход снижает необходимость перезагрузки сервера даже при обновлении компонентов, так как просто перезапускается пул приложения.
Количество запросов в очереди для каждого пула приложения указывается в http.sys при выполнении рабочего процесса в режиме изоляции. По
достижении этого лимита новые запросы к пулу приложения не
обрабатываются, и пользователь получает сообщение об ошибке HTTP 503.
Примечание. Подробная информация о пулах приложений и опциях приведена в лекции 2.
По мере того как интернет занимает все большую часть современной жизни, его инфраструктура становится более сложной, и для поддержки этой инфраструктуры требуются все более обширные знания. В данной лекции рассказывается о Windows Server 2003 (WS03) и возможностях IIS 6, о метабазе, содержащей всю конфигурационную информацию IIS, и об архитектуре IIS 6. Итак, начнем.
IIS 6 является последней версией веб-сервера от Microsoft. Он поставляется вместе с Windows Server 2003 и выпускается в четырех вариантах: Web Server, Standard Server, Enterprise Server и Datacenter Server.
Web Server имеет ограниченные функциональные возможности. Он
обеспечивает все необходимое для работы веб-сервера, включая
распределение загрузки сети, но не может выступать в роли контроллера
домена, играть роль бюро сертификатов и
Standard Server представляет собой версию со стандартным набором функций и используется в большинстве случаев.
Enterprise Server обеспечивает все базовые функции Standard Server и возможность реализации сетевой конфигурации с четырехузловым кластером. При соответствующей поддержке оборудования он позволяет добавлять память во время работы сервера, группировать серверы для обеспечения отказоустойчивости вместо простого распределения трафика между ними. Планируется выпуск Enterprise Server в 64-битном варианте.
Datacenter Server, флагман семейства, поддерживает самое большое количество процессоров и памяти и является самой дорогостоящей версией операционной системы. Эта версия обеспечивает поддержку Microsoft Datacenter и кластеров с восемью узлами. Как и Enterprise Server, Datacenter Server будет выпущен в 64-битном варианте.
Большим преимуществом самой дорогостоящей версии является поддержка оборудования. В таблице показано оборудование, поддерживаемое версиями WS03. Можно видеть, что чем дороже версия, тем больше памяти и процессоров она позволяет иметь.
| Web | Standard | Enterprise | Datacenter | |
|---|---|---|---|---|
| Максимальный объем оперативной памяти, Гб | 2 | 4 | ||
| Максимальное количество процессоров | 2 | 2 | 8 | 32 |
WS03 устанавливается аналогично предыдущим версиям операционных систем. Поскольку эта книга посвящена IIS, мы не будем подробно рассказывать об этом. Приведем лишь несколько рекомендаций.
Немного истории
Перед началом установки IIS давайте обратимся к истории IIS.
Версия 1. IIS 1 являлась надстройкой Windows NT 3.51. В этой версии
отсутствовали многие возможности, однако имелись стандартные
веб-службы, FTP и
Версия 2. IIS 2 поставлялась с Windows NT 4, имела незначительные отличия от IIS 1.
Версия 3. С выходом пакета Service Pack 3 для Windows NT 4 IIS обновилась до версии 3. Появились новые возможности, такие как Active Server Pages (ASP).
Версия 4. IIS 4 вошла в состав пакета Windows NT 4 Option Pack. Эта
версия претерпела кардинальные изменения – была упразднена служба
Версия 5. IIS 5 поставлялась с Windows 2000 Server, имела незначительные отличия от IIS 4.
Версия 6. IIS 6 представляет собой фундаментальный прорыв в технологии веб-служб от компании Microsoft. Службы FTP, SMTP и NNTP не сильно отличаются от своих аналогов в предыдущей версии, а вот в веб-сервере IIS 6 произошли серьезные изменения, применен новый подход с точки зрения безопасности.
В Windows 2000 Server компонент IIS устанавливался по умолчанию. В WS03 необходимо инсталлировать IIS вручную согласно новой концепции Microsoft "Выключено по умолчанию". IIS более не является частью установки по умолчанию.
Ниже приведены основные шаги по установке IIS.
Если отметить опцию IIS, то будут установлены только компоненты по умолчанию. Для установки дополнительных компонентов их следует указать вручную.
При нажатии на кнопку Details (Подробности) появится список компонентов IIS (см. рис. 1.1).
Выберите все необходимые компоненты, затем три раза нажмите на кнопку OK, чтобы вернуться к главному окну Windows Components (Компоненты Windows). После нажатия на кнопку Next (Далее) вставьте компакт-диск Windows 2003, если он еще не находится в считывающем устройстве.
(рис 1.1) Компоненты IIS
Компонент Серверные расширения BITS состоит из двух частей: фильтра
BITS позволяет передавать файлы в фоновом режиме, чтобы не прерывать работу пользователей, находящихся в системе. Передача файлов контролируется для ограничения используемой полосы пропускания канала связи. В случае нарушения соединения передача будет возобновлена при его повторной установке. По окончании передачи файла приложение, запрашивавшее этот файл, получит уведомление.
BITS устанавливается вместе с Windows 2003 и Windows XP и существует в виде отдельной надстройки в Windows 2000.
Для работы IIS необходима установка данного компонента.
Компонент не устанавливается по умолчанию. Служба FTP позволяет создавать FTP-сервер, используемый для отгрузки или загрузки файлов.
Компонент необходим для отгрузки веб-сайтов пользователей непосредственно из Microsoft FrontPage или Visual InterDev. Он позволяет создателям веб-страниц осуществлять контроль на веб-сервере, поэтому установка данного компонента является угрозой безопасности.
Опции данного компонента позволяют настраивать и открывать для общего доступа принтеры через HTTP, аналогично функциям веб-печати в Windows 2000 Server. Для WS03 данная служба является необязательной.
Компонент устанавливает сервер новостей для создания групп новостей.
Служба SMTP позволяет отправлять электронную почту с сервера IIS. Используется для веб-сайтов, осуществляющих отправку электронной почты.
Служба WWW является основной службой, обеспечивающей работу служб HTTP. Содержит несколько компонентов.
Active Server Pages (ASP). Устанавливает динамические библиотеки ASP и другие файлы для работы ASP на веб-сервере. Компонент устанавливается всегда, хотя отключен по умолчанию.
Internet Data Connector (IDC). Реализует работу с базой данных на веб-сайте.
Remote Administration (HTML). Позволяет выполнять удаленное администрирование IIS через веб-браузер. Отличается от предыдущих версий по HTML-администрированию IIS, которые разрешали администрирование только одного сервера.
Remote Desktop Web Connection (Подключение к удаленному рабочему столу). Компонент устанавливает элементы управления ActiveX для подключения браузера Internet Explorer к сеансу сервера терминала с использованием предоставляемых страниц. Этот компонент в Windows 2000 назывался Terminal Services Advanced Client.
Server Side Includes (Включения серверной части). Компонент обеспечивает поддержку включений серверной части и устанавливается всегда.
WebDAV Publishing. Представляет собой набор расширений HTTP, позволяющий пользователям осуществлять доступ и управлять файлами в опубликованных с его помощью каталогах на веб-сервере. Компонент устанавливается всегда.
World Wide Web Service (Служба WWW). Компонент является ядром приложения службы WWW, без него невозможна работа многих компонентов IIS.
Существует несколько служб для поддержки IIS, их перечень приведен в панели управления службами в WS03. Набор служб зависит от установленных компонентов IIS. Если компонент не установлен, то связанная с ним служба в панели управления службами не отображается.
Служба IIS Admin является главной службой администрирования IIS, остальные службы зависят от нее. При остановке службы остальные службы IIS будут также остановлены.
FTP Publishing. Обеспечивает работу FTP-сервера в IIS.
World Wide Web Publishing. Обеспечивает работу веб-сервера в IIS.
Simple Mail Transfer Protocol (SMTP). Обеспечивает работу сервера SMTP в IIS.
Network News Transfer Protocol (NNTP). Обеспечивает работу NNTP-сервера в IIS.
HTTP SSL. Необходима для выполнения службой WWW Publishing функции сертификации SSL.
Совет. Службы связаны между собой таким образом, что службу, для функционирования которой необходима работа другой службы, нельзя включить без второй службы. Эти зависимости показаны на вкладке Dependencies окна Properties (Свойства) службы.
Основные компоненты IIS расположены в каталоге %systemroot%\System32\inetsrv. Структура каталогов inetsrv показана в
следующей таблице.
| Каталог | Описание |
|---|---|
| ASP Compiled Templates | Содержит используемый шаблон ASP. |
| History | Содержит историю изменений метабазы, позволяющую выполнять откат изменений в метабазе. |
| iisadmpwd | Содержит ASP-страницы, относящиеся к аутентификации IIS Admin. |
| MetaBack | Каталог по умолчанию для резервных файлов метабазы. |
Примечание. Более подробная информация о метабазе приведена в разделе "Метабаза" далее в лекции.
В IIS 6 веб-сайт администрирования позволяет управлять всем сервером
Windows из локального или удаленного веб-браузера. Веб-сайт
администрирования располагается в каталоге %systemroot%\System32\ServerAppliance. Он функционирует через SSL,
используя порт 8098 по умолчанию. Для доступа к веб-сайту
администрирования введите в строке адреса браузера https://имя_компьютера:8098 (где имя_компьютера представляет собой имя
компьютера, который необходимо администрировать).
Все файлы справки IIS 6 перемещены в централизованное место
расположения вместе с остальными файлами справки Windows. Это папка %systemroot%\help\iishelp. Самым простым способом вызова справки IIS
является выбор команды Help/Help Topics (Справка/Вызов справки) в
консоли MMC.
Каталог Inetpub является основным каталогом файлов IIS. В нем
расположены каталоги с содержимым каждой установленной службы. Путь по
умолчанию для каталога Inetpub – C:\Inetpub.
Каталог Inetpub содержит следующие подкаталоги.
| Каталог | Описание |
|---|---|
AdminScripts |
Содержит сценарии Visual Basic, используемые для администрирования сервера IIS. |
ftproot |
Каталог верхнего уровня службы FTP. |
mailroot |
Каталог верхнего уровня службы SMTP. |
nntpfile |
Каталог верхнего уровня службы NNTP. |
wwwroot |
Каталог верхнего уровня веб-сайта по умолчанию. |
Поскольку функционирование всех компонентов WS03 рассматривается с точки зрения безопасности, и для доступа необходима учетная запись, IIS устанавливает две учетные записи и одну группу в базу данных учетных записей для использования их в работе. Эти элементы позволяют IIS выполнять программы и рабочие процессы, а пользователям – осуществлять доступ к сайту. Ниже приведена более подробная информация.
Учетная запись обеспечивает
Учетная запись используется для запуска рабочих процессов и является членом группы IIS_WPG.
Члены этой группы могут запускать рабочие процессы. Любая учетная
запись, выполняющая рабочие процессы, должна быть членом данной группы.
Это учетная запись с низким уровнем безопасности, обладающая правами
сетевой службы. Процессы, использующие уровень прав
Эти процессы можно просмотреть в консоли MMC
Для управления IIS служит оснастка MMC. MMC представляет собой универсальное средство, позволяющее сохранять единую структуру и внешний вид приложений. Для управления IIS 6 используется оснастка IIS. Консоль IIS MMC расположена в окне Start\Administrative Tools (Пуск\Администрирование).
С помощью оснастки IIS Manager (или MMC) (см. рис. 1.2) осуществляется управление FTP-сайтами, наборами приложений, веб-сайтами, виртуальными серверами SMTP и NNTP на данном компьютере или на той машине, с которой установлено соединение. По умолчанию соединение установлено с локальным компьютером. Для подключения другого компьютера щелкните правой кнопкой мыши на имени локального компьютера и выберите команду Connect (Подключить).
(рис 1.2) Оснастка IIS Manager (Диспетчер IIS)В верхней части окна IIS Manager (Диспетчер IIS) находится панель инструментов, с помощью которой на сайте выполняются основные функции. Над панелью инструментов располагается строка меню, содержащая команды управления. Нужно помнить, что MMC представляет собой отдельную программу, и что не все опции в ней связаны с IIS. Некоторые опции предназначены для настройки компонентов MMC. Вид панели инструментов и меню изменяется в зависимости от выбора объекта в левой области окна IIS Manager.
Самым простым способом управления компонентом является использование всплывающего меню, появляющегося при щелчке на компоненте правой кнопкой мыши. В этом меню приведены команды администрирования, применимые к этому компоненту. Большая часть параметров настройки содержится в команде Properties (Свойства).
Свойства локального компьютера. Свойства локального компьютера позволяют изменять параметры, глобально
влияющие на все компоненты IIS. Для открытия окна свойства локального
компьютера щелкните правой кнопкой мыши на имени_компьютера (локального
компьютера) в окне IIS MMC, затем выберите Properties (Свойства).
Отобразится окно Properties (см. рис. 1.3).
Изменение любых параметров в этом окне требует последующего перезапуска IIS. На IIS в целом здесь влияют два параметра: Enable Direct Metabase Edit (Включить прямое изменение метабазы) и Encode Web Logs In UTF-8 (Использовать для веб-журналов кодировку UTF-8).
(рис 1.3) Окно свойств локального компьютераПараметр Enable Direct Metabase Edit (Включить прямое изменение метабазы) позволяет редактировать метабазу при работе IIS. В предыдущих версиях IIS метабаза представляла собой исполняемый файл, доступ к которому был возможен только при помощи специальной утилиты из пакета инструментальных средств. Теперь этот файл можно редактировать в программе Notepad (Блокнот), так как он представлен в формате XML (Расширяемый язык разметки). Можно помещать конфигурацию в буфер и вставлять ее из буфера, сохранять конфигурацию, причем изменения будут вступать в силу незамедлительно. Данный способ работы требует включения журнала метабазы, но так как это является установкой по умолчанию, то никаких вопросов возникать не должно.
Опция Encode Web Logs In UTF-8 (Использовать для веб-журналов кодировку
UTF-8) указывает, что в журналах веб и/или FTP должна использоваться
кодировка UTF-8, а не локальный набор символов. UTF-8 представляет
собой стандарную кодировку текста с восьмибитным
Метабаза похожа на реестр IIS и содержит все данные о конфигурации IIS. В предыдущих версиях метабаза представляла собой исполняемый файл, редактирование которого было возможно только при помощи редактора метабазы, входящего в состав пакета утилит. В IIS 6 метабаза имеет формат XML (см. рис. 1.4), и для редактирования используется Notepad (Блокнот). Несмотря на коренные отличия метабазы IIS 6 от предыдущей версии, она совместима с метабазой IIS 5, поэтому все прежние API и сценарии будут функционировать.
(рис 1.4) Просмотр файла метабазы в программе БлокнотМетабаза находится в папке %systemroot%\system32\inetsrv и имеет
достаточно информативное имя – MetaBase.xml. Схема метабазы хранится в
файле MBSchema.xml. Так как метабаза представляет собой текстовый файл,
ее можно легко изменить при помощи любого текстового редактора. Менее
вероятно и повреждение такого файла. Даже в случае повреждения метабазу
можно легко исправить или восстановить.
Метабаза в IIS периодически резервируется и сортируется по версиям. При
этом используются два номера версии: главный и дополнительный. Именами
файлов резервных копий являются MetaBase_[10-значный главный номер
версии]_[10-значный дополнительный номер версии].xml и MBSchema_[10-значный главный номер версии]_[10-значный дополнительный
номер версии].xml. Например, MBSchema_0000000160_0000000000.xml.
По умолчанию сохраняются десять копий метабазы, что позволяет
осуществлять откат, восстанавливая одну из предыдущих версий.
Количество резервируемых версий настраивается с помощью редактирования
свойства MaxHistoryFiles метабазы. Как правило, число сохраняемых копий
не должно быть меньше десяти. При каждом сохранении метабазы ее
резервная копия и соответствующая схема записываются в папку history.
IIS проверяет количество пар резервных файлов, и если оно становится
больше, чем значение параметра MaxHistoryFiles, то удаляются наиболее
старые пары.
По умолчанию папка history расположена в каталоге %systemroot%\System32\inetsrv\history. Настроить место расположения
можно посредством изменения ключа реестра HKEY_LOCAL_MACHINE\Software\Microsoft\InetMGR\Parameters\. Добавьте
новое строковое значение с именем MetadataFile. Значение ключа
MetadataFile должно представлять собой абсолютный путь к месту
расположения, в котором необходимо сохранять файлы метабазы (например: D:\IISMetadata\ThisIsMyMetabase.xml ).
Предупреждение. В любом случае редактирование реестра является весьма опасным, поэтому здесь подходят все классические предупреждения. Будьте очень, очень осторожны!
При изменении места расположения файлов метабазы убедитесь, что все файлы метабазы перемещены в это место, иначе при запуске IIS в этом месте расположения будет создана новая метабаза по умолчанию. Изменение места расположения метабазы не вступит в силу до тех пор, пока не будут перезапущены службы IIS Admin и World Wide Web Publishing.
Несмотря на то, что можно использовать файлы истории для восстановления файлов конфигурации метабазы, выполнение ее резервного копирования имеет некоторые преимущества. Одним из них является то, что файлы истории метабазы используются только на том компьютере, на котором они были созданы, в то время как резервные копии можно восстановить на любом другом компьютере. Резервирование метабазы выполняется по запросу через IIS MMC.
Полное резервирование метабазы и ее восстановление выполняется также с помощью опции Backup/Restore Configuration (Настройка резервного копирования/восстановления) в IIS MMC. Для получения доступа к этой опции выделите компьютер в IIS и выберите Action\All Tasks\Backup\Restore Configuration (Действие \ Все задачи\ Резервирование/восстановление конфигурации).
С помощью диалогового окна Configuration Backup/Restore (Резервирование/восстановление конфигурации) (см. рис. 1.5) создается, восстанавливается или удаляется резервная копия метабазы. В этом окне отображены все резервные копии метабазы.
(рис 1.5) Резервирование/восстановление конфигурацииПри создании резервной копии необходимо указать ее имя. Файл резервной
копии располагается в папке %system%\System32\Inetsrv\MetaBack. Файл
метабазы имеет расширение .MD0, а файл схемы – расширение .SC0. Каждой
последующей резервной копии с тем же самым именем будет присваиваться
номер, на единицу больший предыдущего. Опция пароля защищает резервную
копию при помощи указанного вами пароля. Парольная защита снимается
только при помощи ввода того же самого пароля. Это позволяет переносить
веб-сайт с одного компьютера на другой с сохранением защищенности
метабазы.
Предупреждение. Перенос метабазы на другой компьютер будет выполнен должным образом, если конфигурация дискового устройства на новом компьютере идентична прежней. Поскольку пути хранятся в метабазе, то в случае размещения содержимого на другом диске веб-сайт будет работать неправильно. Необходимо также соблюдать особую внимательность при наличии у сайта сертификата SSL.
Для восстановления выберите нужную конфигурацию, затем нажмите на кнопку Restore (Восстановить). Появится предупреждение о том, что все настройки будут удалены (они будут восстановлены в варианте, сохраненном в зарезервированной копии конфигурации), и что все службы будут остановлены и перезапущены. Это действие необходимо выполнять обдуманно.
Для удаления резервной копии метабазы выберите нужную копию и нажмите на кнопку Delete (Удалить). В появившемся окне подтверждения на удаление файла выберите Yes (Да). Резервная копия будет удалена.
Еще один способ резервирования метабазы – использование утилиты Windows
Backup (Архивация Windows). Утилита архивации автоматически использует
компонент Metabase MetaBase.xml и MBSchema.xml. Если утилита
архивации обнаружит на резервируемом диске метабазу, она запишет
метабазу, находящуюся в памяти, в файлы и запретит внесение в нее
изменений в течение двух минут (максимум).
Совет. Компонент Metabase
Если в окне Properties (Свойства) включена опция Enable Direct Metabase Edit (Включить прямое изменение метабазы) (см. рис. 1.3), то для изменения метабазы в процессе работы IIS используют несколько различных методов.
Любимое средство тех пользователей, которые привыкли все делать вручную
– текстовый редактор – используется для непосредственного
редактирования метабазы. Просто откройте файл MetaBase.xml, внесите
изменения и сохраните его. Изменения вступят в силу немедленно.
Компания Microsoft реализовала новый подход, согласно которому все
программы должны быть доступны для инструментария управления Windows
(
ADSI (Интерфейс сценариев Active Directory) редактирует копию метабазы, находящуюся в памяти компьютера. ADSI создает вхождение объекта метабазы, с которым можно выполнять действия на программном уровне.
Подробная информация об изменении метабазы приведена в лекции 9.
Схема метабазы загружается в память вместе с метабазой при
инициализации IIS. Схема содержит определения всех свойств, которые
могут изменяться в ключах метабазы. Схема в определенной мере даже
усиливает эти определения. Пока свойство записано в качестве
внутреннего свойства схемы, оно работает по той причине, что оно
определено. Такой подход можно обойти посредством использования особого
свойства в файле MetaBase.xml, что, по существу, заключается в создании
своего собственного определения для свойства. При этом целью является
определение всех используемых свойств, а не наложение ограничений на
несколько определенных переменных. Несмотря на то, что редактирование
метабазы является несложным процессом, изменять схему метабазы не
рекомендуется.
Если вы работали с предыдущими версиями IIS, то заметите в версии IIS 6
значительные усовершенствования. Версия 6 намного более стабильна и
безопасна в работе. При ознакомлении с данной информацией имейте в
виду, что она относится к компоненту веб-сервера IIS. В шестой версии
IIS службы FTP, SMTP и NNTP по-прежнему выполняются в процессе inetinfo.exe.
В предыдущих версиях IIS (см. рис. 1.6) все компоненты выполнялись в
процессе inetinfo.exe или вне процесса в dllhost.exe. Сайт с ошибкой,
выполняющийся в inetinfo.exe, мог вызвать сбой веб-службы со всеми
вытекающими последствиями.
(рис 1.6) Диаграмма процесса веб-сервера IIS 5IIS 6 отделяет код веб-сервера от кода поддержки приложений при помощи
HTTP-слушателя режима ядра http.sys и службы веб-администрирования
(WAS), являющейся диспетчером процесса и конфигурации пользовательского
режима (см. рис. 1.7). Эти программы не выполняют никакого стороннего
кода, поэтому ошибка веб-сайта не оказывает на них никакого
воздействия. Код выполняется в рабочем процессе. Рабочие процессы
выполняются с помощью приложения w3wp.exe. Каждая копия w3wp.exe
представляет собой отдельный рабочий процесс. Рабочие процессы
существуют отдельно друг от друга и от ядра, поэтому их можно
изолировать от операционной системы.
(рис 1.7) Диаграмма процесса веб-сервера IIS 6Совет. Выражение "в процессе" означает код, выполняемый в том же процессе, что и родительский. "Вне процесса" означает код, выполняемый в отдельном процессе.
Веб-служба IIS 6 выполняет весь прикладной код в изолированной среде.
Такой подход называется режимом изоляции рабочего процесса. Он уже был
реализован в IIS ранее, однако его использование приводило к
значительному спаду производительности. Однако в IIS 6 все выполняется
вне процесса, поэтому никакого снижения производительности не
происходит. Предыдущие версии IIS использовали процессы режима
пользователя для маршрутизации запросов, направленных друг к другу. В
IIS 6 запросы вызываются непосредственно из ядра, с полной изоляцией
рабочих процессов друг от друга. Это помогает в том случае, если два
приложения нужно отделить по причинам безопасности. В настоящий момент
такие службы IIS, как FTP и SMTP, все еще выполняются в inetinfo, как и
в IIS 5. Возможно, в следующей версии рабочие процессы будет
изолированы и для этих служб, однако пока что они могут воздействовать
на процесс inetinfo.
Иногда изоляция рабочих процессов вызывает проблемы с приложениями,
которым требуется доступ к данным между вхождениями или выполнение в
среде пула приложений IIS 5. В данном случае IIS использует функцию режима изоляции IIS 5. Этот режим функционирует так же, как и в IIS 5,
что позволяет приложениям выполняться в пуле приложений IIS 5 с
сохранением возможности режима ядра http.sys ставить в очередь и
обрабатывать запросы.
Большая часть сайтов прекрасно функционирует под IIS 6, однако в некоторых случаях необходимо использовать режим изоляции и пресекать рециркуляцию рабочих процессов.
Включение режима изоляции IIS 5.0. Включение режима изоляции производится на корневом уровне папки Web Sites (Веб-узлы) в IIS MMC. Это действие осуществляется для всех веб-сайтов на cервере в целом; нельзя включать этот режим для отдельных веб-сайтов. Для включения режима изоляции выполните следующие действия.
IIS вводит принципиально новый способ поддержки приложений. Пулы
приложений позволяют выполнять код в изолированной среде. Каждый пул
приложения обслуживается одним или несколькими рабочими процессами. При
запуске IIS служба веб-администрирования (Web Administration Service)
инициализирует таблицу маршрутизации пространства имен http.sys с одной
записью для каждого приложения. Эта таблица определяет, к какому пулу
приложений должно быть маршрутизировано приложение. При получении
запроса http.sys дает WAS команду на запуск одного или нескольких
рабочих процессов для поддержки этого пула приложения. Такая изоляция
процессов в целом повышает стабильность веб-сервера.
WAS имеет возможность контролировать состояние ("здоровье") IIS
посредством отслеживания рабочих процессов и мониторинга степени их
исправности. Это позволяет предотвратить отказы IIS. WAS отслеживает
рабочие процессы посредством отправки пинг-запросов через установленные
промежутки времени. Если рабочий процесс не отвечает на пинг-запрос,
WAS завершает процесс и запускает новый, что сохраняет возможность
системы отвечать на системные запросы даже в случае "зависания"
рабочего процесса. При возникновении сбоя в рабочем процессе и его
"зависании" http.sys будет выдавать последовательные запросы до тех
пор, пока WAS не запустит новый рабочий процесс для поддержки этого
пула приложения. Конечный пользователь столкнется с временной потерей
обслуживания приложениями в данном пуле приложений, в то время как
ключевые веб-службы и другие приложения продолжат свою работу.
WAS можно настроить на блокирование рабочего процесса вместо его уничтожения, что позволяет выполнить проверку неисправного рабочего процесса.
WAS настраивается также и на выполнение команды (например, на запуск отладчика) при блокировке рабочего процесса. Рабочие процессы периодически перезапускаются в дополнение к перезапуску при возникновении ошибок, что позволяет уменьшить объем потерянных данных посредством инициализации среды и возвращения этих данных системе. При перезапуске рабочего процесса WAS создает новый рабочий процесс и сообщает существующему рабочему процессу о необходимости завершения выполняемых операций и своей работы в течение определенного времени. Это позволяет поддерживать приложение в рабочем состоянии с обновлением рабочих процессов в фоновом режиме. Если рабочий процесс не завершает работу в разрешенный промежуток времени, то он уничтожается.
Перезапуск рабочих процессов производится по следующим критериям:
Режим изоляции рабочих процессов позволяет улучшить масштабируемость веб-сервера. На сервере с такой конфигурацией могут существовать тысячи веб-сайтов. Каждый пул приложений контролируется в индивидуальном порядке с ограничением процессорного времени для отдельных пулов.
Для поддержки одного пула приложений можно установить несколько рабочих процессов. Такие структуры называются веб-наборами. Веб-наборы улучшают мультипроцессорную масштабируемость, так как каждый рабочий процесс становится родственным отдельному процессору для увеличения количества обращений в кэш этого процессора. При возникновении перегрузки рабочего процесса его поддерживают другие рабочие процессы. Этот подход снижает необходимость перезагрузки сервера даже при обновлении компонентов, так как просто перезапускается пул приложения.
Количество запросов в очереди для каждого пула приложения указывается в http.sys при выполнении рабочего процесса в режиме изоляции. По
достижении этого лимита новые запросы к пулу приложения не
обрабатываются, и пользователь получает сообщение об ошибке HTTP 503.
Примечание. Подробная информация о пулах приложений и опциях приведена в лекции 2.
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.