Использование групповой политики для развертывания приложений
Одной из самых больших задач, с которыми приходится сталкиваться администраторам, является управление жизненным циклом приложений. Независимо от того, есть ли в офисе 20 ПК или 20 000, никому не нравится идея переходить от машины к машине с установочным компакт-диском каждый раз, когда выпускается новая версия приложения. Существуют программы, предназначенные для помощи администраторам в управлении приложениями в сети, но большинство из них слишком сложны и дороги. Например, SMS Server от Microsoft стоит 1219 долларов, не считая необходимой лицензии Windows Server или дополнительных клиентских лицензий сверх десяти, которые поставляются с продуктом.
Однако вы можете не осознавать, что Windows Server содержит инструменты, которые вы можете использовать для развертывания приложений в вашей организации без необходимости покупать стороннее программное обеспечение. Я сразу скажу вам, что встроенные инструменты развертывания программного обеспечения не так хороши, как то, что вы получили бы в стороннем приложении. Поэтому, если у вас уже есть копия SMS-сервера или чего-то подобного, вы, вероятно, захотите продолжать его использовать.
Прежде чем мы начнем
Техника, которую я собираюсь вам показать, позволит вам развертывать приложения через Active Directory. Одним из основных ограничений этого типа развертывания приложений является то, что этот метод можно использовать только для развертывания определенных типов приложений. В частности, вы можете установить пакеты установщика Windows (файлы.MSI), файлы преобразования (файлы.MST) и файлы исправлений (файлы.MSP).
Несколько лет назад это ограничение было серьезным препятствием, потому что почти никто не упаковывал приложения в файлы трех поддерживаемых типов. Вы могли использовать Active Directory для развертывания Microsoft Office, но не более того. Сегодня приложения обычно включают в себя пакет установщика Windows (файл.MSI), поэтому гораздо проще развертывать приложения через Active Directory, чем раньше.
Даже если приложение, которое вы хотите развернуть, не включает пакет установщика Windows, вам не повезло. Можно создать собственный файл MSI для существующего приложения.
Создание MSI-файлов
Windows изначально не содержит необходимых инструментов для создания собственных файлов MSI. Вместо этого вам придется полагаться на сторонний инструмент для создания MSI. Есть несколько хороших инструментов, доступных бесплатно. Двумя наиболее популярными вариантами являются MAKEMSI (http://dennisbareis.com/makemsi.htm) и WinInstall LE 2003 (http://www.ondemandsoftware.com/freele.asp).
Причина, по которой файлы.MSI являются предпочтительным установочным пакетом для Windows, заключается в возможностях формата файла. Когда вы устанавливаете или удаляете файл MSI на машине с Windows XP, Windows создает точку восстановления системы. Кроме того, файлы MSI позволяют приложению «самозалечиваться». Я расскажу об этом позже, но в основном это означает, что если часть приложения повреждена или удалена, то Windows имеет достаточно информации для замены поврежденных или отсутствующих частей. Наконец, файлы MSI позволяют системе автоматически выполнять откат к предыдущему состоянию в случае сбоя установки.
Поскольку файлы MSI имеют так много возможностей, неудивительно, что файлы MSI имеют тенденцию быть немного сложными. Файлы MSI на самом деле представляют собой файлы базы данных с информацией, относящейся к каждому файлу и настройке, которую приложение устанавливает или изменяет. Из-за этой сложности большинство утилит для создания файлов MSI требуют, чтобы вы выполняли хотя бы некоторые сценарии при создании файла MSI.
Поскольку я никогда не был большим поклонником написания сценариев, я предпочитаю использовать инструмент WinInstall LE для создания файлов MSI. Он не требует каких-либо сценариев, но его использование требует немного времени. WinInstall LE требует, чтобы у вас была машина с чистой установкой Windows и сетевым подключением. Затем программа делает снимок этой машины и сохраняет образ конфигурации. Затем вы должны установить приложение, для которого хотите создать файл MSI, и сделать еще один снимок. Затем WinInstall сравнит снимки и использует различия между двумя образами для создания файла MSI и соответствующего установочного пакета.
Этот метод требует немного времени, но гораздо менее утомителен, чем написание скриптов. Еще одно преимущество использования этого метода заключается в том, что можно установить несколько приложений на чистую машину до того, как будет сделан второй снимок. Это означает, что вы можете создать один MSI-файл и установочный пакет, который развертывает несколько приложений.
Публикация и назначение приложений
Теперь, когда вы знаете, как создать файл MSI, есть еще одна концепция, о которой мне нужно поговорить, прежде чем я покажу вам, как развернуть приложение через Active Directory.
Как вы, возможно, уже знаете, в среде Active Directory групповые политики являются основным компонентом сетевой безопасности. Объекты групповой политики могут применяться как к пользователям, так и к компьютерам. Развертывание приложений через Active Directory также осуществляется с помощью групповых политик, поэтому приложения развертываются либо для каждого пользователя, либо для каждого компьютера.
Существует два разных способа развертывания приложения через Active Directory. Вы можете либо опубликовать приложение, либо назначить приложение. Вы можете публиковать приложения только для пользователей, но вы можете назначать приложения либо пользователям, либо компьютерам. Приложение развертывается по-разному в зависимости от того, какой из этих методов вы используете.
Публикация приложения фактически не устанавливает приложение, а делает его доступным для пользователей. Например, предположим, что вы должны были опубликовать Microsoft Office. Публикация — это параметр групповой политики, поэтому он не вступит в силу до тех пор, пока пользователь не войдет в систему в следующий раз. Однако когда пользователь войдет в систему, он изначально не заметит ничего другого. Однако, если пользователь откроет панель управления и нажмет кнопку «Установка и удаление программ», он обнаружит, что Microsoft Office теперь находится в списке. Затем пользователь может выбрать установку Microsoft Office на свой компьютер.
Следует иметь в виду, что независимо от того, какой метод развертывания вы используете, Windows не выполняет никакого контроля использования программного обеспечения. Таким образом, вы сами должны убедиться, что у вас достаточно лицензий для программного обеспечения, которое вы устанавливаете.
Назначение приложения пользователю работает иначе, чем публикация приложения. Опять же, назначение приложения — это действие групповой политики, поэтому назначение не вступит в силу до тех пор, пока пользователь не войдет в систему в следующий раз. Когда пользователь войдет в систему, он увидит, что новое приложение было добавлено в меню «Пуск». и/или на рабочий стол.
Хотя пункт меню или значок для приложения существует, на самом деле программное обеспечение еще не установлено. Чтобы не перегрузить сервер, содержащий установочный пакет, программное обеспечение фактически не устанавливается до тех пор, пока пользователь не попытается использовать его в первый раз.
Здесь также появляется функция самовосстановления. Когда пользователь пытается использовать приложение, Windows всегда выполняет быструю проверку, чтобы убедиться, что приложение не повреждено. Если файлы или параметры реестра отсутствуют, они автоматически заменяются.
Назначение приложения компьютеру аналогично назначению приложения пользователю. Основное отличие состоит в том, что назначение связано с компьютером, а не с пользователем, поэтому оно вступает в силу при следующей перезагрузке компьютера. Назначение приложения компьютеру также отличается от назначений пользователя тем, что в процессе развертывания фактически устанавливается приложение, а не просто значок приложения.
Развертывание приложений
Настройка фактического развертывания проста. Самое главное, что вы должны помнить, это то, что файл MSI и соответствующий пакет должны существовать в сетевой папке, и у всех должны быть права на чтение для этой общей папки.
Чтобы выполнить развертывание, откройте редактор групповой политики. Чтобы опубликовать или назначить приложение пользователю, перейдите через консоль групповой политики к Конфигурация пользователя | Настройки программного обеспечения | Установка программы. Теперь щелкните правой кнопкой мыши контейнер «Установка программного обеспечения» и выберите «Создать | Команды пакета из контекстного меню. Выберите соответствующий файл MSI и нажмите «Открыть». Теперь вас спросят, хотите ли вы опубликовать или назначить приложение. Сделайте свой выбор и нажмите OK.
Процесс назначения приложения на компьютер практически идентичен. Единственная реальная разница в том, что вы должны использовать Настройки программного обеспечения | Контейнер «Установка программного обеспечения» находится под контейнером «Конфигурация компьютера», а не под контейнером «Конфигурация пользователя».
Вывод
В этой статье я объяснил, как создать установщик MSI для приложения и развернуть это приложение с помощью параметра групповой политики. Имейте в виду, что групповая политика носит иерархический характер. Это означает, что при настройке политики развертывания вы должны быть осторожны, чтобы убедиться, что политика применяется к соответствующим пользователям или компьютерам.