

AWS -Tools für PowerShell V4 ist in den Wartungsmodus gewechselt.

Wir empfehlen Ihnen, auf [AWS -Tools für PowerShell V5](https://docs.aws.amazon.com/powershell/v5/userguide/) zu migrieren. Weitere Einzelheiten und Informationen zur Migration finden Sie in unserer [Ankündigung zum Wartungsmodus](https://aws.amazon.com/blogs/developer/aws-tools-for-powershell-v4-maintenance-mode-announcement/).

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Amazon EC2 und Tools für Windows PowerShell
<a name="pstools-ec2"></a>

Mit dem können Sie allgemeine Aufgaben im Zusammenhang EC2 mit Amazon ausführen AWS -Tools für PowerShell.

Bei den hier gezeigten Beispielbefehlen wird davon ausgegangen, dass Sie Standardanmeldedaten und eine Standardregion für Ihre PowerShell Sitzung festgelegt haben. Aus diesem Grund geben wir im Aufruf von Cmdlets weder Anmeldeinformationen noch eine Region an. Weitere Informationen finden Sie unter [Fangen Sie an mit dem AWS Tools for Windows PowerShell](pstools-getting-started.md).

**Topics**
+ [Erstellen eines Schlüsselpaares](pstools-ec2-keypairs.md)
+ [Erstellen einer Sicherheitsgruppe](pstools-ec2-sg.md)
+ [Suchen eines AMI](pstools-ec2-get-amis.md)
+ [Starten Sie eine Instance](pstools-ec2-launch.md)

# Erstellen eines Schlüsselpaars
<a name="pstools-ec2-keypairs"></a>

Das folgende `New-EC2KeyPair` Beispiel erstellt ein key pair und speichert es in der PowerShell Variablen `$myPSKeyPair` 

```
PS > $myPSKeyPair = New-EC2KeyPair -KeyName myPSKeyPair
```

Übergeben Sie das Schlüsselpaarobjekt mit einem Pipe-Zeichen an das Cmdlet `Get-Member`, um die Struktur des Objekts anzuzeigen.

```
PS > $myPSKeyPair | Get-Member

     TypeName: Amazon.EC2.Model.KeyPair

  Name                MemberType   Definition
  ----                ----------   ----------
  Equals              Method       bool Equals(System.Object obj)
  GetHashCode         Method       int GetHashCode()
  GetType             Method       type GetType()
  ToString            Method       string ToString()
  KeyFingerprint      Property     System.String KeyFingerprint {get;set;}
  KeyMaterial         Property     System.String KeyMaterial {get;set;}
  KeyName             Property     System.String KeyName {get;set;}
```

Übergeben Sie das Schlüsselpaarobjekt mit einem Pipe-Zeichen an das Cmdlet `Format-List`, um die Werte der Elemente `KeyName`, `KeyFingerprint` und `KeyMaterial` anzuzeigen. (Die Ausgabe wurde zur besseren Lesbarkeit gekürzt.)

```
PS > $myPSKeyPair | Format-List KeyName, KeyFingerprint, KeyMaterial

  KeyName        : myPSKeyPair
  KeyFingerprint : 09:06:70:8e:26:b6:e7:ef:8f:fe:4a:1d:bc:9c:6a:63:11:ac:ad:3c
  KeyMaterial    : ----BEGIN RSA PRIVATE KEY----
                   MIIEogIBAAKCAQEAkK+ANYUS9c7niNjYfaCn6KYj/D0I6djnFoQE...
                   Mz6btoxPcE7EMeH1wySUp8nouAS9xbl9l7+VkD74bN9KmNcPa/Mu...
                   Zyn4vVe0Q5il/MpkrRogHqOB0rigeTeV5Yc3lvO0RFFPu0Kz4kcm...
                   w3Jg8dKsWn0plOpX7V3sRC02KgJIbejQUvBFGi5OQK9bm4tXBIeC...
                   daxKIAQMtDUdmBDrhR1/YMv8itFe5DiLLbq7Ga+FDcS85NstBa3h...
                   iuskGkcvgWkcFQkLmRHRoDpPb+OdFsZtjHZDpMVFmA9tT8EdbkEF...
                   3SrNeqZPsxJJIxOodb3CxLJpg75JU5kyWnb0+sDNVHoJiZCULCr0...
                   GGlLfEgB95KjGIk7zEv2Q7K6s+DHclrDeMZWa7KFNRZuCuX7jssC...
                   xO98abxMr3o3TNU6p1ZYRJEQ0oJr0W+kc+/8SWb8NIwfLtwhmJEy...
                   1BX9X8WFX/A8VLHrT1elrKmLkNECgYEAwltkV1pOJAFhz9p7ZFEv...
                   vvVsPaF0Ev9bk9pqhx269PB5Ox2KokwCagDMMaYvasWobuLmNu/1...
                   lmwRx7KTeQ7W1J3OLgxHA1QNMkip9c4Tb3q9vVc3t/fPf8vwfJ8C...
                   63g6N6rk2FkHZX1E62BgbewUd3eZOS05Ip4VUdvtGcuc8/qa+e5C...
                   KXgyt9nl64pMv+VaXfXkZhdLAdY0Khc9TGB9++VMSG5TrD15YJId...
                   gYALEI7m1jJKpHWAEs0hiemw5VmKyIZpzGstSJsFStERlAjiETDH...
                   YAtnI4J8dRyP9I7BOVOn3wNfIjk85gi1/0Oc+j8S65giLAfndWGR...
                   9R9wIkm5BMUcSRRcDy0yuwKBgEbkOnGGSD0ah4HkvrUkepIbUDTD...
                   AnEBM1cXI5UT7BfKInpUihZi59QhgdK/hkOSmWhlZGWikJ5VizBf...
                   drkBr/vTKVRMTi3lVFB7KkIV1xJxC5E/BZ+YdZEpWoCZAoGAC/Cd...
                   TTld5N6opgOXAcQJwzqoGa9ZMwc5Q9f4bfRc67emkw0ZAAwSsvWR...
                   x3O2duuy7/smTwWwskEWRK5IrUxoMv/VVYaqdzcOajwieNrblr7c...
                   -----END RSA PRIVATE KEY-----
```

Der private Schlüssel des Schlüsselpaares wird im Element `KeyMaterial` gespeichert. Der öffentliche Schlüssel wird in gespeichert AWS. Sie können den öffentlichen Schlüssel nicht von abrufen AWS, aber Sie können den öffentlichen Schlüssel überprüfen, indem Sie den `KeyFingerprint` für den privaten Schlüssel mit dem zurückgegebenen Schlüssel AWS für den öffentlichen Schlüssel vergleichen.

## Anzeigen des Schlüsselpaar-Fingerabdrucks
<a name="get-ec2keypair"></a>

Mit dem Cmdlet `Get-EC2KeyPair` können Sie den Schlüsselpaar-Fingerabdruck anzeigen.

```
PS > Get-EC2KeyPair -KeyName myPSKeyPair | format-list KeyName, KeyFingerprint

  KeyName        : myPSKeyPair
  KeyFingerprint : 09:06:70:8e:26:b6:e7:ef:8f:fe:4a:1d:bc:9c:6a:63:11:ac:ad:3c
```

## Speichern des privaten Schlüssels
<a name="store-ec2keypair"></a>

Um den privaten Schlüssel in einer Datei zu speichern, übergeben Sie das Element `KeyFingerMaterial` mit einem Pipe-Zeichen an das Cmdlet `Out-File`.

```
PS > $myPSKeyPair.KeyMaterial | Out-File -Encoding ascii myPSKeyPair.pem
```

Sie müssen beim Schreiben des privaten Schlüssels in eine Datei den Parameterwert `-Encoding ascii` angeben. Andernfalls können Tools wie beispielsweise `openssl` die Datei möglicherweise nicht richtig lesen. Das Format der beschriebenen Datei kann mit einem Befehl wie dem folgenden geprüft werden:

```
PS > openssl rsa -check < myPSKeyPair.pem
```

(Das `openssl` Tool ist nicht in der AWS -Tools für PowerShell oder der enthalten AWS SDK für .NET.)

## Entfernen des Schlüsselpaars
<a name="remove-ec2keypair"></a>

Sie benötigen das Schlüsselpaar, um eine Instance zu starten und eine Verbindung damit herzustellen. Wenn Sie ein Schlüsselpaar nicht mehr benötigen, können Sie es entfernen. Verwenden Sie das `Remove-EC2KeyPair` Cmdlet AWS, um den öffentlichen Schlüssel von zu entfernen. Drücken Sie bei Aufforderung die Taste `Enter`, um das Schlüsselpaar zu entfernen.

```
PS > Remove-EC2KeyPair -KeyName myPSKeyPair

Confirm
Performing the operation "Remove-EC2KeyPair (DeleteKeyPair)" on target "myPSKeyPair".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "Y"):
```

Die Variable,`$myPSKeyPair`, ist in der aktuellen PowerShell Sitzung noch vorhanden und enthält immer noch die Schlüsselpaarinformationen. Außerdem ist die Datei `myPSKeyPair.pem` vorhanden. Allerdings ist der private Schlüssel nicht mehr gültig, da der öffentliche Schlüssel des Schlüsselpaares nicht mehr in AWS gespeichert ist.

# Erstellen Sie eine Sicherheitsgruppe mit Windows PowerShell
<a name="pstools-ec2-sg"></a>

Sie können den verwenden AWS -Tools für PowerShell , um eine Sicherheitsgruppe zu erstellen und zu konfigurieren. Die Antwort ist die ID der Sicherheitsgruppe.

Wenn Sie eine Verbindung zur Instance herstellen müssen, muss die Sicherheitsgruppe so konfiguriert werden, dass SSH-Datenverkehr (Linux) oder RDP-Datenverkehr (Windows) möglich ist.

**Topics**
+ [Voraussetzungen](#sg-prerequisites)
+ [Eine Sicherheitsgruppe für VPC EC2 erstellen](#new-ec2securitygroup-vpc)

## Voraussetzungen
<a name="sg-prerequisites"></a>

Sie benötigen die öffentliche IP-Adresse des Computers in CIDR-Schreibweise. Sie können einen Service verwenden, um die öffentliche IP-Adresse des Computers abzufragen. Amazon bietet beispielsweise den folgenden Service an: [http://checkip.amazonaws.com/](http://checkip.amazonaws.com/) oder [https://checkip.amazonaws.com/](https://checkip.amazonaws.com/). Geben Sie zum Auffinden eines anderen Service, der Ihnen Ihre IP-Adresse nennt, den Suchausdruck "wie ist meine IP-Adresse" ein. Wenn Sie eine Verbindung über einen Internetdienstanbieter oder hinter Ihrer Firewall ohne statische IP-Adresse herstellen, müssen Sie den IP-Adressbereich ermitteln, der von Ihren Clientcomputern verwendet werden kann.

**Warnung**  
Wenn Sie `0.0.0.0/0` angeben, aktivieren Sie den Datenverkehr von allen IP-Adressen auf der ganzen Welt. Dieser Ansatz ist möglicherweise für SSH- und RDP-Protokolle in einer Testumgebung für kurze Zeit zulässig, aber für Produktionsumgebungen sehr unsicher. Achten Sie in Produktionsumgebungen darauf, nur Zugriff von der entsprechenden individuellen IP-Adresse oder vom entsprechenden Adressbereich zu autorisieren.

## Eine Sicherheitsgruppe für VPC EC2 erstellen
<a name="new-ec2securitygroup-vpc"></a>

**Warnung**  
EC2-Classic wurde am 15. August 2022 eingestellt. Wir empfehlen Ihnen, von EC2 -Classic zu einer VPC zu migrieren. Weitere Informationen finden Sie im Blogbeitrag [EC2-Classic Networking is Retiring — So bereiten Sie sich](https://aws.amazon.com/blogs/aws/ec2-classic-is-retiring-heres-how-to-prepare/) vor.

Im folgenden Beispiel für `New-EC2SecurityGroup` wird der Parameter `-VpcId` hinzugefügt, um eine Sicherheitsgruppe für die angegebene VPC zu erstellen.

```
PS > $groupid = New-EC2SecurityGroup `
    -VpcId "vpc-da0013b3" `
    -GroupName "myPSSecurityGroup" `
    -GroupDescription "EC2-VPC from PowerShell"
```

Verwenden Sie zum Anzeigen der anfänglichen Konfiguration das Cmdlet `Get-EC2SecurityGroup`. Standardmäßig enthält die Sicherheitsgruppe für eine VPC eine Regel, die den gesamten ausgehenden Datenverkehr zulässt. Beachten Sie, dass Sie eine Sicherheitsgruppe für EC2 VPC nicht namentlich referenzieren können.

```
PS > Get-EC2SecurityGroup -GroupId sg-5d293231

OwnerId             : 123456789012
GroupName           : myPSSecurityGroup
GroupId             : sg-5d293231
Description         : EC2-VPC from PowerShell
IpPermissions       : {}
IpPermissionsEgress : {Amazon.EC2.Model.IpPermission}
VpcId               : vpc-da0013b3
Tags                : {}
```

Verwenden Sie das Cmdlet `New-Object`, um die Berechtigungen für eingehenden Datenverkehr auf TCP-Port 22 (SSH) und TCP-Port 3389 zu definieren. Im folgenden Beispielskript werden Berechtigungen für TCP-Port 22 und 3389 von einer einzelnen IP-Adresse, `203.0.113.25/32`, definiert.

```
$ip1 = new-object Amazon.EC2.Model.IpPermission 
$ip1.IpProtocol = "tcp" 
$ip1.FromPort = 22 
$ip1.ToPort = 22 
$ip1.IpRanges.Add("203.0.113.25/32") 
$ip2 = new-object Amazon.EC2.Model.IpPermission 
$ip2.IpProtocol = "tcp" 
$ip2.FromPort = 3389 
$ip2.ToPort = 3389 
$ip2.IpRanges.Add("203.0.113.25/32") 
Grant-EC2SecurityGroupIngress -GroupId $groupid -IpPermissions @( $ip1, $ip2 )
```

Verwenden Sie das Cmdlet `Get-EC2SecurityGroup` erneut, um zu verifizieren, dass die Sicherheitsgruppe aktualisiert wurde.

```
PS > Get-EC2SecurityGroup -GroupIds sg-5d293231

OwnerId             : 123456789012
GroupName           : myPSSecurityGroup
GroupId             : sg-5d293231
Description         : EC2-VPC from PowerShell
IpPermissions       : {Amazon.EC2.Model.IpPermission}
IpPermissionsEgress : {Amazon.EC2.Model.IpPermission}
VpcId               : vpc-da0013b3
Tags                : {}
```

Um die eingehenden Regeln anzuzeigen, können Sie die Eigenschaft `IpPermissions` aus dem vom vorherigen Befehl zurückgegebenen Sammlungsobjekt abrufen.

```
PS > (Get-EC2SecurityGroup -GroupIds sg-5d293231).IpPermissions

IpProtocol       : tcp
FromPort         : 22
ToPort           : 22
UserIdGroupPairs : {}
IpRanges         : {203.0.113.25/32}

IpProtocol       : tcp
FromPort         : 3389
ToPort           : 3389
UserIdGroupPairs : {}
IpRanges         : {203.0.113.25/32}
```

# Suchen Sie mithilfe von Windows nach einem Amazon-Maschinen-Image PowerShell
<a name="pstools-ec2-get-amis"></a>

Wenn Sie eine Amazon-EC2-Instance starten, müssen Sie ein Amazon Machine Image (AMI) angeben, das als Vorlage für die Instance dient. Die IDs für AWS Windows AMIs ändern sich jedoch häufig, da sie AWS AMIs über die neuesten Updates und Sicherheitsverbesserungen verfügen. Sie können die [Get-EC2ImageByName](https://docs.aws.amazon.com/powershell/v4/reference/items/Get-EC2ImageByName.html)Cmdlets [Get-EC2Image](https://docs.aws.amazon.com/powershell/v4/reference/items/Get-EC2Image.html)und verwenden, um das aktuelle Windows zu finden AMIs und es abzurufen. IDs

**Topics**
+ [Get-EC2Image](#pstools-ec2-get-image)
+ [Get-EC2ImageByName](#pstools-ec2-get-ec2imagebyname)

## Get-EC2Image
<a name="pstools-ec2-get-image"></a>

Das `Get-EC2Image` Cmdlet ruft eine Liste der Dateien ab, die Sie verwenden können. AMIs 

Verwenden Sie den `-Owner` Parameter mit dem Array-Wert, `amazon, self` AMIs sodass nur diejenigen `Get-EC2Image` abgerufen werden, die Amazon oder Ihnen gehören. In diesem Zusammenhang bezeichnet *Sie* den Benutzer, dessen Anmeldeinformationen Sie zum Aufrufen des Cmdlets verwendet haben.

```
PS > Get-EC2Image -Owner amazon, self
```

Sie können den Umfang der Ergebnisse mit dem Parameter `-Filter` definieren. Um den Filter anzugeben, erstellen Sie ein Objekt des Typs `Amazon.EC2.Model.Filter`. Verwenden Sie beispielsweise den folgenden Filter, um nur Windows AMIs anzuzeigen.

```
$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
```

Im Folgenden finden Sie ein Beispiel für einen der vom Cmdlet AMIs zurückgegebenen Befehle. Die tatsächliche Ausgabe des vorherigen Befehls enthält Informationen für viele. AMIs

```
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
<a name="pstools-ec2-get-ec2imagebyname"></a>

Mit dem `Get-EC2ImageByName` Cmdlet können Sie die AWS AMIs Windows-Liste nach dem Typ der Serverkonfiguration filtern, an der Sie interessiert sind.

Bei Ausführung ohne Parameter (siehe unten) gibt das Cmdlet den vollständigen Satz der aktuellen Filternamen aus:

```
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
```

Um die zurückgegebenen Images zu beschränken, geben Sie mindestens einen Filternamen mit dem Parameter `Names` an.

```
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
```

# Starten Sie eine EC2 Amazon-Instance mit Windows PowerShell
<a name="pstools-ec2-launch"></a>

Um eine EC2 Amazon-Instance zu starten, benötigen Sie das key pair und die Sicherheitsgruppe, die Sie in den vorherigen Abschnitten erstellt haben. Sie benötigen außerdem die ID eines Amazon Machine Images (AMI). Weitere Informationen finden Sie in der folgenden -Dokumentation:
+  [Erstellen eines Schlüsselpaars](pstools-ec2-keypairs.md) 
+  [Erstellen Sie eine Sicherheitsgruppe mithilfe von Windows PowerShell](pstools-ec2-sg.md) 
+  [Suchen Sie mithilfe von Windows nach einem Amazon-Maschinen-Image PowerShell](pstools-ec2-get-amis.md) 

**Wichtig**  
Wenn Sie eine Instance starten, die nicht im kostenlosen Kontingent enthalten ist, fallen für diese Instance nach dem Start Gebühren an. Ihnen wird die Zeit berechnet, die die Instance ausgeführt wird, auch wenn diese nicht genutzt wird.

**Topics**
+ [Starten einer Instance in einer VPC](#new-ec2instance-vpc)
+ [Starten einer Spot-Instance in einer VPC](#new-ec2instance-spot)

## Starten einer Instance in einer VPC
<a name="new-ec2instance-vpc"></a>

**Warnung**  
EC2-Classic wurde am 15. August 2022 eingestellt. Wir empfehlen Ihnen, von EC2 -Classic zu einer VPC zu migrieren. Weitere Informationen finden Sie im Blogbeitrag [EC2-Classic Networking is Retiring — So bereiten Sie sich](https://aws.amazon.com/blogs/aws/ec2-classic-is-retiring-heres-how-to-prepare/) vor.

Mit dem folgenden Befehl wird eine einzelne `m1.small`-Instance im angegebenen privaten Subnetz gestartet. Die Sicherheitsgruppe muss für das angegebene Subnetz gültig sein.

```
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       : {}
```

Die Instance weist anfangs den Status `pending` auf, wechselt aber nach wenigen Minuten in den Status `running`. Verwenden Sie zum Anzeigen von Informationen zur Instance das Cmdlet `Get-EC2Instance`. Wenn mehr als eine Instance vorliegt, können Sie die Ergebnisse mit dem Parameter `Filter` über die Reservierungs-ID filtern. Erstellen Sie zunächst ein Objekt des Typs `Amazon.EC2.Model.Filter`. Rufen Sie dann das Cmdlet `Get-EC2Instance`, das den Filter verwendet, und zeigen Sie dann die Eigenschaft `Instances` an.

```
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
```

## Starten einer Spot-Instance in einer VPC
<a name="new-ec2instance-spot"></a>

Im folgenden Beispielskript wird eine Spot-Instance im angegebenen Subnetz angefordert. Die Sicherheitsgruppe muss für die VPC mit dem angegebenen Subnetz erstellt worden sein.

```
$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
```