Опубликован: 20.02.2006 | Доступ: свободный | Студентов: 3335 / 381 | Оценка: 4.34 / 3.99 | Длительность: 21:22:00
ISBN: 978-5-9570-0022-1
Лекция 9:

Задачи по администрированию

< Лекция 8 || Лекция 9: 12345 || Лекция 10 >

Работа с провайдером WMI

WMI представляет собой нечасто используемый метод администрирования Microsoft. Тем не менее, все новые продукты Microsoft имеют встроенную поддержку WMI. WMI использует так называемую общую информационную модель (Common Information Model, CIM), а также расширения Microsoft, предназначенные для этой модели. WMI создает хранилище информации, доступ к которому осуществляется с помощью простого интерфейса API COM/DCOM.

WMI или ADSI?

WMI имеет некоторые преимущества перед ADSI, что делает его более удобным для работы со сценариями.

Поддержка запросов

Для выбора объектов и свойств в WMI используется структурированный язык запросов SQL. Это серьезное преимущество, поскольку этот язык позволяет создавать детализированный запрос, с помощью которого выбираются только нужные данные. При создании объекта используется либо instanceof (поддерживается не всеми объектами WMI), либо запрос SQL; затем происходит обработка ответа на запрос для получения данных.

Ассоциирование

С помощью WMI выбираются объекты и свойства, связанные с любым числом элементов, а не только объект ADSI, к которому осуществляется подключение. Это позволяет создавать более мощные сценарии, воздействующие на несколько компонентов IIS.

Универсальная поддержка

Как уже говорилось выше, Microsoft обеспечивает поддержку WMI во всех своих продуктах. WMI открывает доступ к данным и позволяет администрировать все приложения через один и тот же интерфейс. При использовании WMI другими поставщиками данные об их программах также будут содержаться в хранилище WMI.

Поддержка пользовательского интерфейса

В компании Microsoft разработана программа WMI Object Browser. Она доступна в виде компонента WMI SDK версии 1.0. Object Browser полезен при поиске определенных объектов для создания сценария, поскольку эта программа позволяет при помощи графического интерфейса перейти к искомому элементу. При работе с ADSI осуществляется поиск метабазы для нахождения имен ключей, однако этим все и ограничивается. В ADSI трудно узнать методы, используемые для объекта, в то время как все это отображается в программе WMI Object Browser (см. рис. 9.2).

Программа WMI Object Browser

Рис. 9.2. Программа WMI Object Browser

Работа со сценариями в WMI

Рассмотрим несколько задач по работе со сценариями в WMI. Для начала создадим объект и подключимся к провайдеру WMI. Ниже приведены строки кода, реализующие работу с веб-сайтом по умолчанию. Первая строка устанавливает связь с пространством имен MicrosoftIISv2, вторая строка – подключение к объекту веб-сайта по умолчанию.

SET IISConn = GetObject("winmgmts://mycomputer/root/MicrosoftIISv2")
SET MyDefaultWebSite = IISConn.get("IIsWebServerSetting='W3SVC/1'")

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

Доступ к свойствам с помощью WMI

Ниже приведен код, реализующий просмотр комментария веб-сайта по умолчанию с использованием обоих методов подключения. Сначала используем прямой доступ к свойству:

Option Explicit
DIM IISConn, MyDefaultWebSite
SET IISConn = GetObject("winmgmts://mycomputer/root/MicrosoftIISv2")
SET MyDefaultWebSite = IISConn.get("IIsWebServerSetting='W3SVC/1'")
    Wscript.Echo MyDefaultWebSite.ServerComment
    SET MyDefaultWebSite = Nothing
    SET IISConn = Nothing

Теперь применим тот же самый код, только с использованием SQL-запроса. Результат будет тем же самым; это лишь альтернативный способ доступа к коду.

Option Explicit
DIM IISConnQuery, item
SET IISConnQuery = GetObject("winmgmts://mycomputer/root/MicrosoftIISv2")_
.Execquery("Select * from IIsWebServerSetting where Name='W3SVC/1'")
FOR each item in IISConnQuery
    Wscript.echo item.ServerComment
    NEXT 
    SET IISConnQuery = Nothing

Преимуществом SQL-запросов является то, что можно выбирать несколько значений и несколько объектов. Например, для отображения списка, состоящего из имен веб-сайтов и комментариев для всех сайтов рассматриваемого сервера, используется следующий сценарий:

Option Explicit
DIM IISConnQuery, item, ServerCommentList
SET IISConnQuery = GetObject("winmgmts://mycomputer/root/MicrosoftIISv2")_
.Execquery("Select * from IIsWebServerSetting")

FOR each item in IISConnQuery
ServerCommentList = ServerCommentList & item.Name &vbtab &_
item.ServerComment &vbcrlf
NEXT

Wscript.echo ServerCommentList
SET IISConnQuery = Nothing

Здесь как раз и проявляются все достоинства WMI. С его помощью просматривается несколько объектов посредством одного-единственного фрагмента кода. Приложив некоторые дополнительные усилия, можно изменить комментарий для каждого сайта. Для этого нужно присвоить некоторое значение ServerComment и использовать метод IISConn.Put_(). Провайдер IIS WMI чрезвычайно полезен в работе. На данный момент имеется небольшое количество документации и кода, поддерживающих эту технологию, однако по мере распространения WMI их будет предостаточно.

Использование утилит VBScript, имеющихся в IIS

IIS содержит несколько утилит VBScript, которые используются для конфигурирования IIS из командной строки. Большая их часть выполняется при помощи интерпретатора cscript.exe, а не wscript.exe. Они готовы к использованию, поэтому вам не придется создавать свои собственные сценарии VBScript для управления IIS (если, конечно, нет соответствующего желания). Данные утилиты написаны таким образом, что позволяют осуществлять администрирование локальных и удаленных компьютеров.

Оговоренные сценарии располагаются в папке %systemroot%\System32. Ниже приведен их перечень.

  • IISAPP.VBS Позволяет просматривать любые рабочие процессы, выполняющиеся в данный момент. Отображает их по идентификаторам процессов и идентификаторам пулов приложений.
  • IISBACK.VBS Позволяет архивировать и восстанавливать файлы метабазы и схемы IIS.
  • IISCNFG.VBS Позволяет копировать, импортировать и экспортировать конфигурацию IIS на другие компьютеры или с других компьютеров. Реализуется посредством копирования файлов схемы и метабазы.
  • IISEXT.VBS Позволяет включать и отключать расширения веб-служб, а также добавлять, удалять и осуществлять управление расширениями веб-служб.
  • IISFTP.VBS Позволяет создавать, удалять, останавливать, запускать и выполнять другие действия с FTP-сайтами, а также устанавливает изоляцию пользователей FTP.
  • IISFTP.VBS Позволяет создавать и удалять виртуальные каталоги на FTP-сайтах, а также отображает перечень виртуальных каталогов.
  • IISVDIR.VBS Позволяет создавать и удалять виртуальные каталоги на веб-сайтах, а также отображает перечень виртуальных каталогов.
  • IISWEB.VBS Позволяет создавать, удалять, останавливать, запускать и выполнять другие действия с веб-сайтами, а также отображает перечень веб-сайтов, имеющихся на компьютере.

В каталоге Inetpub\AdminScripts расположены два дополнительных сценария VBScript.

  • ADSUTIL.VBS Будучи главным сценарием, этот сценарий использует ADSI для администрирования IIS на данном компьютере. Он используется в том случае, если у вас нет возможности создания своих собственных сценариев. Для настройки IIS при помощи VBScript рекомендуется использовать данный сценарий.
  • SYNCIWAM.VBS Сценарий разработан для синхронизации учетной записи Web Application Manager между базой данных диспетчера безопасных учетных записей (SAM) и базой данных COM. Учетная запись Web Application Manager использовалась для запуска внепроцессовых приложений, а теперь используется для запуска рабочих процессов. На первый взгляд не ясно, существует ли поддержка внепроцессовых приложений; данный сценарий может присутствовать здесь только для обеспечения наследования.

В папке %Systemroot%\System32\inetsrv расположены еще три сценария.

  • IIS_SWITCH.VBS Позволяет коммутировать несколько компьютеров в кластере FTP или WWW, управлять переключением. Использует следующие сценарии.
  • CLUSFTP.VBS Содержит некоторые функции для проверки состояния службы FTP; запускает службу, если она остановлена.
  • CLUSWEB.VBS Содержит некоторые функции для проверки состояния службы WWW; запускает службу, если она не активна.

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

< Лекция 8 || Лекция 9: 12345 || Лекция 10 >
Александр Тагильцев
Александр Тагильцев

Где проводится профессиональная переподготовка "Системное администрирование Windows"? Что-то я не совсем понял как проводится обучение.

Владимир Кирин
Владимир Кирин
Неполодки на ресурсе.При сдаче 7 теста, открывается пустое окно, и ничего не происходит.Поправте пожалуйста. При этом попытка считается защитана, перездача только через 30 мин. Использую браузер опера.
Дмитрий Карачун
Дмитрий Карачун
Беларусь, Минск