使用 AWS CLI 的 WorkSpaces 示例
以下代码示例演示了如何通过将 AWS Command Line Interface与 WorkSpaces 结合使用,来执行操作和实现常见场景。
操作是大型程序的代码摘录,必须在上下文中运行。您可以通过操作了解如何调用单个服务函数,还可以通过函数相关场景的上下文查看操作。
每个示例都包含一个指向完整源代码的链接,您可以从中找到有关如何在上下文中设置和运行代码的说明。
主题
操作
以下代码示例演示如何使用 create-tags
。
- AWS CLI
-
向 WorkSpace 中添加标签
以下
create-tags
示例将指定标签添加到指定的 WorkSpace 中。aws workspaces create-tags \ --resource-id
ws-dk1xzr417
\ --tagsKey=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-keysDepartment
此命令不生成任何输出。
有关更多信息,请参阅《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 注册目录。
-
有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DeregisterWorkspaceDirectory
。
-
以下代码示例演示如何使用 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 捆绑包和映像。
-
有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DescribeWorkspaceBundles
。
-
以下代码示例演示如何使用 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 目录。
-
有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DescribeWorkspaceDirectories
。
-
以下代码示例演示如何使用 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。
-
有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 DescribeWorkspacesConnectionStatus
。
-
以下代码示例演示如何使用 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-idwsb-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-propertiesEnableInternetAccess=true
此命令不生成任何输出。
有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的更新 WorkSpaces 的目录详细信息。
-
有关 API 详细信息,请参阅《 AWS CLI 命令参考》中的 ModifyWorkspaceCreationProperties
。
-
以下代码示例演示如何使用 modify-workspace-properties
。
- AWS CLI
-
修改 WorkSpace 的运行模式
以下
modify-workspace-properties
示例将指定 WorkSpace 的运行模式设置为AUTO_STOP
。aws workspaces modify-workspace-properties \ --workspace-id
ws-dk1xzr417
\ --workspace-propertiesRunningMode=AUTO_STOP
此命令不生成任何输出。
有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的修改 WorkSpace。
-
有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 ModifyWorkspaceProperties
。
-
以下代码示例演示如何使用 modify-workspace-state
。
- AWS CLI
-
修改 WorkSpace 的状态
以下
modify-workspace-state
示例将指定 WorkSpace 的状态设置为ADMIN_MAINTENANCE
。aws workspaces modify-workspace-state \ --workspace-id
ws-dk1xzr417
\ --workspace-stateADMIN_MAINTENANCE
此命令不生成任何输出。
有关更多信息,请参阅《Amazon WorkSpaces 管理指南》中的 WorkSpaces 维护。
-
有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 ModifyWorkspaceState
。
-
以下代码示例演示如何使用 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 注册目录。
-
有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 RegisterWorkspaceDirectory
。
-
以下代码示例演示如何使用 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。
-
有关 API 详细信息,请参阅《AWS CLI 命令参考》中的 TerminateWorkspaces
。
-