Общие сведения о рабочем процессе Windows PowerShell

 

Применимо к:Windows Server 2012, Windows Server 2012 R2

ИТ-специалисты и разработчики часто автоматизируют управление своими системами из нескольких компьютеров, используя последовательности длительно выполняемых задач или рабочих процессов, которые могут воздействовать на множество управляемых компьютеров или устройств одновременно. Рабочий процесс Windows PowerShell дает возможность ИТ-специалистам и разработчикам воспользоваться преимуществами Windows Workflow Foundation с функциями автоматизации Windows PowerShell. Функциональные возможности рабочего процесса Windows PowerShell были представлены в Windows Server® 2012 и Windows 8 и входят в состав Windows PowerShell 3.0 и более поздних выпусков Windows PowerShell. Рабочий процесс Windows PowerShell помогает автоматизировать распределение, управление и выполнение задач на нескольких компьютерах, что освобождает пользователей и администраторов для работы над задачами более высокого уровня.

Windows PowerShell, впервые появившаяся в Windows Vista и Windows Server 2008, объединяет распределенный механизм автоматизации, оболочку командной строки и язык сценариев на платформе Microsoft® .NET Framework. Она предназначена специально для автоматизации управления Windows.

Рабочий процесс Windows PowerShell — это ключевой компонент Windows PowerShell 3.0 и Windows PowerShell 4.0. Дополнительные сведения о Windows PowerShell см. в разделе Новые возможности Windows PowerShell.

Содержание:

  • Обзор рабочего процесса Windows PowerShell

  • Отличия между сценариями Windows PowerShell и рабочими процессами Windows PowerShell

  • Создание и импорт рабочих процессов с помощью конструктора рабочих процессов Visual Studio

Обзор рабочего процесса Windows PowerShell

Рабочий процесс — это последовательность связанных программируемых операций, в ходе которых выполняются длительные задачи или скоординированные действия на нескольких устройствах или управляемых узлах. Рабочий процесс Windows PowerShell позволяет ИТ-специалистам и разработчикам создавать в качестве рабочих процессов последовательности действий управления несколькими устройствами или отдельные задачи в рамках рабочего процесса. Рабочие процессы могут быть длительными, повторяющимися, часто используемыми, параллельными, прерываемыми, останавливаемыми и перезапускаемыми. Их можно приостанавливать и возобновлять. Они также могут продолжаться после непредвиденных сбоев, например сбоя сети или перезагрузки компьютера.

Рабочие процессы Windows PowerShell можно создать или определить с использованием синтаксиса Windows PowerShell или XAML-файлов. Дополнительные сведения о создании рабочего процесса Windows PowerShell на основе сценария см. в разделе Создание рабочего процесса сценария. Дополнительные сведения о рабочих процессах на основе XAML см. в разделе Создание и импорт рабочих процессов с помощью конструктора рабочих процессов Visual Studio далее.

Благодаря функции RunAs в Windows PowerShell настраиваемые конфигурации сеансов позволяют ИТ-специалистам запускать рабочие процессы или действия внутри рабочего процесса с делегированными или подчиненными правами.

Действия

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

Преимущества рабочего процесса Windows PowerShell

В представленном ниже списке перечислены преимущества рабочего процесса Windows PowerShell.

  • Использование синтаксиса сценариевWindows PowerShell

    ИТ-специалисты могут использовать навыки написания сценариев Windows PowerShell для создания процессов на основе сценариев с использованием расширяемого языка Windows PowerShell. Рабочие процессы на основе сценария Windows PowerShell легки в написании и могут совместно использоваться путем их вставки в сообщение электронной почты или публикации на веб-страницах.

  • Управление несколькими устройствами

    Задачи рабочего процесса можно применить одновременно для сотен управляемых узлов. Рабочий процесс Windows PowerShell автоматически добавляет общие параметры в рабочие процессы, такие как PSComputerName, чтобы разрешить использование сценариев управления несколькими устройствами. Дополнительные сведения о параметрах, которые зарезервированы для рабочих процессов, см. в разделе "Зарезервированные слова в рабочих процессах" в Справочные разделы по созданию рабочего процесса.

  • Выполнение одной задачи для управления сложными комплексными процессами

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

  • Автоматическое восстановление после сбоя

    Рабочий процесс подвергается как запланированным, так и незапланированным прерываниям, таким как перезагрузки компьютеров. Выполнение рабочего процесса можно приостановить, а затем перезапустить или возобновить процесс с точки, в которой он был приостановлен. В ходе рабочего процесса можно создавать контрольные точки, чтобы возобновлять рабочий процесс с последней сохраненной задачи (или контрольной точки), а не перезапускать рабочий процесс сначала.

  • Повторные попытки подключения и выполнения действий

    С помощью общих параметров рабочих процессов пользователи могут повторять подключения к управляемым узлам в случае сбоя сетевого подключения. Разработчики рабочих процессов также могут указывать действия, которые необходимо выполнить снова, если действие не может быть завершено на одном или нескольких управляемых узлах (например, если целевой компьютер находился в автономном режиме во время выполнения действия).

  • Подключение и отключение

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

  • Расписание задач

    Задачи рабочего процесса, как и любой другой командлет или сценарий Windows PowerShell, могут быть запланированы и выполнены при выполнении заданных условий.

Отличия между сценариями Windows PowerShell и рабочими процессами Windows PowerShell

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

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

  • Необходимо выполнить длительную задачу, которая объединяет несколько шагов в последовательности.

  • Необходимо выполнить задачу, которая выполняется на нескольких устройствах.

  • Необходимо выполнить задачу, для которой требуются контрольные точки или сохраняемость.

  • Необходимо выполнить длительную, асинхронную, перезапускаемую, выполняемую параллельно или прерываемую задачу.

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

Создание и импорт рабочих процессов с помощью конструктора рабочих процессов Visual Studio

Помимо создания рабочих процессов, использующих сценарии Windows PowerShell, их также можно создавать в конструкторе рабочих процессов Visual Studio. Рабочие процессы, создаваемые в конструкторе рабочих процессов Visual Studio, имеют расширение имени файла XAML. Рабочие процессы, созданные в конструкторе рабочих процессов, можно вызывать и импортировать в рабочие процессы Windows PowerShell. Вы можете предоставлять командлеты Windows PowerShell в качестве действий в конструкторе рабочих процессов.

Дополнительные сведения о создании рабочих процессов в конструкторе рабочих процессов Visual Studio см. в разделе Использование конструктора рабочих процессов в документации по Visual Studio на сайте MSDN.

Действия рабочих процессов Windows PowerShell в конструкторе рабочих процессов Visual Studio

Windows PowerShell включает встроенные действия для большинства командлетов Windows PowerShell. Эти действия упакованы в сборки, имена которых соответствуют имени модуля Windows PowerShell, содержащего командлеты. Ниже приведен список сборок действий Windows PowerShell, установленных в глобальном кэше сборок.

  • Microsoft.PowerShell.Activities

  • Microsoft.PowerShell.Core.Activities

  • Microsoft.PowerShell.Diagnostics.Activities

  • Microsoft.PowerShell.Management.Activities

  • Microsoft.PowerShell.Security.Activities

  • Microsoft.PowerShell.Utility.Activities

  • Microsoft.WSMan.Management.Activities

Дополнительные сведения о добавлении действия на панель элементов из сборки см. в статье Как добавить действия в область элементов.

См. также

Настройка среды рабочего процесса
Выполнение рабочего процесса Windows PowerShell
Создание рабочего процесса сценария
Новые возможности Windows Workflow Foundation 4.0
about_Jobs
about_Workflow_Common_Parameters
about_Workflows