CreateSessions - NICE DCV 会话管理器
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

CreateSessions

创建具有指定详细信息的新 NICE DCV 会话。

请求参数

Name

会话的名称。

类型: 字符串

:必需 是

Owner

会话所有者的名称。这必须是目标 NICE DCV 服务器上现有用户的名称。

类型: 字符串

:必需 是

Type

会话类型。有关会话类型的更多信息,请参阅NICE DCV 会议简介中的NICE DCV 管理员指南

有效值:控制台 | 虚拟

类型: 字符串

:必需 是

InitFile

在 Linux NICE DCV 服务器上支持虚拟会话。Windows 和 Linux NICE DCV 服务器上不支持控制台会话访问。NICE DCV 服务器上用于在创建会话时初始化会话时运行的自定义脚本的路径。文件路径相对于为agent.init_folder代理配置参数。如果文件位于指定的 init 目录中,则仅指定文件名。如果文件不在指定的 init 目录中,请指定相对路径。有关详细信息,请参阅。代理配置文件中的NICE DCV 会话管理器管理员指南

类型: 字符串

:必需 否

MaxConcurrents

最大并行 NICE DCV 客户端数。

类型: 整数

:必需 否

DcvGlEnabled

指示虚拟会话是否配置为使用基于硬件的 OpenGL。仅支持虚拟会话。Windows NICE DCV 服务器不支持此参数。

有效值:true | false

类型: Boolean

:必需 否

PermissionsFile

权限文件的 Base64 编码内容。如果省略,则默认为服务器默认值。有关更多信息,请参阅 。配置 NICE DCV 授权中的NICE DCV 管理员指南

类型: 字符串

:必需 否

EnqueueRequest

指示如果无法立即执行请求,是否对请求进行排队。

类型: Boolean

默认值:false

:必需 否

AutorunFile

Windows NICE DCV 服务器上支持控制台会话和在 Linux NICE DCV 服务器上支持虚拟会话。Linux NICE DCV 服务器上不支持控制台会话使用。

主机服务器上要在会话内运行的文件的路径。文件路径相对于为agent.autorun_folder代理配置参数。如果文件位于指定的自动运行目录中,则仅指定文件名。如果文件不在指定的自动运行目录中,请指定相对路径。有关更多信息,请参阅 。代理配置文件中的NICE DCV 会话管理器管理员指南

该文件代表指定的所有者。指定的所有者必须具有在服务器上运行文件的权限。在 Windows NICE DCV 服务器上,当所有者登录到会话时运行该文件。在 Linux NICE DCV 服务器上,在创建会话时运行文件。

类型: 字符串

:必需 否

AutorunFileArguments

在 Linux NICE DCV 服务器上支持虚拟会话。Windows 和 Linux NICE DCV 服务器上不支持将其在 Windows 和 Linux NICE DCV 服务器上。传递到的命令行参数自动取消文件在会话内执行时。参数按照它们出现在给定数组中的顺序传递。可以配置允许的最大参数数和每个参数的最大允许长度。有关更多信息,请参阅 。代理配置文件中的NICE DCV 会话管理器管理员指南

类型: 字符串数组

:必需 否

DisableRetryOnFailure

指示由于任何原因在 NICE DCV 主机上失败后,是否不重试创建会话请求。有关创建会话重试机制的更多信息,请参阅代理配置文件中的NICE DCV 会话管理器管理员指南

类型: Boolean

默认值:false

:必需 否

Requirements

为了放置会话,服务器必须满足的要求。这些要求可以包括服务器标签和/或服务器属性,服务器标签和服务器属性都可以通过调用DescribeServersAPI。

要求条件表达式:

  • a ! = b如果为 truea不等于b

  • a = b如果为 truea等于b

  • a > b如果为 truea大于b

  • a >= b如果为 truea大于或等于b

  • a < b如果为 truea小于b

  • a <= b如果为 truea小于或等于b

  • a = b如果为 truea包含字符串b

要求布尔运算符:

  • a b如果为 trueabis true

  • a 或者 b如果为 truea或者bis true

  • a如果为 trueais false

标签键必须以tag:,则服务器属性必须以server:。要求表达式支持括号()

要求示例:

  • tag:color = 'pink' and (server:Host.Os.Family = 'windows' or tag:color := 'red')

  • "server:Host.Aws.Ec2InstanceType := 't2' and server:Host.CpuInfo.NumberOfCpus >= 2"

可以使用指数表示法指定数值,例如:"server:Host.Memory.TotalBytes > 1024E6"

支持的服务器属性包括:

  • Id

  • Hostname

  • Version

  • SessionManagerAgentVersion

  • Host.Os.BuildNumber

  • Host.Os.Family

  • Host.Os.KernelVersion

  • Host.Os.Name

  • Host.Os.Version

  • Host.Memory.TotalBytes

  • Host.Memory.UsedBytes

  • Host.Swap.TotalBytes

  • Host.Swap.UsedBytes

  • Host.CpuLoadAverage.OneMinute

  • Host.CpuLoadAverage.FiveMinutes

  • Host.CpuLoadAverage.FifteenMinutes

  • Host.Aws.Ec2InstanceId

  • Host.Aws.Ec2InstanceType

  • Host.Aws.Region

  • Host.Aws.Ec2ImageId

  • Host.CpuInfo.Architecture

  • Host.CpuInfo.ModelName

  • Host.CpuInfo.NumberOfCpus

  • Host.CpuInfo.PhysicalCoresPerCpu

  • Host.CpuInfo.Vendor

类型: 字符串

:必需 否

StorageRoot

指定用于会话存储的文件夹的路径。有关 NICE DCV 会话存储的更多信息,请参阅启用会话存储中的NICE DCV 管理员指南

类型: 字符串

:必需 否

响应参数

Id

会话的唯一 ID。

Name

会话名称。

Owner

会话所有者。

Type

会话的类型。

State

会话的状态。如果请求成功完成,会话将进入CREATING状态。

Example

Python

Request

以下示例创建三个会话。

from swagger_client.models.create_session_request_data import CreateSessionRequestData def get_sessions_api(): api_instance = swagger_client.SessionsApi(swagger_client.ApiClient(get_client_configuration())) set_request_headers(api_instance.api_client) return api_instance def create_sessions(sessions_to_create): create_sessions_request = list() for name, owner, session_type, init_file_path, autorun_file, autorun_file_arguments, max_concurrent_clients,\ dcv_gl_enabled, permissions_file, requirements, storage_root in sessions_to_create: a_request = CreateSessionRequestData( name=name, owner=owner, type=session_type, init_file_path=init_file_path, autorun_file=autorun_file, autorun_file_arguments=autorun_file_arguments, max_concurrent_clients=max_concurrent_clients, dcv_gl_enabled=dcv_gl_enabled, permissions_file=permissions_file, requirements=requirements, storage_root=storage_root) create_sessions_request.append(a_request) api_instance = get_sessions_api() print('Create Sessions Request:', create_sessions_request) api_response = api_instance.create_sessions(body=create_sessions_request) print('Create Sessions Response:', api_response) def main(): create_sessions([ ('session1', 'user1', 'CONSOLE', None, None, None, 1, None, '/dcv/permissions.file', "tag:os = 'windows' and server:Host.Memory.TotalBytes > 1024", "/storage/root"), ('session2', 'user1', 'VIRTUAL', None, 'myapp.sh', None, 1, False, None, "tag:os = 'linux'", None), ('session3', 'user1', 'VIRTUAL', '/dcv/script.sh', 'myapp.sh', ['argument1', 'argument2'], 1, False, None, "tag:os = 'linux'", None), ])

Response

下面是示例输出。

{ "RequestId": "e32d0b83-25f7-41e7-8c8b-e89326ecc87f", "SuccessfulList": [ { "Id": "78b45deb-1163-46b1-879b-7d8fcbe9d9d6", "Name": "session1", "Owner": "user1", "Type": "CONSOLE", "State": "CREATING" }, { "Id": " a0c743c4-9ff7-43ce-b13f-0c4d55a268dd", "Name": "session2", "Owner": "user1", "Type": "VIRTUAL", "State": "CREATING" }, { "Id": " 10311636-df90-4cd1-bcf7-474e9675b7cd", "Name": "session3", "Owner": "user1", "Type": "VIRTUAL", "State": "CREATING" } ], "UnsuccessfulList": [ ] }