Amazon Elastic Compute Cloud
Windows 实例用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

使用专用主机

要使用专用主机,首先在您的账户中分配要使用的主机。然后通过为实例指定一个主机 租赁,在主机上启动实例。您必须选择在其中启动实例的特定主机,或者您可以允许实例在任何已启用自动置放且匹配其实例类型的主机上启动。当某个实例停止并重新启动时,主机关联 设置将确定该实例是在同一主机上还是在另一个主机上重新启动。

如果您不再需要某个按需主机,则可以停止在该主机上运行的实例,指示它们在另一个主机上启动,然后释放 该主机。

了解自动置放与关联

放置控制发生在实例级别和主机级别。

自动置放

自动置放允许您管理所启动的实例是在特定主机上启动,还是在具有匹配配置的任意可用主机上启动。必须在主机级别配置自动置放。

如果专用主机的自动置放已禁用,则它仅接受指定其唯一主机 ID 的主机 租赁实例启动。这是新专用主机的默认设置。

如果专用主机的自动置放已启用,则它接受任何匹配其实例类型配置的非定向实例启动。

在启动实例时,您需要配置其租赁。如果在专用主机上启动实例而不提供特定 HostId,则将允许实例在任何已启用 自动置放且匹配其实例类型的专用主机上启动。

主机关联

在实例级别配置主机关联。它在实例和专用主机之间建立启动关系。

当关联设置为 Host 时,启动到特定主机的实例在停止时始终在同一主机上重新启动。这适用于定向启动和非定向启动。

如果关联设置为 Off,并且您停止并重新启动实例,则实例可在任何可用主机上重新启动。但是,它将尝试在上次运行它的专用主机上启动 (尽最大努力)。

分配专用主机

要开始使用专用主机,需要将它们分配到您的账户。可以使用 Amazon EC2 控制台或命令行工具将专用主机分配给您的账户。

使用 Amazon EC2 控制台分配专用主机

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航窗格中,选择专用主机分配 专用主机

  3. 配置以下专用主机选项:

    1. 实例类型 — 要在专用主机上启动的实例的类型。

    2. 可用区 — 专用主机所在的可用区。

    3. 允许实例自动置放 — 选择下列设置之一:

      • 是 — 专用主机接受匹配其实例类型配置的非定向实例启动。

      • 否 — 专用主机接受仅指定其唯一主机 ID 的 host 租赁实例启动。这是默认设置。

      有关自动置放的更多信息,请参阅了解自动置放与关联

    4. 数量 — 使用这些选项分配的专用主机的数量。

  4. (可选)选择添加标签,然后输入标签键和标签值。

  5. 选择 Allocate host

使用命令行工具分配专用主机

使用以下命令之一。以下命令分配一个专用主机,它支持在 eu-west-1a 可用区中启动的非定向 m4.large 实例,并应用键为 purpose 且值为 production 的标签。

  • allocate-hosts (AWS CLI)

    aws ec2 allocate-hosts --instance-type "m4.large" --availability-zone "eu-west-1a" --auto-placement "off" --quantity 1 --tag-specifications 'ResourceType=dedicated-host,Tags=[{Key=purpose,Value=production}]'
  • New-EC2Host (适用于 Windows PowerShell 的 AWS 工具)

    TagSpecification 参数用于在创建时标记专用主机,需要一个指定所标记资源类型、标签键和标签值的对象。以下命令创建所需对象。

    PS C:\> $tag = @{ Key="purpose"; Value="production" } PS C:\> $tagspec = new-object Amazon.EC2.Model.TagSpecification PS C:\> $tagspec.ResourceType = "dedicated-host" PS C:\> $tagspec.Tags.Add($tag)

    以下命令分配专用主机并应用在 $tagspec 对象中指定的标签。

    PS C:\> New-EC2Host -InstanceType m4.large -AvailabilityZone eu-west-1a -AutoPlacement Off -Quantity 1 -TagSpecification $tagspec

专用主机容量可立即在您的账户中使用。

如果您启动了带 host 租赁的实例,但您的账户中没有任何活动的专用主机,则将收到一个错误,并且实例启动失败。

在专用主机上启动实例

在分配一个专用主机后,您可以在其中启动实例。对于所启动的实例类型,如果您没有具有足够可用容量的活动专用主机,则无法启动带 host 租赁的实例。

注意

在专用主机上启动的实例只能在 VPC 中启动。有关更多信息,请参阅 VPC 简介

在启动实例之前,请注意限制。有关更多信息,请参阅专用主机限制

从专用主机页面中在特定专用主机上启动实例

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航窗格中,选择专用主机

  3. 专用主机页面上,选择一台主机,然后选择操作在主机上启动实例

  4. 从列表中选择一个 AMI。Windows、SUSE 和 Amazon EC2 提供的 RHEL AMI 无法用于专用主机。

  5. 选择一个实例类型页面上,保留默认情况下选择的实例类型,然后选择下一步:配置实例详细信息

    实例类型由选定主机决定。

  6. 配置实例详细信息页面上,配置实例设置以满足需求,然后为关联选择下列选项之一:

    • 关闭 — 实例在指定的主机上启动,但不保证停止后仍在同一专用主机上重新启动。

    • 主机 — 如果停止,实例将始终在此特定主机上重新启动。

    有关关联的更多信息,请参阅了解自动置放与关联

    注意

    已根据选定主机预配置租赁主机选项。

  7. 选择 Review and Launch

  8. Review Instance Launch 页面上,选择 Launch

  9. 在系统提示时,选择现有密钥对或创建新的密钥对,然后选择启动实例

使用启动实例向导在专用主机上启动实例

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航窗格中,选择实例启动实例

  3. 从列表中选择一个 AMI。Windows、SUSE 和 Amazon EC2 提供的 RHEL AMI 无法用于专用主机。

  4. 选择要启动的实例类型,然后选择下一步:配置实例详细信息

  5. 配置实例详细信息页面上,配置实例设置以满足需求,然后配置以下专用主机特定的设置:

    • 租赁 — 选择专用主机 – 在专用主机上启动此实例

    • 主机 — 选择使用自动置放可在任何已启用自动置放的专用主机或在列表中选择特定的专用主机上启动实例。如果专用主机不支持选定实例类型,则将在列表中禁用。

    • 关联 — 请选择下列选项之一:

      • 关闭 — 实例在指定的主机上启动,但不保证停止后仍在其上重新启动。

      • 主机 — 如果停止,实例将始终在指定主机上重新启动。

    有关更多信息,请参阅了解自动置放与关联

    注意

    如果您无法看到这些设置,请检查是否在 Network 菜单中选择了一个 VPC。

  6. 选择 Review and Launch

  7. Review Instance Launch 页面上,选择 Launch

  8. 在系统提示时,选择现有密钥对或创建新的密钥对,然后选择启动实例

使用命令行工具在专用主机上启动实例

使用以下命令之一并在 Placement 请求参数中指定实例关联、租赁和主机:

修改专用主机自动置放

在将专用主机分配给 AWS 账户后,可以修改专用主机的自动置放设置。

使用 Amazon EC2 控制台修改专用主机的自动置放

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航窗格中,选择专用主机

  3. 专用主机页面上,选择一个主机,然后依次选择操作修改自动置放

  4. 在“修改自动置放”窗口中,对于允许自动置放,选择以启用自动置放,或选择以禁用自动置放。有关更多信息,请参阅了解自动置放与关联

  5. 选择 Save

使用命令行工具修改专用主机的自动置放

使用以下命令之一。以下示例为指定专用主机启用自动置放。

  • modify-hosts (AWS CLI)

    aws ec2 modify-hosts --auto-placement on --host-ids h-012a3456b7890cdef
  • Edit-EC2Host (适用于 Windows PowerShell 的 AWS 工具)

    PS C:\> Edit-EC2Host --AutoPlacement 1 --HostId h-012a3456b7890cdef

修改实例租赁和关联

在启动实例后,可以将其租赁属性从 dedicated 改为 host,或从 host 改为 dedicated

使用 Amazon EC2 控制台修改租赁和关联

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 选择实例并选择要修改的实例。

  3. 依次选择 ActionsInstance StateStop

  4. 打开实例的上下文 (右键单击) 菜单,选择 Instance Settings,然后选择 Modify Instance Placement

  5. 修改实例置放页面上,配置以下项:

    • 租赁 — 选择下列项之一:

      • 运行专用硬件实例 — 将实例作为专用实例启动。有关更多信息,请参阅专用实例

      • 在专用主机上启动实例 — 在具有可配置关联的专用主机上启动实例。

    • 关联 — 选择下列项之一:

      • 此实例可以在任一主机上运行 — 实例在账户中的任何支持该实例类型的可用专用主机上启动。

      • 此实例只能在选定的主机上运行 — 实例只能在为目标主机选择的专用主机上运行。

    • 目标主机 — 选择实例必须在其中运行的专用主机。如果未列出目标主机,则账户中可能没有可用的兼容专用主机。

    有关更多信息,请参阅 了解自动置放与关联

  6. 选择 Save

使用命令行工具修改实例租赁和关联

使用以下命令之一。以下示例将指定实例的关联从 default 更改为 host,并指定实例已关联到的专用主机。

  • modify-instance-placement (AWS CLI)

    aws ec2 modify-instance-placement --instance-id i-1234567890abcdef0 --affinity host --host-id h-012a3456b7890cdef
  • Edit-EC2InstancePlacement (适用于 Windows PowerShell 的 AWS 工具)

    PS C:\> Edit-EC2InstancePlacement -InstanceId i-1234567890abcdef0 -Affinity host -HostId h-012a3456b7890cdef

查看专用主机

您可以查看有关专用主机及其中的单个实例的详细信息。

使用 Amazon EC2 控制台查看专用主机上的实例的详细信息

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航窗格中,选择专用主机

  3. 专用主机 页面上,选择要查看更多详细信息的主机。

  4. 有关主机的信息,请选择描述。有关主机上运行的实例的信息,请选择实例

使用命令行工具查看专用主机上的实例的详细信息

使用以下命令之一:

  • describe-hosts (AWS CLI)

    aws ec2 describe-hosts --host-id host_id
  • Get-EC2Host (适用于 Windows PowerShell 的 AWS 工具)

    PS C:\> Get-EC2Host -HostId host_id

标记专用主机

您可以为现有专用主机分配自定义标签,以不同的方式对它们分类,例如按用途、所有者或环境。这有助于您根据所分配的自定义标签快速查找特定专用主机。专用主机标签也可用于成本分配跟踪。

您还可以在创建时向专用主机应用标签。有关更多信息,请参阅分配专用主机

您可使用 Amazon EC2 控制台和命令行工具标记专用主机。

使用控制台标记专用主机

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航窗格中,选择专用主机

  3. 选择要标记的专用主机,然后选择标签

  4. 选择 Add/Edit Tags

  5. 添加/编辑标签对话框中,选择创建标签,然后指定该标签的键和值。

  6. (可选)选择创建标签以将其他标签添加到专用主机。

  7. 选择 Save

使用命令行标记专用主机

使用以下命令之一:

  • create-tags

    以下命令将使用 Owner=TeamA 标记指定 专用主机。

    aws ec2 create-tags --resources h-abc12345678909876 --tags Key=Owner,Value=TeamA
  • New-EC2Tag

    New-EC2Tag 命令需要 Tag 对象,此对象指定要用于专用主机标签的键值对。以下命令分别使用 Tag$tag 的键值对创建名为 OwnerTeamA 对象:

    PS C:\> $tag = New-Object Amazon.EC2.Model.Tag PS C:\> $tag.Key = "Owner" PS C:\> $tag.Value = "TeamA"

    以下命令使用 $tag 对象标记指定的专用主机:

    PS C:\> New-EC2Tag -Resource h-abc12345678909876 -Tag $tag

监控专用主机

Amazon EC2 持续监控专用主机的状态;更新内容通过 Amazon EC2 控制台传送。您还可以使用命令行工具获取有关专用主机的信息。

使用 Amazon EC2 控制台查看专用主机的状态

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航窗格中,选择专用主机

  3. 在列表中找到专用主机,并查看状态列中的值。

使用命令行工具查看专用主机的状态

使用以下命令之一,然后查看 state 响应元素的 hostSet 属性:

  • describe-hosts (AWS CLI)

    aws ec2 describe-hosts --host-id host_id
  • Get-EC2Host (适用于 Windows PowerShell 的 AWS 工具)

    PS C:\> Get-EC2Host -HostId host_id

下表说明了可能的专用主机状态。

状态 描述
available AWS 未在专用主机上检测到问题;没有制定维护或修复计划。实例可在此专用主机上启动。
released 已释放专用主机。主机 ID 不再使用。无法重新使用已释放的主机。
under-assessment AWS 正在寻找专用主机可能存在的问题。如果必须采取措施,系统将通过 AWS 管理控制台或电子邮件通知您。实例无法在处于此状态的专用主机上启动。
permanent-failure 检测到了一个不可恢复的故障。您将通过您的实例和通过电子邮件接收到一个移出通知。您的实例可能会继续运行。如果在处于此状态的专用主机上停止或终止所有实例,AWS 将重试该主机。AWS 不会在此状态下重新启动实例。实例无法在处于这种状态的专用主机上启动。
released-permanent-failure AWS 永久释放已发生故障的专用主机,不再在这些主机上运行实例。专用主机 ID 不再可供使用。

释放专用主机

需要先停止在专用主机上运行的任何实例,然后才能释放主机。这些实例可以迁移至您账户的其他专用主机,这样您就可以继续使用它们。这些步骤只适用于按需专用主机。

使用 Amazon EC2 控制台释放专用主机

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航窗格中,选择专用主机

  3. 专用主机页面上,选择要释放的专用主机。

  4. 选择 ActionsRelease Hosts

  5. 选择释放以确认。

使用命令行工具释放专用主机

使用以下命令之一:

  • release-hosts (AWS CLI)

    aws ec2 release-hosts --host-ids host_id
  • Remove-EC2Hosts (适用于 Windows PowerShell 的 AWS 工具)

    PS C:\> Remove-EC2Hosts -HostId host_id

在释放专用主机后,您不能再重用相同的主机或主机 ID,并且您不再根据按需账单费率付费。专用主机的状态将更改为 released,您无法在该主机上启动任何实例。

注意

如果最近释放了专用主机,它们可能要过一段时间才会停止计入限制。在这段时间内,如果尝试分配新的专用主机,可能会出现 LimitExceeded 错误。如果出现这种情况,请在几分钟后再次尝试分配新的主机。

已停止的实例仍可以使用和列在 Instances 页面上。这些实例将保留其 host 租赁设置。

购买专用主机预留

您可以使用 Amazon EC2 控制台或命令行工具购买预留。

使用 Amazon EC2 控制台购买预留

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 依次选择专用主机专用主机预留购买专用主机预留

  3. 购买专用主机预留屏幕上,您可以搜索使用默认设置的可用产品,也可以为以下项指定自定义值:

    • 主机实例系列 — 所列选项对应于您账户中未分配给预留的专用主机。

    • 可用区 — 您账户中未分配给预留的专用主机的可用区。

    • 付款选项 — 产品的付款选项。

    • 期限 — 预留期限。可以是一年或三年。

  4. 选择查找产品,并选择符合您要求的产品。

  5. 选择要与预留关联的专用主机并选择审核

  6. 审核您的订单,然后选择购买

使用命令行工具购买预留

  1. 使用以下命令之一列出符合您需求的可用产品。以下示例列出了支持 m4 实例系列中的实例并具有一年期限的产品。

    注意

    期限以秒为单位指定。一年期限为 31536000 秒,三年期限为 94608000 秒。

    • describe-host-reservation-offerings (AWS CLI)

      aws ec2 describe-host-reservation-offerings --filter Name=instance-family,Values=m4 --max-duration 31536000
    • Get-EC2HostReservationOffering (适用于 Windows PowerShell 的 AWS 工具)

      PS C:\> $filter = @{Name="instance-family"; Value="m4"}
      PS C:\> Get-EC2HostReservationOffering -filter $filter -MaxDuration 31536000

    这两条命令都返回符合您条件的产品的列表。记下要购买的产品的 offeringId

  2. 使用以下命令之一可购买产品并提供上一步骤中记下的 offeringId。以下示例购买指定预留并将它与 AWS 账户中已分配的特定专用主机关联。

    • purchase-host-reservation (AWS CLI)

      aws ec2 purchase-host-reservation --offering-id hro-03f707bf363b6b324 --host-id-set h-013abcd2a00cbd123
    • New-EC2HostReservation (适用于 Windows PowerShell 的 AWS 工具)

      PS C:\> New-EC2HostReservation -OfferingId hro-03f707bf363b6b324 -HostIdSet h-013abcd2a00cbd123

查看专用主机预留

您可以查看与预留关联的专用主机的相关信息,如预留期限、选择的付款选项、预留的开始和结束日期等。

使用 Amazon EC2 控制台查看预留的详细信息

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航窗格中,选择专用主机

  3. 专用主机页面上,选择专用主机预留,然后从提供的列表中选择预留。

  4. 有关预留的信息,请选择 Details

  5. 如需与预留关联的专用主机的信息,请选择主机

使用命令行工具查看预留的详细信息

使用以下命令之一: