Powershell - Set-ClusteredScheduledTask - Erro “Função incorreta”.

2

Estou experimentando o Powershell para adicionar um ClusteredScheduledTask em um servidor em cluster (Win 2012 / R2)

O código de exemplo do Technet dá erro:

#canned exampled from http://technet.microsoft.com/en-us/library/jj649815.aspx
$Action01 = New-ScheduledTaskAction -Execute Notepad
$Action02 = New-ScheduledTaskAction -Execute Calc
Set-ClusteredScheduledTask -TaskName "Task03" -Action $Action01,$Action02

Erro:

Set-ClusteredScheduledTask : Incorrect function.

At I:\Scripts\TaskSchedulerSetupJobs\TestWebSampleCode.ps1:4 char:1
+ Set-ClusteredScheduledTask -TaskName "Task03" -Action $Action01,$Action02
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (PS_ClusteredScheduledTask:Root/Microsoft/...edScheduledTask) [Set-ClusteredScheduledTask], CimException
    + FullyQualifiedErrorId : HRESULT 0x80070001,Set-ClusteredScheduledTask

Adicionado: Como KrisFR apontou abaixo, eu realmente queria fazer um Register, não Set, mas ainda assim recebo o mesmo erro básico:

#canned exampled from http://technet.microsoft.com/en-us/library/jj649815.aspx
cls
$Trigger = New-ScheduledTaskTrigger -At 12:00 -Once 
$Action01 = New-ScheduledTaskAction -Execute Notepad
Register-ClusteredScheduledTask -TaskName "Task03" -Trigger $Trigger -Action $Action01

Erro:

Register-ClusteredScheduledTask : The parameter is incorrect.

At I:\Scripts\TaskSchedulerSetupJobs\TestWebSampleCode.ps1:5 char:1
+ Register-ClusteredScheduledTask -TaskName "Task03" -Trigger $Trigger -Action $Ac ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (PS_ClusteredScheduledTask:Root/Microsoft/...edScheduledTask) [Register-ClusteredScheduledTask], CimExce 
   ption
    + FullyQualifiedErrorId : HRESULT 0x80070057,Register-ClusteredScheduledTask

Atualização 2: com base nas respostas e comentários abaixo, estabelecemos:

1) adicionando -TaskType anynode altera o erro de "Parâmetro incorreto" para "Função incorreta" quando executado sob PowerGUI, e

2) quando eu abro ISE 32 bit ou 64 bit com "Run as Administrator" - eu recebo "função incorreta"

3) quando eu abro o ISE 32 bit ou 64 bit sem "Run as Administrator" - recebo

4) Em algum momento hoje cedo, eu estava recebendo "Acesso negado" e / ou "Permissão negada", acho que é quando eu estava abrindo PowerGUI sem "Executar como Admin".

    
por NealWalters 22.08.2014 / 21:04

3 respostas

1

Trabalhamos com a Microsoft para resolver isso. Nosso problema era que o administrador tinha definido "Task Scheduler" como parte do nó de cluster "BizTalk2013" (OwnerGroup como visto no cmdlet get-ClusterResource). Nós excluímos esse ClusterResource. No nosso caso, "BizTalk2013" foi nosso "OwnerGroup", que aparentemente precisa ser "Task Scheduler".

Acontece que, se o nosso administrador não tivesse feito nada, a execução do cmdlet Register-ClusteredScheduledTask teria funcionado e adicionado o "Agendador de Tarefas" em um nó chamado "Agendador de Tarefas". Eu estou tentando encontrar o blog que ele seguiu na configuração do jeito que ele fez.

    
por 16.09.2014 / 15:30
3

Você está tentando atualizar uma tarefa de cluster já registrada ou registrar uma nova tarefa de cluster?

De Blog do MSDN :

Set-ClusteredScheduledTask : Update an already registered cluster task.

Register-ClusteredScheduledTask : Register a cluster task.

Acho que você está procurando Register-ClusteredScheduledTask .

    
por 22.08.2014 / 21:45
1

Você precisa adicionar o parâmetro -TaskType e executá-lo como administrador:

$trigger = New-ScheduledTaskTrigger -at 12:00 -Once
$action = New-ScheduledTaskAction -Execute "notepad"
Register-ClusteredScheduledTask -Action $action -TaskName "clusteredtasktest" -Trigger $trigger -TaskType anynode

    
por 23.08.2014 / 08:31