

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

# 請求 Amazon EBS 磁碟區修改
<a name="requesting-ebs-volume-modifications"></a>

使用 Elastic Volumes，您可以動態增加大小，提高或降低效能，以及變更 Amazon EBS 磁碟區的磁碟區類型，而無需分開它們。

**程序概觀**

1. (選用) 最佳實務是在修改含有寶貴資料的磁碟區之前先建立磁碟區快照，以免需要還原變更。如需詳細資訊，請參閱 [建立 Amazon EBS 快照](ebs-creating-snapshot.md)。

1. 請求修改磁碟區。

1. 監控磁碟區修改進度。如需詳細資訊，請參閱 [監控 Amazon EBS 磁碟區修改的進度](monitoring-volume-modifications.md)。

1. 如果修改了磁碟區的大小，請擴展磁碟區的檔案系統，如此才能使用增加的儲存容量。如需詳細資訊，請參閱[在調整 Amazon EBS 磁碟區大小後擴展檔案系統](recognize-expanded-volume-linux.md)。

**Topics**
+ [使用 Elastic Volumes 修改 EBS 磁碟區](#modify-ebs-volume)
+ [若不支援 Elastic Volumes，請修改 EBS 磁碟區](#modify-volume-stop-start)
+ [初始化 Elastic Volumes 支援 (如有需要)](#initialize-modification-support)

## 使用 Elastic Volumes 修改 EBS 磁碟區
<a name="modify-ebs-volume"></a>

開始之前，請參閱以下內容：
+ [考量](ebs-modify-volume.md#elastic-volumes-considerations)
+ [限制](ebs-modify-volume.md#elastic-volumes-limitations)
+ [需求](modify-volume-requirements.md)

------
#### [ Console ]<a name="console-modify-size"></a>

**修改 EBS 磁碟區**

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

1. 在導覽窗格中，選擇 **Volumes** (磁碟區)。

1. 選取要修改的磁碟區，並選取 **Actions** (動作)、**Modify Volume** (修改磁碟區)。

1. **Modify Volume** (修改磁碟區) 螢幕將顯示磁碟區 ID 和磁碟區目前組態，包含類型、大小、IOPS 和輸送量。請依下列方式設定新組態值：
   + 若要修改類型，請選擇 **Volume Type** (磁碟區類型) 的值。
   + 若要修改大小，請在 **Size (大小)** 輸入新的整數值。
   + (僅限 `gp3`、`io1` 和 `io2`) 若要修改 IOPS，請為 **IOPS** 輸入新值。
   + (僅限 `gp3`) 若要修改輸送量，請為 **Throughput** (輸送量) 輸入新值。

1. 在您完成了變更磁碟區設定之後，請選擇 **Modify (修改)**。出現確認提示時，請選擇 **Modify** (修改)。

1. 如果您增加磁碟區的大小，則必須擴展磁碟區的分割區，以利用額外的儲存容量。如需詳細資訊，請參閱[在調整 Amazon EBS 磁碟區大小後擴展檔案系統](recognize-expanded-volume-linux.md)。

1. (*僅限 Windows 執行個體*) 如果您在沒有 NVMe AWS NVMe 驅動程式的執行個體上增加 NVMe 磁碟區的大小，您必須重新啟動執行個體，讓 Windows 看到新的磁碟區大小。如需安裝 AWS NVMe 驅動程式的詳細資訊，請參閱 [AWS NVMe 驅動程式](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/aws-nvme-drivers.html)。

------
#### [ AWS CLI ]

**修改 EBS 磁碟區**  
使用 [modify-volume](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-volume.html) 命令。例如，如果您的 磁碟區大小`gp2`為 100 GiB，則下列範例會將其組態變更為 `io1` 10，000 IOPS 且大小為 200 GiB 的 磁碟區類型。

```
aws ec2 modify-volume \
    --volume-id vol-01234567890abcdef \
    --volume-type io1 \
    --iops 10000 \
    --size 200
```

以下為範例輸出。

```
{
    "VolumeModification": {
        "TargetSize": 200,
        "TargetVolumeType": "io1",
        "ModificationState": "modifying",
        "VolumeId": "vol-01234567890abcdef",
        "TargetIops": 10000,
        "StartTime": "2022-01-19T22:21:02.959Z",
        "Progress": 0,
        "OriginalVolumeType": "gp2",
        "OriginalIops": 300,
        "OriginalSize": 100
    }
}
```

如果您增加磁碟區的大小，則必須擴展磁碟區的分割區，以利用額外的儲存容量。如需詳細資訊，請參閱[在調整 Amazon EBS 磁碟區大小後擴展檔案系統](recognize-expanded-volume-linux.md)。

------
#### [ PowerShell ]

**修改 EBS 磁碟區**  
使用 [Edit-EC2Volume](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2Volume.html) cmdlet。例如，如果您的 磁碟區大小`gp2`為 100 GiB，則下列範例會將其組態變更為 `io1` 10，000 IOPS 且大小為 200 GiB 的 磁碟區類型。

```
Edit-EC2Volume `
    -VolumeId vol-01234567890abcdef `
    -VolumeType io1 `
    -Iops 10000 `
    -Size 200
```

如果您增加磁碟區的大小，則必須擴展磁碟區的分割區，以利用額外的儲存容量。如需詳細資訊，請參閱[在調整 Amazon EBS 磁碟區大小後擴展檔案系統](recognize-expanded-volume-linux.md)。

------

## 若不支援 Elastic Volumes，請修改 EBS 磁碟區
<a name="modify-volume-stop-start"></a>

如果您是使用支援的執行個體類型，則可以使用 Elastic Volumes，動態修改 Amazon EBS 磁碟區的大小、效能和類型，無需卸離它們。

如果您無法使用 Elastic Volumes，但需要修改根 (開機) 磁碟區，則必須停止執行個體、修改磁碟區，然後重新啟動執行個體。

執行個體啟動後，檢查檔案系統大小，確認執行個體能否辨識更大的磁碟區空間。如為 Linux，請用 **df -h** 命令檢查檔案系統的大小。

```
[ec2-user ~]$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/xvda1            7.9G  943M  6.9G  12% /
tmpfs                 1.9G     0  1.9G   0% /dev/shm
```

如果大小未反映新擴展的磁碟區，您必須擴展裝置的檔案系統，如此執行個體才能使用新空間。如需詳細資訊，請參閱[在調整 Amazon EBS 磁碟區大小後擴展檔案系統](recognize-expanded-volume-linux.md)。

使用 Windows 執行個體時，您可能需要將磁碟區上線才能使用。如需詳細資訊，請參閱[讓 Amazon EBS 磁碟區可供使用](ebs-using-volumes.md)。您不需要重新格式化磁碟區。

## 初始化 Elastic Volumes 支援 (如有需要)
<a name="initialize-modification-support"></a>

若要修改在 2016 年 11 月 3 日 23:40 UTC 之前連接至執行個體的磁碟區，您必須先用下列其中一個動作初始化磁碟區修改支援：
+ 分離磁碟區，然後再連接
+ 停止並啟動執行個體

------
#### [ Console ]

**判斷您的執行個體是否已準備就緒**

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

1. 在導覽窗格中，選擇 **Instances (執行個體)**。

1. 選擇 **Show/Hide Columns** (顯示/隱藏欄) 圖示 (齒輪)。選取 **Launch time (啟動時間)** 屬性屬，然後選取 **Confirm (確認)**。

1. 依 **Launch Time** (啟動時間) 欄排序執行個體清單。對於截止日期之前啟動的每個執行個體，請選擇 **Storage (儲存體)** 標籤，然後檢查 **Attachment time (連接時間)** 欄，以查看其磁碟區的連接時間。

------
#### [ AWS CLI ]

**判斷您的執行個體是否已準備就緒**  
使用下列 [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) 命令，來判斷是否已在 2016 年 11 月 3 日 23:40 UTC 之前連接磁碟區。

```
aws ec2 describe-instances \
    --query "Reservations[*].Instances[*].[InstanceId,LaunchTime<='2016-11-01',BlockDeviceMappings[*][Ebs.AttachTime<='2016-11-01']]" \
    --output text
```

每個執行個體的輸出第一行將顯示其 ID，以及其啟動時間是否在分離日期之前 (True 或 False)。第一行後面有一行或多行，顯示是否已在分離日期之前連接每一個 EBS 磁碟區 (True 或 False)。在下列輸出範例中，您必須為第一個執行個體初始化磁碟區修改，因為它的啟動時間在分離日期之前，且其根磁碟機連接時間在分離日期之前。其他執行個體已備妥，因為其啟動時間在分離日期之後。

```
i-e905622e              True
True
i-719f99a8              False
True
i-006b02c1b78381e57     False
False
False
i-e3d172ed              False
True
```

------
#### [ PowerShell ]

**判斷執行個體是否已就緒**  
使用 [Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html) Cmdlet 來判斷磁碟區是否已在 2016 年 11 月 3 日 23：40 UTC 之前連接。

```
(Get-EC2Instance `
    -InstanceId i-1234567890abcdef0).Instances.BlockDeviceMappings | `
     Format-Table @{Name="VolumeId";Expression={$_.Ebs.VolumeId}}, `
                  @{Name="AttachTime";Expression={$_.Ebs.AttachTime}}
```

以下為範例輸出。

```
VolumeId              AttachTime
--------              ----------
vol-0b243c8d927752d2b 3/23/2020 12:21:14 AM
vol-043eadbeb4a8387c3 9/5/2020 7:39:22 PM
vol-0c3f0c4e55c082753 4/23/2019 4:07:40 PM
```

------