Windows を使用して Amazon EC2 インスタンスを起動する PowerShell - AWS Tools for PowerShell

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Windows を使用して Amazon EC2 インスタンスを起動する PowerShell

Amazon EC2 インスタンスの起動には、前のセクションで作成したキーペアとセキュリティグループが必要です。また、Amazon Machine Image (AMI) の ID も必要です。詳細については、次のドキュメントを参照してください。

重要

無料利用枠に含まれないインスタンスを起動する場合は、インスタンスを起動すると料金が発生し、そのインスタンスの実行中はアイドル状態であっても料金がかかります。

EC2-Classic でのインスタンスの起動

警告

2022 年 8 月 15 日に、EC2-Classic の提供を終了しhます。EC2-Classic は、VPC への移行をお勧めします。詳細については、Amazon EC2 EC2-Classic から VPC への移行Amazon EC2」を参照してください。ブログ記事「EC2-Classic Networking は販売終了になります — 準備方法はこちら」も参照してください。

次のコマンドは、単一の t1.micro インスタンスを作成して起動します。

PS > New-EC2Instance -ImageId ami-c49c0dac ` -MinCount 1 ` -MaxCount 1 ` -KeyName myPSKeyPair ` -SecurityGroups myPSSecurityGroup ` -InstanceType t1.micro ReservationId : r-b70a0ef1 OwnerId : 123456789012 RequesterId : Groups : {myPSSecurityGroup} GroupName : {myPSSecurityGroup} Instances : {}

最初、インスタンスは pending 状態ですが、数分後には running 状態になります。インスタンスに関する情報を表示するには、Get-EC2Instance コマンドレットを使用します。複数のインスタンスがある場合は、Filter パラメータを使用して予約 ID の結果をフィルタします。まず、Amazon.EC2.Model.Filter 型のオブジェクトを作成します。次に、フィルターを使用する Get-EC2Instance を呼び出し、Instances プロパティを表示します。

PS > $reservation = New-Object 'collections.generic.list[string]' PS > $reservation.add("r-5caa4371") PS > $filter_reservation = New-Object Amazon.EC2.Model.Filter -Property @{Name = "reservation-id"; Values = $reservation} PS > (Get-EC2Instance -Filter $filter_reservation).Instances AmiLaunchIndex : 0 Architecture : x86_64 BlockDeviceMappings : {/dev/sda1} ClientToken : EbsOptimized : False Hypervisor : xen IamInstanceProfile : ImageId : ami-c49c0dac InstanceId : i-5203422c InstanceLifecycle : InstanceType : t1.micro KernelId : KeyName : myPSKeyPair LaunchTime : 12/2/2018 3:38:52 PM Monitoring : Amazon.EC2.Model.Monitoring NetworkInterfaces : {} Placement : Amazon.EC2.Model.Placement Platform : Windows PrivateDnsName : PrivateIpAddress : 10.25.1.11 ProductCodes : {} PublicDnsName : PublicIpAddress : 198.51.100.245 RamdiskId : RootDeviceName : /dev/sda1 RootDeviceType : ebs SecurityGroups : {myPSSecurityGroup} SourceDestCheck : True SpotInstanceRequestId : SriovNetSupport : State : Amazon.EC2.Model.InstanceState StateReason : StateTransitionReason : SubnetId : Tags : {} VirtualizationType : hvm VpcId :

VPC でのインスタンスの起動

次のコマンドでは、指定したプライベートサブネットで、単一の m1.small インスタンスを作成しています。セキュリティグループは、指定したサブネットに対して有効である必要があります。

PS > New-EC2Instance ` -ImageId ami-c49c0dac ` -MinCount 1 -MaxCount 1 ` -KeyName myPSKeyPair ` -SecurityGroupId sg-5d293231 ` -InstanceType m1.small ` -SubnetId subnet-d60013bf ReservationId : r-b70a0ef1 OwnerId : 123456789012 RequesterId : Groups : {} GroupName : {} Instances : {}

最初、インスタンスは pending 状態ですが、数分後には running 状態になります。インスタンスに関する情報を表示するには、Get-EC2Instance コマンドレットを使用します。複数のインスタンスがある場合は、Filter パラメータを使用して予約 ID の結果をフィルタします。まず、Amazon.EC2.Model.Filter 型のオブジェクトを作成します。次に、フィルターを使用する Get-EC2Instance を呼び出し、Instances プロパティを表示します。

PS > $reservation = New-Object 'collections.generic.list[string]' PS > $reservation.add("r-b70a0ef1") PS > $filter_reservation = New-Object Amazon.EC2.Model.Filter -Property @{Name = "reservation-id"; Values = $reservation} PS > (Get-EC2Instance -Filter $filter_reservation).Instances AmiLaunchIndex : 0 Architecture : x86_64 BlockDeviceMappings : {/dev/sda1} ClientToken : EbsOptimized : False Hypervisor : xen IamInstanceProfile : ImageId : ami-c49c0dac InstanceId : i-5203422c InstanceLifecycle : InstanceType : m1.small KernelId : KeyName : myPSKeyPair LaunchTime : 12/2/2018 3:38:52 PM Monitoring : Amazon.EC2.Model.Monitoring NetworkInterfaces : {} Placement : Amazon.EC2.Model.Placement Platform : Windows PrivateDnsName : PrivateIpAddress : 10.25.1.11 ProductCodes : {} PublicDnsName : PublicIpAddress : 198.51.100.245 RamdiskId : RootDeviceName : /dev/sda1 RootDeviceType : ebs SecurityGroups : {myPSSecurityGroup} SourceDestCheck : True SpotInstanceRequestId : SriovNetSupport : State : Amazon.EC2.Model.InstanceState StateReason : StateTransitionReason : SubnetId : subnet-d60013bf Tags : {} VirtualizationType : hvm VpcId : vpc-a01106c2

VPC でのスポットインスタンスの起動

次のスクリプト例は、指定されたサブネットのスポットインスタンスをリクエストします。セキュリティグループは、指定したサブネットが含まれている VPC 用に作成したものである必要があります。

$interface1 = New-Object Amazon.EC2.Model.InstanceNetworkInterfaceSpecification $interface1.DeviceIndex = 0 $interface1.SubnetId = "subnet-b61f49f0" $interface1.PrivateIpAddress = "10.0.1.5" $interface1.Groups.Add("sg-5d293231") Request-EC2SpotInstance ` -SpotPrice 0.007 ` -InstanceCount 1 ` -Type one-time ` -LaunchSpecification_ImageId ami-7527031c ` -LaunchSpecification_InstanceType m1.small ` -Region us-west-2 ` -LaunchSpecification_NetworkInterfaces $interface1