Я пытаюсь использовать Invoke-Command
для запуска нескольких запросов на удаленном сервере в качестве задания PowerShell. Но я мог видеть, что на одном сервере он не может запускать более 25 экземпляров заданий. Любая идея, как я могу увеличить лимит? Я попытался установить максимальную оболочку на пользователя на 50, но никакой помощи.Расширение сеанса удаленного сеанса
Вот код:
foreach ($com in $hostcomp) {
Invoke-Command -ComputerName $com -ScriptBlock {
cd WSMan:\localhost\Shell
dir
Set-Item .\MaxShellsPerUser 1000
dir
Set-Item .\MaxProcessesPerShell 1000
dir
}
Get-VM -ComputerName $com | Select -ExpandProperty name |
Out-File c:\vmfile.txt
$vm = Get-Content "c:\vmfile.txt"
foreach ($v in $vm) {
Write-Host $v " on $com is being SHUTDOWN..................Please Wait!"
Invoke-Command -ComputerName $com -ScriptBlock {
param($v)
Stop-VM -name $v -Force
} -ArgumentList $v -AsJob -JobName "ShutDownVMsss"
}
}
После 25 рабочих мест на каждом удаленном сервере он терпит неудачу с ошибкой максимальное число разрешенных сессии для пользователей превысило.
Включите пример кода, поэтому нам не нужно задавать вопросы, например, если задания выполняются локально или удаленно. –
Добавил код. –
Просто для подтверждения, это разные серверы, на которых вы работаете? Поскольку с настройками по умолчанию я могу запустить 40 вызовов на двух разных серверах без ошибок, если ни один из них не превышает 25 –