Introduzindo o Fluxo de Trabalho do Windows PowerShell

 

Aplica-se a: Windows Server 2012, Windows Server 2012 R2

Às vezes, os profissionais de TI automatizam o gerenciamento de seus ambientes com vários dispositivos executando sequências de tarefas de execução longa, ou fluxos de trabalho, que podem afetar vários dispositivos ou computadores gerenciados ao mesmo tempo. O Fluxo de Trabalho do Usando o Windows PowerShell permite que os profissionais de TI aproveitem os benefícios do Windows Workflow Foundation com os recursos de automação e a facilidade de uso do Usando o Windows PowerShell. A funcionalidade do Fluxo de Trabalho do Usando o Windows PowerShell foi introduzida no Windows Server ® 2012 e Windows 8, e faz parte do Usando o Windows PowerShell 3.0 e das versões mais recentes do Usando o Windows PowerShell. O Fluxo de Trabalho do Usando o Windows PowerShell ajuda a automatizar a distribuição, orquestração e conclusão de tarefas em vários dispositivos, liberando os usuários e administradores para se concentrarem em tarefas de nível mais alto.

O Usando o Windows PowerShell, introduzido pela primeira vez com o lançamento do Windows Vista e do Windows Server 2008, é um mecanismo de automação distribuída, shell de linha de comando e linguagem de scripts que foi criado com base no Microsoft® .NET Framework. Foi desenvolvido especialmente para automação do gerenciamento do Windows.

O Fluxo de Trabalho do Usando o Windows PowerShell é um recurso principal do Usando o Windows PowerShell 3.0 e Usando o Windows PowerShell 4.0. Para obter mais informações sobre Usando o Windows PowerShell, consulte Novidades do Windows PowerShell.

Este tópico inclui as seguintes seções.

  • Visão geral do Fluxo de Trabalho do Windows PowerShell

  • Como diferem o Fluxo de Trabalho do Windows PowerShell e os scripts do Windows PowerShell

  • Criando e importando fluxos de trabalho usando o Designer de Fluxo de Trabalho do Visual Studio

Visão geral do Fluxo de Trabalho do Windows PowerShell

Um fluxo de trabalho é uma sequência de etapas programadas e conectadas que executam tarefas de execução longa ou exigem a coordenação de várias etapas em vários dispositivos ou nós gerenciados. O Fluxo de Trabalho do Usando o Windows PowerShell permite que os profissionais e desenvolvedores de TI criem sequências de atividades de gerenciamento de vários dispositivos, ou tarefas únicas dentro de um fluxo de trabalho, como fluxos de trabalho. De modo padrão, os fluxos de trabalho podem ser demorados, reproduzíveis, frequentes, paralelizáveis, passíveis de interrupção, passíveis de parada e reiniciáveis. Eles podem ser suspensos e retomados; também podem continuar após uma interrupção inesperada, como uma interrupção da rede ou reinicialização de computador.

Os fluxos de trabalho do Usando o Windows PowerShell podem ser criados ou definidos usando a sintaxe do Usando o Windows PowerShell ou arquivos XAML. Para obter mais informações sobre a criação de um fluxo de trabalho baseado em scripts do Usando o Windows PowerShell, consulte Gravando um fluxo de trabalho de script. Para obter mais informações sobre fluxos de trabalho baseados em XAML, consulte Criando e importando fluxos de trabalho usando o Designer de Fluxo de Trabalho do Visual Studio neste tópico.

Ao usar a funcionalidade RunAs do Usando o Windows PowerShell, as configurações de sessão personalizadas permitem que os profissionais de TI representantes ou subordinados executem fluxos de trabalho ou atividades em um fluxo de trabalho.

Atividades

Uma atividade é uma tarefa específica que você deseja que um fluxo de trabalho execute. Assim como um script é composto de um ou mais comandos, um fluxo de trabalho é composto de uma ou mais atividades que são executadas em uma sequência. Um script também pode ser usado como um único comando em outro script, e um fluxo de trabalho pode ser usado como uma atividade dentro de outro fluxo de trabalho.

Benefícios do Fluxo de Trabalho do Windows PowerShell

A lista a seguir descreve muitos dos benefícios do Fluxo de Trabalho do Usando o Windows PowerShell.

  • Use a sintaxe de scripts do Usando o Windows PowerShell

    Os profissionais de TI podem usar as habilidades de scripts do Usando o Windows PowerShell para criar fluxos de trabalho baseados em script usando o a linguagem extensível do Usando o Windows PowerShell. Os fluxos de trabalho baseados em scripts do Usando o Windows PowerShell são fáceis de escrever e podem ser facilmente compartilhados colando-os em um email ou publicando-os em páginas da Web.

  • Gerenciamento de vários dispositivos

    É possível aplicar tarefas de fluxo de trabalho simultaneamente a centenas de nós gerenciados. O Fluxo de Trabalho do Usando o Windows PowerShell adiciona parâmetros comuns aos fluxos de trabalho automaticamente, como PSComputerName, para habilitar cenários de gerenciamento de vários dispositivos. Para obter mais informações sobre os parâmetros que são reservados para fluxos de trabalho, consulte "Palavras reservadas em fluxos de trabalho" nos Tópicos de referência de criação de fluxo de trabalho.

  • Executar uma tarefa única para gerenciar processos complexos de ponta a ponta

    Você pode combinar scripts ou comandos relacionados que atuem em todo o cenário de um único fluxo de trabalho. O status e o progresso das atividades do fluxo de trabalho ficam visíveis a qualquer momento.

  • Recuperação de falhas automatizada

    Os fluxos de trabalho sobrevivem a interrupções planejadas e não planejadas, como reinicializações do computador. Você pode suspender a operação de um fluxo de trabalho e, depois, reiniciá-lo ou retomá-lo do ponto em que foi suspenso. É possível criar pontos de verificação como parte de seu fluxo de trabalho e, assim, retomar o fluxo de trabalho da última tarefa persistida (ou ponto de verificação), em vez de reiniciá-lo desde o início.

  • Repetições de conexões e de atividades

    Usando parâmetros comuns de fluxo de trabalho, os usuários do fluxo de trabalho podem repetir conexões a nós gerenciados se ocorrerem falhas de conexão de rede. Os autores de fluxo de trabalho também podem especificar as atividades que devem ser executadas novamente se a atividade não puder ser concluída em um ou mais nós gerenciados (por exemplo, se um computador de destino estava offline enquanto a atividade foi executada).

  • Conectar e desconectar

    Os usuários podem se conectar e desconectar do computador que está executando o fluxo de trabalho, mas o fluxo de trabalho permanecerá em execução. Por exemplo, se você estiver executando o fluxo de trabalho e gerenciando-o em dois computadores diferentes, poderá fazer logoff ou reiniciar o computador no qual você está gerenciando o fluxo de trabalho e monitorar as operações do fluxo de trabalho de outro computador (como um computador doméstico) sem interromper o fluxo de trabalho.

  • Agendamento de tarefas

    As tarefas de fluxo de trabalho podem ser agendadas e iniciadas quando condições específicas forem atendidas, como acontece com qualquer outro cmdlet ou script do Usando o Windows PowerShell.

Como diferem o Fluxo de Trabalho do Windows PowerShell e os scripts do Windows PowerShell

Em um script, todo o script é executado no mesmo runspace, o ambiente operacional que define quais comandos, variáveis e outros elementos estão disponíveis. Em um fluxo de trabalho, cada atividade do fluxo de trabalho pode ser executada em um runspace diferente. As variáveis que são criadas no nível superior de todo o fluxo de trabalho estão disponíveis em todo o fluxo de trabalho; se elas forem criadas no nível de script ou de comando, elas ficarão disponíveis para o comando ou script, mas não para todo o fluxo de trabalho.

Em geral, você deve considerar o uso de um fluxo de trabalho em vez de um cmdlet ou script quando você precisar atender a qualquer um dos requisitos a seguir.

  • Você precisa executar uma tarefa demorada que combine várias etapas em uma sequência.

  • Você precisa executar uma tarefa que é executada em vários dispositivos.

  • Você precisa executar uma tarefa que exige ponto de verificação ou persistência.

  • Você precisa executar uma tarefa demorada que é assíncrona, reinicializável, paralelizável ou passível de interrupção.

  • Você precisa executar uma tarefa em grande escala, ou em ambientes de alta disponibilidade, que possivelmente exige limitação e pooling de conexão.

Criando e importando fluxos de trabalho usando o Designer de Fluxo de Trabalho do Visual Studio

Além de criar fluxos de trabalho que usam scripts do Usando o Windows PowerShell, você também pode criar fluxos de trabalho usando o Designer de Fluxo de Trabalho do Visual Studio. Os fluxos de trabalho criados no Designer de Fluxo de Trabalho do Visual Studio têm uma extensão de nome de arquivo XAML. Você pode invocar e importar fluxos de trabalho do Fluxo de Trabalho do Usando o Windows PowerShell que foram criados no Designer de Fluxo de Trabalho e expor os cmdlets do Usando o Windows PowerShell como atividades no Designer de Fluxo de Trabalho.

Para obter mais informações sobre a criação de fluxos de trabalho no Designer de Fluxo de Trabalho do Visual Studio, consulte Usando o Designer de Fluxo de Trabalho na documentação do Visual Studio no MSDN.

Atividades do Fluxo de Trabalho do Windows PowerShell no Designer de Fluxo de Trabalho do Visual Studio

O Usando o Windows PowerShell inclui atividades integradas para a maioria dos cmdlets do Usando o Windows PowerShell. Essas atividades são empacotadas em assemblies com nomes que correspondem ao nome do módulo do Usando o Windows PowerShell que contém os cmdlets. Veja a seguir a lista de assemblies de atividade do Usando o Windows PowerShell que estão instalados no GAC (Cache de Assembly Global).

  • 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

Para obter mais informações sobre como adicionar uma atividade à Caixa de Ferramentas de um assembly, veja Como: adicionar atividades à Caixa de Ferramentas.

Consulte também

Configurando seu ambiente de fluxo de trabalho
Executando um fluxo de trabalho do Windows PowerShell
Gravando um fluxo de trabalho de script
Novidades do Windows Workflow Foundation 4.0
about_Jobs
about_Workflow_Common_Parameters
about_Workflows