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

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

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

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

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

  • имя
  • операционная система и пакет обновлений
  • аппаратная конфигурация
  • IP-адрес
  • роль в организации
  • соглашение об обслуживании и информация о поддержке производителя
  • приоритет (т.е. какова важность cервера для организации)
  • резервное копирование и восстановление информации (т.е. где хранятся дистрибутивные диски или другие носители для данного сервера, где хранятся носители с резервными копиями)
  • расположение (физическое и логическое)
  • конфигурация и настройки безопасности
  • установленное программное обеспечение (бизнес-приложения, которые запускаются на этом сервере)
  • лицензирование

SYDI-Server - один из ваших серверов

SYDI-сокращение от Script Your Documentation Instantly - это коллекция сценариев, которые могут помочь задокументировать сеть. SYDI поставляется в трех версиях:

SYDI-Server (документирует серверы Windows или клиентов); SYDI-SQL (документирует серверы, на которых запущен Microsoft SQL Server) и SYDI-Exchange (документирует серверы Microsoft Exchange Server), который написан для работы с SYDI-Server Windows Server 2003, Windows XP и Windows 2000 Service Pack 4 (SP4). Все версии SYDI можно найти на домашней странице SYDI в Source Forge.net по адресу http://sydi.sourceforge.net.

SYDI-Server выполняет два процесса: сбор и создание отчетов. SYDI-Server собирает данные, посылая запросы к службе Windows Management Instrumentation (WMI) компьютера и к его реестру. После того, как данные собраны, процесс создания отчетов начинает свою работу и выводит результаты в документ формата Microsoft Word или XML.

Протестируйте SYDI-сервер

Перед тем, как воспользоваться SYDI-Server первый раз, стоит рассмотреть главный сценарий SYDI-Server.vbs и различные ключи, предоставляемые им. Чтобы увидеть эти ключи, нужно открыть окно командной строки, перейти в каталог, в котором находится распакованный файл sydi-server-1.3.4.zip и запустить команду

cscript.exe sydi-server.vbs -h

Как видно из вывода команды, sydi-server.vbs имеет несколько ключей, но мы начнем наше испытание с запуска сценария без них. Запустим команду

cscript sydi-server.vbs

Заметьте, что она требует наличия на компьютере, где запускается сценарий, установленной версии Word 2000 или более поздней. Когда вы запустите эту команду, появится сообщение с вопросом о том, какой из компьютеров должен быть обработан сценарием. По умолчанию стоит “.”, означающая «локальный компьютер». Выбор по умолчанию нам подходит, поэтому нажимаем Enter для продолжения. Теперь вы можете наблюдать, как сценарий собирает данные.

Источником наибольшего количества данных является WMI, источником остальных - реестр. После того, как sydi-server.vbs отсортирует найденную информацию, он начинает записывать ее в документ Word, как показано на рисунке 1. Потратьте немного времени на просмотр только что созданного документа. Как видите, сценарий выводит очень много данных. Для сокращения объема выводимой информации используются переключатели командной строки сценария. Можно задействовать ключи для выбора другой системы, для запуска сценариев под различными учетными записями, для настройки вида отчета документа Word, создания XML-отчета и проверки наличия и использования последней версии SYDI-server.

Рисунок 1. Пример отчета

Как исключить информацию

По умолчанию sydi-server.vbs собирает всю информацию, которая предназначена для сбора. Однако можно исключить некоторые данные WMI, используя ключ -w, и часть данных реестра, воспользовавшись ключом -r.

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

cscript sydi-server.vbs
-w[OptionList]

Здесь OptionList – список желаемых ключей. Xотя в статье команда записана в несколько строк, в окне командного интерпретатора Windows необходимо вводить ее одной строкой. Это касается всех многострочных команд этой статьи. Далее приведены значения ключа -w, которые можно задать:

  • a (приложения, установленные через Windows Installer )
  • b (информация BIOS)
  • e (информация из журнала событий)
  • f (совместно используемые ресурсы)
  • g (локальные группы)
  • p (локальные принтеры)
  • q (установленные обновления)
  • r (размер реестра)
  • s (службы)
  • u (локальные пользователи)

Заметим, что некоторые данные WMI (такие как имя компьютера и сетевые настройки) собираются всегда. Таким образом, WMI используется всегда, даже в том случае, когда вы задали ключ -w без параметров. Подобно ключу –w, ключ -r предназначен для автоматического исключения данных реестра. Так, после использования ключа -r для сокращения выводимой информации, можно задать те параметры, которые позволяют включить в отчет интересующие вас данные реестра. Команда со следующим синтаксисом:

cscript sydi-server.vbs
-r[OptionList]позволяет сделать это. Здесь OptionList является списком желаемых параметров. Параметры ключа -r, из которых вы можно выбирать:
  • c (компоненты Windows )
  • d (полное доменное имя)
  • p (расположение спулера в принтере)

Заметим, что, задав ключ –r, вы тем самым полностью исключаете сбор данных из реестра.

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

cscript.exe sydi-server.vbs
-wabefpr
-rdp

Как выбрать другую систему

Как уже говорилось выше, когда вы запускаете sydi-server.vbs, появляется окно с сообщением, в котором предлагается выбрать целевой компьютер. Значение по умолчанию - локальная система. Но у нас имеется возможность задать любой компьютер сети, пока на нем работает служба WMI. В качестве альтернативы можно воспользоваться ключом -t для того, чтобы задать целевой компьютер. Если вы используете этот ключ, окно сообщения появляться не будет. Таким образом, если вы планируете задать запуск сценария по расписанию или использовать для запуска sydi-server.vbs Runas, укажите ключ -t. Вам также понадобятся ключи -d и -o для создания отчета в Word или ключи -ex и -o для создания XML отчета. Мы коротко рассмотрим эти ключи далее.

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

cscript.exe sydi-server.vbs
-t192.168.0.10

Если нужно собрать информацию из Windows Installer, BIOS, журнала событий и служб сервера WWW1, следует воспользоваться командой:

cscript.exe sydi-server.vbs
-wabes -tWWW1

Заметьте, что ключ –t отличается от -T (его мы рассмотрим далее), т.е. он чувствителен к регистру.

Как запускать сценарии под различными учетными записями

Для запуска sydi-server.vbs необходимы административные привилегии. Вы, возможно, знаете, что не следует регистрироваться в системе с учетной записью, наделенной высокими привилегиями. Существует два способа разрешить эту дилемму. Первая возможность – использование переключателей (-u) и (-p) сценария. Ключ (–u) применяется для задания административной учетной записи, (-p) для задания пароля этой записи. Например, если вы хотите выполнить сценарий на SERVER1 под административной учетной записью, имеющей пароль TomorrowNeverDies, вам придется воспользоваться командой:

cscript.exe sydi-server.vbs
-uAdministrator
-pTomorrowNeverDies
-tSERVER1

Второй способ - воспользоваться командой Runas для запуска сценария. Информация об использовании этой команды имеется в файлах оперативной подсказки Windows.

Как настроить вид документа Word

По yмолчанию sydi-server.vbs экспортирует собранную информацию в документ Word. Word автоматически открывает и отображает документ так, что вы можете видеть отчет в том виде, в котором он был создан. Если вы хотите, чтобы Word запускался скрытым (это ускоряет работу сценария) и сохранял отчет для дальнейшего просмотра, можно воспользоваться ключами–d и –о. Ключ -d заставляет сценарий запускать Word в фоне, а ключ –о задает путь к файлу отчета. Например, если вы хотите запускать Word в свернутом режиме и сохранить отчет в файле DC1.doc в каталоге C:Server Documentation, необходимо ввести команду cscript.exe sydi-server.vbs

-tDC1 -d
-o"C:server documentationdc1.doc"

Заметим, что путь, содержащий пробелы, должен быть заключен в кавычки.

У вас есть возможность настроить вид документа Word, используя ключи -T, -f, -b, и -n. С ключом -T вы заставите Word задействовать файл .dot в качестве шаблона (т.е. -TC:corptemplatesserver.dot) для создаваемого отчета. Переключатель -f позволяет вам изменить размер шрифта создаваемого отчета в соответствии с шаблоном. Ключ -b позволяет задать стиль таблицы Word в отчете (например, -b "Table Contemporary").

Чтобы понять назначение ключа –n, необходимо посмотреть на верхнюю секцию Рисунка 1. В этой секции выводится базовая информация, которую нужно иметь в своей документации. Обратите внимание, что некоторые записи и инструкции заключены в квадратные скобки. Следует заменить эти записи, включая скобки, на информацию, которая будет получена в соответствии с этими инструкциями. Вы можете исправить отчет после его создания, либо изменить sydi-server.vbs. Если вы не хотите вводить какую-либо информацию, можете воспользоваться ключом -n для автоматического исключения инструкций и скобок из отчетов.

Как создать XML-документ

Если требуется передать результаты в документ формата XML, который отличается от формата Word, придется воспользоваться ключами -ex и -o. Ключ -ex приводит к созданию XML-отчета, а ключ -o определяет путь к файлу отчета. Например, если нужно с помощью сценария создать XML с именем server1.xml в папке C:corpfiles, следует ввести команду

cscript.exe sydi-server.vbs
-tSERVER1 -ex
-oC:corpfilesserver1.xml

Если теперь открыть server1.xml в Microsoft Internet Explorer (IE), вы увидите raw- файл в формате XML. Хотя этот файл может быть обработан разными средствами, он не очень удобен для чтения. Для получения оптимального вида  отчета необходимо добавить ключ -sh, который заставляет сценарий задействовать при выводе стиль листа Extensible Style Language (XSL). Например, для использования этого стиля при создании файла server1.xml нужно запустить команду.

cscript.exe sydi-server.vbs
-tSERVER1 -ex -sh
-oC:corpfilesserver1.xml

Как проверить версию SYDI-Server

Для этого применяется ключ -v, определяющий, используете ли вы последнюю версию SYDI-Server. Для этого следует запустить команду

cscript.exe sydi-server.vbs -vthe Сценарий сравнивает вашу версию с версией SYDI-Server, доступной на сайте SourceForge.net, и позволяет узнать, используете ли вы последнюю версию сценария, или уже доступна более новая. Для работы с ключом -v должно работать Internet-соединение.

Хорошее начало

SYDI-Server - превосходный инструмент для создания базовых отчетов о конфигурации серверов. Он поможет наконец начать процесс документирования вашей сети. В дальнейшем, если от вас потребуется более углубленная информация, вы можете получить ее, воспользовавшись данными, собранными сервером SYDI.