

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 尋找 Amazon EC2 執行個體類型
<a name="instance-discovery"></a>

您必須先選取要使用的執行個體類型，才能啟動執行個體。您選擇的執行個體類型可能取決於您的工作負載所需的資源，如運算、記憶體或儲存資源。識別數種可能適合您的工作負載的執行個體類型，並評估其在測試環境中的效能，可能是有利的做法。沒有任何替代方法可以測量您的應用程式在負載條件下的效能。

您可以使用 EC2 執行個體類型搜尋工具取得 EC2 執行個體類型的建議和指導。如需詳細資訊，請參閱[從 EC2 執行個體類型搜尋工具取得建議](get-ec2-instance-type-recommendations.md)。

如果您已經有執行中的 EC2 執行個體，您可以使用 AWS Compute Optimizer 取得有關應該用來改善效能、節省成本或兩者之執行個體類型的建議。如需詳細資訊，請參閱[從 Compute Optimizer 取得 EC2 執行個體建議](ec2-instance-recommendations.md)。

**Topics**
+ [使用主控台尋找執行個體類型](#instance-discovery-console)
+ [使用 描述執行個體類型 AWS CLI](#describe-instance-type-example)
+ [使用 尋找執行個體類型 AWS CLI](#instance-discovery-cli)
+ [使用 Tools for PowerShell 尋找執行個體類型](#instance-discovery-ps)

## 使用主控台尋找執行個體類型
<a name="instance-discovery-console"></a>

您可以使用 Amazon EC2 主控台來尋找符合您需求的執行個體類型。

**使用主控台尋找執行個體類型**

1. 在 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 從導覽列選取要在其中啟動執行個體的區域。無論您的位置為何，皆可選取任何可用的區域。

1. 在導覽窗格中，選擇 **Instance Types (執行個體類型)**。

1. (選用) 選取偏好設定 (齒輪) 圖示來選取要顯示的執行個體類型屬性，例如**隨需 Linux 定價**，然後選取 **Confirm (確認)**。或者，選取執行個體類型的名稱，以開啟其詳細資訊頁面，並透過主控台檢視可用的所有屬性。主控台不會顯示透過 API 或命令列可用的所有屬性。

1. 使用執行個體類型屬性，將顯示的執行個體類型清單篩選為僅符合您需求的執行個體類型。例如，您可以篩選下列屬性：
   + **Availability zones** (可用區域) – 可用區域、本機區域或 Wavelength 區域的名稱。如需詳細資訊，請參閱 [區域 (Region) 和區域 (Zone)](using-regions-availability-zones.md)。
   + **vCPUs** 或 **Cores** (核心) – vCPU 或核心的數量。
   + **Memory (GiB)** (記憶體 (GiB)) – 記憶體大小 (以 GiB 為單位)。
   + **Network performance** (網路效能) – 網路效能 (以 GB 為單位)。
   + **Local instance storage** (本機執行個體儲存體) – 表示執行個體類型是否具有本機執行個體儲存體 (`true` \$1 `false`)。

1. (選用) 若要查看並排比較結果，請選取多個執行個體類型的核取方塊。比較結果顯示在螢幕畫面的底部。

1. (選用) 若要將執行個體類型清單儲存為逗號分隔值 (.csv) 檔案以供進一步檢閱，請選擇 **Actions** (動作)、**Download list CSV** (下載清單 CSV)。檔案包括符合您所設定篩選的所有執行個體類型。

1. (選用) 若要使用滿足您需求的執行個體類型來啟動執行個體，請選取執行個體類型的核取方塊，然後選取 **Actions** (動作)、**Launch instance** (啟動執行個體)。如需詳細資訊，請參閱[使用主控台中的啟動執行個體精靈，啟動 EC2 執行個體](ec2-launch-instance-wizard.md)。

## 使用 描述執行個體類型 AWS CLI
<a name="describe-instance-type-example"></a>

您可以使用 [describe-instance-types](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instance-types.html) 命令來說明特定執行個體類型。

**完整說明執行個體類型**  
下列命令顯示指定執行個體類型的所有可用詳細資訊。輸出很冗長，因此在此處省略。

```
aws ec2 describe-instance-types \
    --instance-types t2.micro \
    --region us-east-2
```

**說明執行個體類型並篩選輸出**  
下列命令會顯示指定執行個體類型的網路詳細資訊。

```
aws ec2 describe-instance-types \
    --instance-types t2.micro \
    --region us-east-2 \
    --query "InstanceTypes[].NetworkInfo"
```

以下為範例輸出。

```
[
    {
        "NetworkPerformance": "Low to Moderate",
        "MaximumNetworkInterfaces": 2,
        "MaximumNetworkCards": 1,
        "DefaultNetworkCardIndex": 0,
        "NetworkCards": [
            {
                "NetworkCardIndex": 0,
                "NetworkPerformance": "Low to Moderate",
                "MaximumNetworkInterfaces": 2,
                "BaselineBandwidthInGbps": 0.064,
                "PeakBandwidthInGbps": 1.024
            }
        ],
        "Ipv4AddressesPerInterface": 2,
        "Ipv6AddressesPerInterface": 2,
        "Ipv6Supported": true,
        "EnaSupport": "unsupported",
        "EfaSupported": false,
        "EncryptionInTransitSupported": false,
        "EnaSrdSupported": false
    }
]
```

下列命令會顯示指定執行個體類型的可用記憶體。

```
aws ec2 describe-instance-types \
    --instance-types t2.micro \
    --region us-east-2 \
    --query "InstanceTypes[].MemoryInfo"
```

以下為範例輸出。

```
[
    {
        "SizeInMiB": 1024
    }
]
```

## 使用 尋找執行個體類型 AWS CLI
<a name="instance-discovery-cli"></a>

您可以使用 [describe-instance-types](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instance-types.html) 和 [describe-instance-type-offerings](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instance-type-offerings.html) 命令來尋找符合您需求的執行個體類型。

**Topics**
+ [依可用區域尋找執行個體類型](#find-instance-type-example-1)
+ [依可用的記憶體大小尋找執行個體類型](#find-instance-type-example-2)
+ [依可用的執行個體儲存體尋找執行個體類型](#find-instance-type-example-3)
+ [尋找支援休眠的執行個體類型](#find-instance-type-example-4)

### 範例 1：依可用區域尋找執行個體類型
<a name="find-instance-type-example-1"></a>

下列範例僅顯示指定的可用區域中所提供的執行個體類型。

```
aws ec2 describe-instance-type-offerings \
    --location-type "availability-zone" \
    --filters "Name=location,Values=us-east-2a" \
    --region us-east-2 \
    --query "InstanceTypeOfferings[*].[InstanceType]" --output text | sort
```

輸出是執行個體類型的清單，依字母順序排序。以下僅為輸出的開始：

```
a1.2xlarge
a1.4xlarge
a1.large
a1.medium
a1.metal
a1.xlarge
c4.2xlarge
   ...
```

### 範例 2：依可用的記憶體大小尋找執行個體類型
<a name="find-instance-type-example-2"></a>

下列範例僅顯示包含 64GiB (65536MiB) 記憶體的目前世代執行個體類型。

```
aws ec2 describe-instance-types \
    --filters "Name=current-generation,Values=true" "Name=memory-info.size-in-mib,Values=65536" \
    --region us-east-2 \
    --query "InstanceTypes[*].[InstanceType]" --output text | sort
```

輸出是執行個體類型的清單，依字母順序排序。以下僅為輸出的開始：

```
c5a.8xlarge
c5ad.8xlarge
c6a.8xlarge
c6g.8xlarge
c6gd.8xlarge
c6gn.8xlarge
c6i.8xlarge
c6id.8xlarge
c6in.8xlarge
   ...
```

### 範例 3：依可用的執行個體儲存體尋找執行個體類型
<a name="find-instance-type-example-3"></a>

下列範例顯示具有執行個體儲存體磁碟區所有 R7 執行個體的執行個體儲存體總大小。

```
aws ec2 describe-instance-types \
    --filters "Name=instance-type,Values=r7*" "Name=instance-storage-supported,Values=true" \
    --region us-east-2 \
    --query "InstanceTypes[].[InstanceType, InstanceStorageInfo.TotalSizeInGB]" \
    --output table
```

以下為範例輸出。

```
---------------------------
|  DescribeInstanceTypes  |
+----------------+--------+
|  r7gd.xlarge   |  237   |
|  r7gd.8xlarge  |  1900  |
|  r7gd.16xlarge |  3800  |
|  r7gd.medium   |  59    |
|  r7gd.4xlarge  |  950   |
|  r7gd.2xlarge  |  474   |
|  r7gd.metal    |  3800  |
|  r7gd.large    |  118   |
|  r7gd.12xlarge |  2850  |
+----------------+--------+
```

### 範例 4：尋找支援休眠的執行個體類型
<a name="find-instance-type-example-4"></a>

下列範例顯示支援休眠的執行個體類型。

```
aws ec2 describe-instance-types \
    --filters "Name=hibernation-supported,Values=true" \
    --region us-east-2 \
    --query "InstanceTypes[*].[InstanceType]" \
    --output text | sort
```

輸出是執行個體類型的清單，依字母順序排序。以下僅為輸出的開始：

```
c4.2xlarge
c4.4xlarge
c4.8xlarge
c4.large
c4.xlarge
c5.12xlarge
c5.18xlarge
c5.2xlarge
c5.4xlarge
c5.9xlarge
...
```

## 使用 Tools for PowerShell 尋找執行個體類型
<a name="instance-discovery-ps"></a>

您可使用 [Get-EC2InstanceType](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2InstanceType.html) 與 [Get-EC2InstanceTypeOffering](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2InstanceTypeOffering.html) cmdlet 來尋找符合您需求的執行個體類型。

**Topics**
+ [依可用區域尋找執行個體類型](#find-instance-type-by-az-ps)
+ [依可用的記憶體大小尋找執行個體類型](#find-instance-type-by-memory-ps)
+ [依可用的執行個體儲存體尋找執行個體類型](#find-instance-type-by-storage-ps)
+ [尋找支援休眠的執行個體類型](#find-instance-type-hibernation-ps)

### 依可用區域尋找執行個體類型
<a name="find-instance-type-by-az-ps"></a>

下列範例僅顯示指定的可用區域中所提供的執行個體類型。

```
(Get-EC2InstanceTypeOffering `
    -LocationType "availability-zone" `
    -Region us-east-2 `
    -Filter @{Name="location"; Values="us-east-2a"}).InstanceType | Sort-Object `
```

### 依可用的記憶體大小尋找執行個體類型
<a name="find-instance-type-by-memory-ps"></a>

下列範例僅顯示包含 64GiB (65536MiB) 記憶體的目前世代執行個體類型。

```
(Get-EC2InstanceType `
    -Filter @{Name="current-generation"; Values="true"}, 
            @{Name="memory-info.size-in-mib"; Values="65536"}).InstanceType | Sort-Object
```

### 依可用的執行個體儲存體尋找執行個體類型
<a name="find-instance-type-by-storage-ps"></a>

下列範例顯示具有執行個體儲存體磁碟區所有 R7 執行個體的執行個體儲存體總大小。

```
Get-EC2InstanceType `
    -Filter @{Name="instance-type"; Values="r7*"}, 
            @{Name="instance-storage-supported"; Values="true"} | `
     Select InstanceType, @{Name="TotalSizeInGB"; Expression={($_.InstanceStorageInfo.TotalSizeInGB)}}
```

以下為範例輸出。

```
InstanceType  TotalSizeInGB
------------  -------------
r7gd.8xlarge           1900
r7gd.16xlarge          3800
r7gd.xlarge             237
r7gd.4xlarge            950
r7gd.medium              59
r7gd.2xlarge            474
r7gd.large              118
r7gd.metal             3800
r7gd.12xlarge          2850
```

### 尋找支援休眠的執行個體類型
<a name="find-instance-type-hibernation-ps"></a>

下列範例顯示支援休眠的執行個體類型。

```
(Get-EC2InstanceType `
    -Filter @{Name="hibernation-supported"; Values="true"}).InstanceType | Sort-Object
```