Поделиться через


New-PSTransportOption

Создает объект, содержащий дополнительные параметры конфигурации сеанса.

Синтаксис

New-PSTransportOption
   [-MaxIdleTimeoutSec <Int32>]
   [-ProcessIdleTimeoutSec <Int32>]
   [-MaxSessions <Int32>]
   [-MaxConcurrentCommandsPerSession <Int32>]
   [-MaxSessionsPerUser <Int32>]
   [-MaxMemoryPerSessionMB <Int32>]
   [-MaxProcessesPerSession <Int32>]
   [-MaxConcurrentUsers <Int32>]
   [-IdleTimeoutSec <Int32>]
   [-OutputBufferingMode <OutputBufferingMode>]
   [<CommonParameters>]

Описание

Командлет New-PSTransportOption создает объект, содержащий параметры транспорта для конфигураций сеансов. Объект можно использовать в качестве значения параметра TransportOption командлетов, создающих или изменяющих конфигурацию сеанса, таких как командлеты Register-PSSessionConfiguration и Set-PSSessionConfiguration.

Вы также можете изменить настройки транспортных опций, отредактировав значения свойств конфигурации сеанса на диске WSMan:. Дополнительные сведения см. в разделе "Поставщик WSMan".

Параметры конфигурации сеанса представляют собой значения сеансов, установленные на стороне сервера или на принимающей стороне удаленного подключения. Клиентская сторона, или отправляющая сторона подключения, может задать значения параметров сеанса при его создании, при отключении клиента от сеанса или при повторном подключении к нему. Если не указано иное, если значение параметров конфликтует, значения на стороне клиента имеют приоритет. Однако клиентские значения не могут нарушать максимальные значения и квоты, заданные в конфигурации сеанса.

Без параметров New-PSTransportOption создает объект параметра транспорта, имеющий значения NULL для всех параметров. Если не указан параметр, объект имеет значение NULL для свойства, представляющего параметр. Значение NULL не влияет на конфигурацию сеанса.

Дополнительные сведения о параметрах сеанса см. в New-PSSessionOption. Дополнительные сведения о конфигурациях сеансов см. в about_Session_Configurations.

Этот командлет был введён в Windows PowerShell 3.0.

Примеры

Пример 1. Создание параметра транспорта по умолчанию

New-PSTransportOption

ProcessIdleTimeoutSec           :
MaxIdleTimeoutSec               :
MaxSessions                     :
MaxConcurrentCommandsPerSession :
MaxSessionsPerUser              :
MaxMemoryPerSessionMB           :
MaxProcessesPerSession          :
MaxConcurrentUsers              :
IdleTimeoutSec                  :
OutputBufferingMode             :

Эта команда выполняет New-PSTransportOption без параметров. В выходных данных показано, что командлет создает объект параметра транспорта, имеющий значения NULL для всех свойств.

Пример 2. Получение параметров конфигурации сеанса

В этом примере показано, как использовать объект параметров транспорта для задания параметров конфигурации сеанса.

$t = New-PSTransportOption -MaxSessions 40
Register-PSSessionConfiguration -Name ITTasks -TransportOption $t
Get-PSSessionConfiguration -Name ITTasks | Format-List -Property *

Architecture                  : 64
Filename                      : %windir%\system32\pwrshplugin.dll
ResourceUri                   : http://schemas.microsoft.com/powershell/ITTasks
MaxConcurrentCommandsPerShell : 1000
UseSharedProcess              : false
ProcessIdleTimeoutSec         : 0
xmlns                         : http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
MaxConcurrentUsers            : 5
lang                          : en-US
SupportsOptions               : true
ExactMatch                    : true
RunAsUser                     :
IdleTimeoutms                 : 7200000
PSVersion                     : 3.0
OutputBufferingMode           : Block
AutoRestart                   : false
MaxShells                     : 40
MaxMemoryPerShellMB           : 1024
MaxIdleTimeoutms              : 43200000
SDKVersion                    : 2
Name                          : ITTasks
XmlRenderingType              : text
Capability                    : {Shell}
RunAsPassword                 :
MaxProcessesPerShell          : 15
Enabled                       : True
MaxShellsPerUser              : 25
Permission                    :

Первая команда использует командлет New-PSTransportOption для создания объекта параметров транспорта, который сохраняется в переменной $t. Команда использует параметр maxSessions, чтобы увеличить максимальное число сеансов до 40.

Вторая команда использует командлет Register-PSSessionConfiguration для создания конфигурации сеанса ITTasks. Команда использует параметр TransportOption, чтобы указать объект параметров транспорта в переменной $t.

Третья команда использует командлет Get-PSSessionConfiguration для получения конфигураций сеансов ITTasks и командлета Format-List для отображения всех свойств объекта конфигурации сеанса в списке. Выходные данные показывают, что значение свойства MaxShells конфигурации сеанса равно 40.

Пример 3. Настройка параметра транспорта

Эта команда показывает, какое влияние оказывает установка параметра транспорта в конфигурации сеанса на сеансы, которые её используют.

$t = New-PSTransportOption -IdleTimeoutSec 3600
Set-PSSessionConfiguration -Name ITTasks -TransportOption $t
$s = New-PSSession -Name MyITTasks -ConfigurationName ITTasks
$s | Format-List -Property *

State                  : Opened
IdleTimeout            : 3600000
OutputBufferingMode    : Block
ComputerName           : localhost
ConfigurationName      : ITTasks
InstanceId             : 4110c3f5-68ea-40fa-9bbf-04a433dbb02d
Id                     : 1
Name                   : MyITTasks
Availability           : Available
ApplicationPrivateData : {PSVersionTable}
Runspace               : System.Management.Automation.RemoteRunspace

Первая команда использует командлет New-PSTransportOption для создания объекта транспортного параметра. Команда использует параметр IdleTimeoutSec, чтобы задать значение свойства IdleTimeoutSec объекта на один час (3600 секунд). Команда сохраняет объект транспортных объектов в переменной $t.

Вторая команда использует командлет Set-PSSessionConfiguration для изменения параметров транспортировки в конфигурации сеанса ITTasks. Команда использует параметр TransportOption, чтобы указать объект параметров транспорта в переменной $t.

Третья команда использует командлет New-PSSession для создания сессии MyITTasks на локальном компьютере. Команда использует свойство ConfigurationName для указания конфигурации сеанса ITTasks. Команда сохраняет сеанс в переменной $s. Обратите внимание, что команда не использует параметр из New-PSSession для задания пользовательского времени ожидания простоя сеанса. Если это произошло, значение времени ожидания простоя, заданное в параметре сеанса, будет иметь приоритет над временем ожидания простоя, заданного в конфигурации сеанса.

Четвертая команда использует командлет Format-List для отображения всех свойств сеанса в переменной $s в списке. Выходные данные показывают, что сеанс имеет время простоя в течение одного часа (360 000 миллисекунда).

Параметры

-IdleTimeoutSec

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

Значение времени ожидания простоя имеет важное значение, когда пользователь намерен отключить и повторно подключиться к сеансу. Пользователь может повторно подключиться только в том случае, если сеанс не истек.

Параметр IdleTimeoutSec соответствует свойству IdleTimeoutMs конфигурации сеанса.

Введите значение в секундах. Значение по умолчанию — 7200 (2 часа). Минимальное значение — 60 (1 минута). Максимальное значение свойства IdleTimeout объектов Shell в конфигурации WSMan (WSMan:\\\<ComputerName\>\Shell\IdleTimeout). Значение по умолчанию — 7200000 миллисекунда (2 часа).

Если значение времени ожидания простоя задано в параметрах сеанса и в конфигурации сеанса, значение, заданное в параметрах сеанса, имеет приоритет, но не может превышать значение свойства MaxIdleTimeoutMs конфигурации сеанса. Чтобы задать значение свойства MaxIdleTimeoutMs, используйте параметр MaxIdleTimeoutSec.

Тип:Nullable<T>[Int32]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-MaxConcurrentCommandsPerSession

Ограничивает количество команд, которые могут выполняться одновременно в каждом сеансе до указанного значения. Значение по умолчанию — 1000.

Параметр maxConcurrentCommandsPerSession соответствует свойству MaxConcurrentCommandsPerShell конфигурации сеанса.

Тип:Nullable<T>[Int32]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-MaxConcurrentUsers

Ограничивает число пользователей, которые могут выполнять команды одновременно в каждом сеансе, до указанного значения. Значение по умолчанию — 5.

Тип:Nullable<T>[Int32]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-MaxIdleTimeoutSec

Ограничивает время ожидания простоя для каждого сеанса указанным значением. Значение по умолчанию — [Int]::MaxValue (~25 дней).

Значение времени ожидания простоя имеет важное значение, когда пользователь намерен отключить и повторно подключиться к сеансу. Пользователь может повторно подключиться только в том случае, если сеанс не истек.

Параметр MaxIdleTimeoutSec соответствует свойству MaxIdleTimeoutMs конфигурации сеанса.

Тип:Nullable<T>[Int32]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-MaxMemoryPerSessionMB

Ограничивает память, используемую каждым сеансом, указанным значением. Введите значение в мегабайтах. Значение по умолчанию — 1024 мегабайта (1 ГБ).

Параметр MaxMemoryPerSessionMB соответствует свойству MaxMemoryPerShellMB конфигурации сеанса.

Тип:Nullable<T>[Int32]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-MaxProcessesPerSession

Ограничивает количество процессов, выполняемых в каждом сеансе, указанным значением. Значение по умолчанию — 15.

Параметр MaxProcessesPerSession соответствует свойству MaxProcessesPerShell конфигурации сеанса.

Тип:Nullable<T>[Int32]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-MaxSessions

Ограничивает количество сеансов, использующих конфигурацию сеанса. Значение по умолчанию — 25.

Параметр MaxSessions соответствует свойству MaxShells конфигурации сеанса.

Тип:Nullable<T>[Int32]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-MaxSessionsPerUser

Ограничивает количество сеансов, использующих конфигурацию сеанса и выполняющихся с учетными данными заданного пользователя, указанным значением. Значение по умолчанию — 25.

При указании этого значения следует учитывать, что многие пользователи могут использовать учетные данные запуска от имени пользователя.

Параметр MaxSessionsPerUser соответствует свойству MaxShellsPerUser конфигурации сеанса.

Тип:Nullable<T>[Int32]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-OutputBufferingMode

Определяет, как результаты команды обрабатываются в прерванных сеансах, когда выходной буфер становится полным. Допустимые значения для этого параметра:

  • Block Если выходной буфер заполнен, выполнение приостанавливается до очистки буфера.
  • Drop Если выходной буфер заполнен, выполнение продолжается. При сохранении новых выходных данных старые выходные данные удаляются.
  • None Режим буферизации выходных данных не указан.

Значение по умолчанию свойства OutputBufferingMode сеансов — Block.

Тип:Nullable<T>[OutputBufferingMode]
Допустимые значения:None, Drop, Block
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-ProcessIdleTimeoutSec

Ограничивает время ожидания для каждого процесса узла указанным значением. Значение по умолчанию 0 означает, что для процесса нет времени ожидания.

Другие конфигурации сеансов имеют значения времени ожидания для каждого процесса. Например, конфигурация сеанса Microsoft.PowerShell.Workflow имеет время ожидания для каждого процесса в 28800 секунд (8 часов).

Тип:Nullable<T>[Int32]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

Входные данные

None

Невозможно передать объекты в этот командлет.

Выходные данные

WSManConfigurationOption

Примечания

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