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


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 не влияет на конфигурацию сеанса.

Дополнительные сведения о параметрах сеанса см. в разделе 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 на локальном компьютере. Для указания конфигурации ITTasks в команде используется свойство ConfigurationName. Команда сохраняет сеанс в переменной $s. Обратите внимание, что команда не использует параметр SessionOption для New-PSSession задания пользовательского времени ожидания простоя для сеанса. В этом случае значение времени ожидания простоя, заданное в параметре сеанса, будет иметь приоритет над временем ожидания простоя в конфигурации сеанса.

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

Параметры

-IdleTimeoutSec

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

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

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

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

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

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxConcurrentCommandsPerSession

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

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

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxConcurrentUsers

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

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxIdleTimeoutSec

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

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

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

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxMemoryPerSessionMB

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

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

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxProcessesPerSession

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

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

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxSessions

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

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

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MaxSessionsPerUser

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

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

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

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-OutputBufferingMode

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

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

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

Type:Nullable<T>[OutputBufferingMode]
Accepted values:None, Drop, Block
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ProcessIdleTimeoutSec

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

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

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

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

None

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

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

WSManConfigurationOption

Примечания

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