本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Windows PowerShell 查找 Amazon Machine Image
在启动 Amazon EC2 实例时,您需要指定一个 Amazon Machine Image (AMI) 以用作该实例的模板。不过,AWS Windows AMI 的 ID 会频繁发生更改,因为AWS会提供新 AMI 以及最新的更新和安全增强。可以使用 Get-EC2Image 和 Get-EC2ImageByName cmdlet 来查找当前 Windows AMI 并获取其 ID。
Get-EC2Image
Get-EC2Image
cmdlet 会检索您可使用的 AMI 的列表。
将 -Owner
参数与数组值 amazon, self
结合使用,以便 Get-EC2Image
仅检索属于 Amazon 或您的 AMI。在此上下文中,您指的是您要使用其凭证来调用 cmdlet 的用户。
PS >
Get-EC2Image -Owner amazon, self
可使用 -Filter
参数限定结果的范围。要指定筛选条件,可创建类型为 Amazon.EC2.Model.Filter
的对象。例如,使用以下筛选条件可以只显示 Windows AMI。
$platform_values = New-Object 'collections.generic.list[string]' $platform_values.add("windows") $filter_platform = New-Object Amazon.EC2.Model.Filter -Property @{Name = "platform"; Values = $platform_values} Get-EC2Image -Owner amazon, self -Filter $filter_platform
以下示例是 cmdlet 返回的 AMI 之一;上一条命令的实际输出提供了多个 AMI 的信息。
Architecture : x86_64
BlockDeviceMappings : {/dev/sda1, xvdca, xvdcb, xvdcc…}
CreationDate : 2019-06-12T10:41:31.000Z
Description : Microsoft Windows Server 2019 Full Locale English with SQL Web 2017 AMI provided by Amazon
EnaSupport : True
Hypervisor : xen
ImageId : ami-000226b77608d973b
ImageLocation : amazon/Windows_Server-2019-English-Full-SQL_2017_Web-2019.06.12
ImageOwnerAlias : amazon
ImageType : machine
KernelId :
Name : Windows_Server-2019-English-Full-SQL_2017_Web-2019.06.12
OwnerId : 801119661308
Platform : Windows
ProductCodes : {}
Public : True
RamdiskId :
RootDeviceName : /dev/sda1
RootDeviceType : ebs
SriovNetSupport : simple
State : available
StateReason :
Tags : {}
VirtualizationType : hvm
Get-EC2ImageByName
Get-EC2ImageByName
cmdlet 使您能够基于所需的服务器配置类型筛选 AWS Windows AMI 的列表。
在没有参数的情况下运行时(如下所示),cmdlet 会发出整组当前筛选条件名称:
PS >
Get-EC2ImageByName
WINDOWS_2016_BASE WINDOWS_2016_NANO WINDOWS_2016_CORE WINDOWS_2016_CONTAINER WINDOWS_2016_SQL_SERVER_ENTERPRISE_2016 WINDOWS_2016_SQL_SERVER_STANDARD_2016 WINDOWS_2016_SQL_SERVER_WEB_2016 WINDOWS_2016_SQL_SERVER_EXPRESS_2016 WINDOWS_2012R2_BASE WINDOWS_2012R2_CORE WINDOWS_2012R2_SQL_SERVER_EXPRESS_2016 WINDOWS_2012R2_SQL_SERVER_STANDARD_2016 WINDOWS_2012R2_SQL_SERVER_WEB_2016 WINDOWS_2012R2_SQL_SERVER_EXPRESS_2014 WINDOWS_2012R2_SQL_SERVER_STANDARD_2014 WINDOWS_2012R2_SQL_SERVER_WEB_2014 WINDOWS_2012_BASE WINDOWS_2012_SQL_SERVER_EXPRESS_2014 WINDOWS_2012_SQL_SERVER_STANDARD_2014 WINDOWS_2012_SQL_SERVER_WEB_2014 WINDOWS_2012_SQL_SERVER_EXPRESS_2012 WINDOWS_2012_SQL_SERVER_STANDARD_2012 WINDOWS_2012_SQL_SERVER_WEB_2012 WINDOWS_2012_SQL_SERVER_EXPRESS_2008 WINDOWS_2012_SQL_SERVER_STANDARD_2008 WINDOWS_2012_SQL_SERVER_WEB_2008 WINDOWS_2008R2_BASE WINDOWS_2008R2_SQL_SERVER_EXPRESS_2012 WINDOWS_2008R2_SQL_SERVER_STANDARD_2012 WINDOWS_2008R2_SQL_SERVER_WEB_2012 WINDOWS_2008R2_SQL_SERVER_EXPRESS_2008 WINDOWS_2008R2_SQL_SERVER_STANDARD_2008 WINDOWS_2008R2_SQL_SERVER_WEB_2008 WINDOWS_2008RTM_BASE WINDOWS_2008RTM_SQL_SERVER_EXPRESS_2008 WINDOWS_2008RTM_SQL_SERVER_STANDARD_2008 WINDOWS_2008_BEANSTALK_IIS75 WINDOWS_2012_BEANSTALK_IIS8 VPC_NAT
要缩小返回的映像集,请使用 Names
参数指定一个或多个筛选条件名称。
PS >
Get-EC2ImageByName -Names WINDOWS_2016_CORE
Architecture : x86_64 BlockDeviceMappings : {/dev/sda1, xvdca, xvdcb, xvdcc…} CreationDate : 2019-08-16T09:36:09.000Z Description : Microsoft Windows Server 2016 Core Locale English AMI provided by Amazon EnaSupport : True Hypervisor : xen ImageId : ami-06f2a2afca06f15fc ImageLocation : amazon/Windows_Server-2016-English-Core-Base-2019.08.16 ImageOwnerAlias : amazon ImageType : machine KernelId : Name : Windows_Server-2016-English-Core-Base-2019.08.16 OwnerId : 801119661308 Platform : Windows ProductCodes : {} Public : True RamdiskId : RootDeviceName : /dev/sda1 RootDeviceType : ebs SriovNetSupport : simple State : available StateReason : Tags : {} VirtualizationType : hvm