使用 AWS CLI 的 WorkSpaces 示例 - AWS Command Line Interface

使用 AWS CLI 的 WorkSpaces 示例

以下代码示例演示了如何通过将 AWS Command Line Interface与 WorkSpaces 结合使用,来执行操作和实现常见场景。

操作是大型程序的代码摘录,必须在上下文中运行。您可以通过操作了解如何调用单个服务函数,还可以通过函数相关场景的上下文查看操作。

每个示例都包含一个指向完整源代码的链接,您可以从中找到有关如何在上下文中设置和运行代码的说明。

主题

操作

以下代码示例演示如何使用 create-tags

AWS CLI

向 WorkSpace 中添加标签

以下 create-tags 示例将指定标签添加到指定的 WorkSpace 中。

aws workspaces create-tags \ --resource-id ws-dk1xzr417 \ --tags Key=Department,Value=Finance

此命令不生成任何输出。

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的标记 WorkSpaces 资源

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 CreateTags

以下代码示例演示如何使用 create-workspaces

AWS CLI

示例 1:创建 AlwaysOn WorkSpace

以下 create-workspaces 示例使用指定目录和捆绑包为指定用户创建 AlwaysOn WorkSpace。

aws workspaces create-workspaces \ --workspaces DirectoryId=d-926722edaf,UserName=Mateo,BundleId=wsb-0zsvgp8fc

输出:

{ "FailedRequests": [], "PendingRequests": [ { "WorkspaceId": "ws-kcqms853t", "DirectoryId": "d-926722edaf", "UserName": "Mateo", "State": "PENDING", "BundleId": "wsb-0zsvgp8fc" } ] }

示例 2:创建 AutoStop WorkSpace

以下 create-workspaces 示例使用指定目录和捆绑包为指定用户创建 AutoStop WorkSpace。

aws workspaces create-workspaces \ --workspaces DirectoryId=d-926722edaf,UserName=Mary,BundleId=wsb-0zsvgp8fc,WorkspaceProperties={RunningMode=AUTO_STOP}

输出:

{ "FailedRequests": [], "PendingRequests": [ { "WorkspaceId": "ws-dk1xzr417", "DirectoryId": "d-926722edaf", "UserName": "Mary", "State": "PENDING", "BundleId": "wsb-0zsvgp8fc" } ] }

示例 3:创建用户解耦的 WorkSpace

以下 create-workspaces 示例通过将用户名设置为 [UNDEFINED],以及指定 WorkSpace 名称、目录 ID 和捆绑包 ID 来创建用户解耦的 WorkSpace。

aws workspaces create-workspaces \ --workspaces DirectoryId=d-926722edaf,UserName='"[UNDEFINED]"',WorkspaceName=MaryWorkspace1,BundleId=wsb-0zsvgp8fc,WorkspaceProperties={RunningMode=ALWAYS_ON}

输出:

{ "FailedRequests": [], "PendingRequests": [ { "WorkspaceId": "ws-abcd1234", "DirectoryId": "d-926722edaf", "UserName": "[UNDEFINED]", "State": "PENDING", "BundleId": "wsb-0zsvgp8fc", "WorkspaceName": "MaryWorkspace1" } ] }

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的启动虚拟桌面

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 CreateWorkspaces

以下代码示例演示如何使用 delete-tags

AWS CLI

从 WorkSpace 中删除标签

以下 delete-tags 示例从指定 WorkSpace 中删除指定标签。

aws workspaces delete-tags \ --resource-id ws-dk1xzr417 \ --tag-keys Department

此命令不生成任何输出。

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的标记 WorkSpaces 资源

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DeleteTags

以下代码示例演示如何使用 deregister-workspace-directory

AWS CLI

取消注册目录

以下 deregister-workspace-directory 示例取消注册指定目录。

aws workspaces deregister-workspace-directory \ --directory-id d-926722edaf

此命令不生成任何输出。

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的向 WorkSpaces 注册目录

以下代码示例演示如何使用 describe-tags

AWS CLI

描述 WorkSpace 标签

以下 describe-tags 示例描述指定 WorkSpace 的标签。

aws workspaces describe-tags \ --resource-id ws-dk1xzr417

输出:

{ "TagList": [ { "Key": "Department", "Value": "Finance" } ] }

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的标记 WorkSpaces 资源

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DescribeTags

以下代码示例演示如何使用 describe-workspace-bundles

AWS CLI

列出 Amazon 提供的捆绑包

以下 describe-workspace-bundles 示例列出由 Amazon 提供的捆绑包的名称和 ID,采用表格格式并按名称排序。

aws workspaces describe-workspace-bundles \ --owner AMAZON \ --query "Bundles[*].[Name, BundleId]"

输出:

[ [ "Standard with Amazon Linux 2", "wsb-clj85qzj1" ], [ "Performance with Windows 10 (Server 2016 based)", "wsb-gm4d5tx2v" ], [ "PowerPro with Windows 7", "wsb-1pzkp0bx4" ], [ "Power with Amazon Linux 2", "wsb-2bs6k5lgn" ], [ "Graphics with Windows 10 (Server 2019 based)", "wsb-03gyjnfyy" ], ... ]

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的 WorkSpaces 捆绑包和映像

以下代码示例演示如何使用 describe-workspace-directories

AWS CLI

描述已注册的目录

以下 describe-workspace-directories 示例描述指定的注册目录。

aws workspaces describe-workspace-directories \ --directory-ids d-926722edaf

输出:

{ "Directories": [ { "DirectoryId": "d-926722edaf", "Alias": "d-926722edaf", "DirectoryName": "example.com", "RegistrationCode": "WSpdx+9RJ8JT", "SubnetIds": [ "subnet-9d19c4c6", "subnet-500d5819" ], "DnsIpAddresses": [ "172.16.1.140", "172.16.0.30" ], "CustomerUserName": "Administrator", "IamRoleId": "arn:aws:iam::123456789012:role/workspaces_DefaultRole", "DirectoryType": "SIMPLE_AD", "WorkspaceSecurityGroupId": "sg-0d89e927e5645d7c5", "State": "REGISTERED", "WorkspaceCreationProperties": { "EnableWorkDocs": false, "EnableInternetAccess": false, "UserEnabledAsLocalAdministrator": true, "EnableMaintenanceMode": true }, "WorkspaceAccessProperties": { "DeviceTypeWindows": "ALLOW", "DeviceTypeOsx": "ALLOW", "DeviceTypeWeb": "DENY", "DeviceTypeIos": "ALLOW", "DeviceTypeAndroid": "ALLOW", "DeviceTypeChromeOs": "ALLOW", "DeviceTypeZeroClient": "ALLOW", "DeviceTypeLinux": "DENY" }, "Tenancy": "SHARED", "SelfservicePermissions": { "RestartWorkspace": "ENABLED", "IncreaseVolumeSize": "DISABLED", "ChangeComputeType": "DISABLED", "SwitchRunningMode": "DISABLED", "RebuildWorkspace": "DISABLED" } } ] }

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的管理 WorkSpaces 目录

以下代码示例演示如何使用 describe-workspaces-connection-status

AWS CLI

描述 WorkSpace 的连接状态

以下 describe-workspaces-connection-status 示例描述指定 WorkSpace 的连接状态。

aws workspaces describe-workspaces-connection-status \ --workspace-ids ws-dk1xzr417

输出:

{ "WorkspacesConnectionStatus": [ { "WorkspaceId": "ws-dk1xzr417", "ConnectionState": "CONNECTED", "ConnectionStateCheckTimestamp": 1662526214.744 } ] }

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的管理您的 WorkSpaces

以下代码示例演示如何使用 describe-workspaces

AWS CLI

描述 WorkSpace

以下 describe-workspaces 示例描述指定的 WorkSpace。

aws workspaces describe-workspaces \ --workspace-ids ws-dk1xzr417

输出:

{ "Workspaces": [ { "WorkspaceId": "ws-dk1xzr417", "DirectoryId": "d-926722edaf", "UserName": "Mary", "IpAddress": "172.16.0.175", "State": "STOPPED", "BundleId": "wsb-0zsvgp8fc", "SubnetId": "subnet-500d5819", "ComputerName": "WSAMZN-RBSLTTD9", "WorkspaceProperties": { "RunningMode": "AUTO_STOP", "RunningModeAutoStopTimeoutInMinutes": 60, "RootVolumeSizeGib": 80, "UserVolumeSizeGib": 10, "ComputeTypeName": "VALUE" }, "ModificationStates": [] } ] }

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的管理您的 WorkSpaces

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DescribeWorkspaces

以下代码示例演示如何使用 migrate-workspace

AWS CLI

迁移 WorkSpace

以下 migrate-workspace 示例将指定 WorkSpace 迁移到指定的捆绑包。

aws workspaces migrate-workspace \ --source-workspace-id ws-dk1xzr417 \ --bundle-id wsb-j4dky1gs4

输出:

{ "SourceWorkspaceId": "ws-dk1xzr417", "TargetWorkspaceId": "ws-x5h1lbkp5" }

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的迁移 WorkSpace

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 MigrateWorkspace

以下代码示例演示如何使用 modify-workspace-creation-properties

AWS CLI

修改目录 WorkSpace 创建属性

以下 modify-workspace-creation-properties 示例为指定目录启用 EnableInternetAccess 属性。这样可以针对为目录创建的 WorkSpaces 自动分配公共 IP 地址。

aws workspaces modify-workspace-creation-properties \ --resource-id d-926722edaf \ --workspace-creation-properties EnableInternetAccess=true

此命令不生成任何输出。

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的更新 WorkSpaces 的目录详细信息

以下代码示例演示如何使用 modify-workspace-properties

AWS CLI

修改 WorkSpace 的运行模式

以下 modify-workspace-properties 示例将指定 WorkSpace 的运行模式设置为 AUTO_STOP

aws workspaces modify-workspace-properties \ --workspace-id ws-dk1xzr417 \ --workspace-properties RunningMode=AUTO_STOP

此命令不生成任何输出。

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的修改 WorkSpace

以下代码示例演示如何使用 modify-workspace-state

AWS CLI

修改 WorkSpace 的状态

以下 modify-workspace-state 示例将指定 WorkSpace 的状态设置为 ADMIN_MAINTENANCE

aws workspaces modify-workspace-state \ --workspace-id ws-dk1xzr417 \ --workspace-state ADMIN_MAINTENANCE

此命令不生成任何输出。

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的 WorkSpaces 维护

以下代码示例演示如何使用 reboot-workspaces

AWS CLI

重启 WorkSpace

以下 reboot-workspaces 示例重启指定的 WorkSpace。

aws workspaces reboot-workspaces \ --reboot-workspace-requests ws-dk1xzr417

输出:

{ "FailedRequests": [] }

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的重启 WorkSpace

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 RebootWorkspaces

以下代码示例演示如何使用 rebuild-workspaces

AWS CLI

重建 WorkSpace

以下 rebuild-workspaces 示例重建指定的 WorkSpace。

aws workspaces rebuild-workspaces \ --rebuild-workspace-requests ws-dk1xzr417

输出:

{ "FailedRequests": [] }

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的重建 WorkSpace

  • 有关 API 详细信息,请参阅《命令参考》中的 RebuildWorkspaces。AWS CLI

以下代码示例演示如何使用 register-workspace-directory

AWS CLI

注册目录

以下 register-workspace-directory 示例注册指定目录,以将其与 Amazon WorkSpaces 一起使用。

aws workspaces register-workspace-directory \ --directory-id d-926722edaf \ --no-enable-work-docs

此命令不生成任何输出。

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的向 WorkSpaces 注册目录

以下代码示例演示如何使用 restore-workspace

AWS CLI

还原 WorkSpace

以下 restore-workspace 示例还原指定的 WorkSpace。

aws workspaces restore-workspace \ --workspace-id ws-dk1xzr417

此命令不生成任何输出。

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的还原 WorkSpace

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 RestoreWorkspace

以下代码示例演示如何使用 start-workspaces

AWS CLI

启动 AutoStop WorkSpace

以下 start-workspaces 示例启动指定的 WorkSpace。WorkSpace 的运行模式必须为 AutoStop

aws workspaces start-workspaces \ --start-workspace-requests WorkspaceId=ws-dk1xzr417

输出:

{ "FailedRequests": [] }

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的停止和启动 AutoStop WorkSpace

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 StartWorkspaces

以下代码示例演示如何使用 stop-workspaces

AWS CLI

停止 AutoStop WorkSpace

以下 stop-workspaces 示例停止指定的 WorkSpace。WorkSpace 的运行模式必须为 AutoStop

aws workspaces stop-workspaces \ --stop-workspace-requests WorkspaceId=ws-dk1xzr417

输出:

{ "FailedRequests": [] }

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的停止和启动 AutoStop WorkSpace

  • 有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 StopWorkspaces

以下代码示例演示如何使用 terminate-workspaces

AWS CLI

终止 WorkSpace

以下 terminate-workspaces 示例终止指定的 Workspace。

aws workspaces terminate-workspaces \ --terminate-workspace-requests ws-dk1xzr417

输出:

{ "FailedRequests": [] }

有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的删除 WorkSpace