Como eu (rigidamente) executo tarefas remotamente em estações de trabalho Windows em um domínio?

5

Eu nem tenho certeza se "robustamente" é uma palavra. Enfim.

Contexto:

Temos algumas centenas de estações de trabalho do Windows 7 em uma LAN. Usamos muito o gerenciamento de AD / GPO, mas há muitas tarefas de manutenção periódicas e / ou manuais que precisamos fazer que não podem ser feitas por meio de GPO / tarefa agendada. Por exemplo, digamos que eu queira executar o programa X (que é executado silenciosamente, em segundo plano, e não incomoda o usuário) na estação de trabalho Y, ou dizer que quero executar a tarefa A em um grupo de estações de trabalho B em uma programação ou em exigem. Chutar os usuários para fora de seus computadores para fazer isso (ou seja, usando o RDP) é um não-não, e não funciona em grupos de qualquer maneira.

Pergunta:

Qual é a melhor maneira de fazer isso que é robusto o suficiente para que, após a configuração, eu possa fornecê-lo a pessoas iniciantes (leia: pessoas que são fóbicas na linha de comando e se confundem com interfaces GUI mais complicadas que o Firefox) ? Sou um programador competente e, se houver um conjunto robusto de ferramentas ou estruturas para esse tipo de tarefa, consideraria a possibilidade de hackear algo se não demorasse muito tempo. Se houver alguma combinação de ferramentas ou técnicas que outras pessoas usam para tornar a administração de estações de trabalho remotas possível para iniciantes, ainda estou para encontrá-las.

Para aqueles que se preocupam com o "porquê": sou de nível médio e fui instruído a implementar uma solução de gerenciamento remoto que permita a execução remota arbitrária / programada, com a confirmação de que os programas eram executados remotamente e eles retornaram. "Por quê?" Eu perguntei: "Não posso simplesmente usar o PsExec e o agendador de tarefas em um despachante máquina?" "Não", disseram-me, "Joe", o técnico da segunda semana, será responsável por este, e ele precisa de algo simples com uma GUI ".

O que eu tentei:

Eu joguei com um monte de "transferir arquivos para um computador remoto e executá-los com scripts em lote / VB do PsExec", mas eles tendem a falhar e não suportam facilmente a execução em grupos personalizáveis. Eu joguei um pouco com a versão para Windows do Puppet , mas ele não suporta arbitrariamente tempo de execução remota (a capacidade de agrupar computadores em uma estrutura de árvore / nó é realmente boa). Eu usei uma versão mais antiga do Altiris e, embora ele faça muito do que eu quero, a interface é horrível , é lento, falha muito e é provavelmente muito caro para o gerenciamento. A solução DMS do SwiftWater faz parte do que eu quero, mas é muito subdesenvolvida, de código fechado (não é um disjuntor de negócio, mas não é ideal), e tenho a impressão de que falta apoio e confiabilidade.

    
por Zac B 03.04.2012 / 18:54

5 respostas

7

Por solicitação, eu estou quebrando isso de um comentário ...

A solução do WesleyDavid (usando o PowerShell, presumivelmente em combinação com a Política de Grupo / Preferências) é a melhor solução para se ajustar ao problema, conforme descrito, mas essa pode não ser a melhor solução em geral. O questionador provavelmente deve considerar um pacote de gerenciamento de sistemas dedicado.

Se a gerência quiser priorizar a facilidade de uso para a tecnologia, talvez faça mais sentido usar o Altiris, o Microsoft System Center, o KACE etc. para atingir essa meta. Eles são mais propensos a dar relatórios que a gerência vai gostar (X% das estações de trabalho tiveram o programa Y instalado) e ajudar os técnicos menos qualificados. Além disso, embora uma coleção personalizada de scripts ofereça o máximo de flexibilidade, os pacotes de gerenciamento do sistema provavelmente podem levar você até o seu objetivo em uma fração do tempo. Se você precisa se deparar com algum problema específico, é mais provável que haja uma comunidade de suporte e consultores que possam ajudá-lo.

O trade-off, claro, é dinheiro. Mas, dado que o questionador é a TI de nível médio, pode ser mais útil para ele trabalhar em outras questões com uma necessidade comercial mais direta do que trabalhar em uma área que tem mais commodities.

Minha rede é menor do que muitas aqui, tenho certeza: cerca de 120 PCs, 20 servidores. Fiz scripts e GPOs porque tive que fazer isso, mas estamos procurando obter um desses recursos apenas para o gerenciamento de patches e relatórios mais fáceis para os responsáveis.

    
por 03.04.2012 / 21:29
7

Todas as ferramentas que você precisa já existem e são incorporadas no Windows 7. Você só precisa ativá-las e configurá-las. Sugiro WinRM / Comandos remotos do PowerShell .

No entanto, isso significa que seu trabalho será fazer uma coleção de scripts e, em seguida, talvez soltar uma interface de usuário de botão de pressão sobre eles para que os técnicos possam facilmente direcionar scripts para PCs e clicar em um botão para executar uma tarefa. No entanto, com base no que você disse, isso deve estar dentro das especificações.

A Microsoft / Windows está profundamente comprometida com o PowerShell e também está comprometida com o uso remoto do PowerShell para modificar e gerenciar vários PCs. Eu acho que você está seguro para trabalhar com uma solução e seus recursos remotos. O PowerShell 3.0 possui ainda mais recursos remotos que o 2.0.

    
por 03.04.2012 / 19:04
4

Embora eu não tenha nenhuma solução gratuita e de código aberto para você, as soluções baseadas em agentes, como o NetIQ AppManager e o Microsoft SCCM, realmente se destacam nisso. O SCCM pode executar praticamente qualquer coisa que a máquina remota possa executar (VBS, Powershell, executáveis, etc.) O AppManager, por outro lado, é bom, mas está limitado a executar o VBS e o Basicscript. Mas tem ótimas opções de agendamento, e rodar um trabalho ad-hoc em uma máquina remota é um negócio de arrastar e soltar.

Btw, eu acho que essa questão meio que vai muito além da área "aberta para discussão" que os mods não gostam muito. encolher de ombros

    
por 03.04.2012 / 19:10
2

Eu usei o VNCScan para fazer esse tipo de coisa (entre outras coisas). Também é barato.

link

    
por 03.04.2012 / 18:59
-2

Dê uma olhada no Spiceworks é um excelente software de gerenciamento de infra-estrutura de TI com alguns scripts personalizados que podem funcionar tão bem quanto o Altiris.

    
por 27.04.2012 / 00:23