

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

# Amazon EC2 執行個體上磁碟區的區塊型儲存設備映射
<a name="block-device-mapping-concepts"></a>

您啟動的每個執行個體均有一個相關聯的根磁碟區，這可能是 Amazon EBS 磁碟區或執行個體儲存體磁碟區。您可以使用區塊型儲存設備映射，來指定執行個體啟動時要連接的其他 EBS 磁碟區或執行個體儲存體磁碟區。您也可以將其他的 EBS 磁碟區連接到執行中的執行個體。但是，唯一能將執行個體儲存體磁碟區連接至執行個體的方式，就是使用區塊型儲存設備映射來連接磁碟區，如同執行個體啟動時一樣。

**Topics**
+ [區塊型儲存設備映射概念](#block-device-mapping-def)
+ [將區塊型儲存設備映射新增至 AMI](ami-block-device-mapping.md)
+ [將區塊型儲存設備映射新增至 Amazon EC2 執行個體](instance-block-device-mapping.md)

## 區塊型儲存設備映射概念
<a name="block-device-mapping-def"></a>

*區塊型儲存設備*是一種儲存設備，它可依位元組或位元 (區塊) 的順序移動資料。這些裝置支援隨機存取，且通常使用緩衝 I/O。例如硬碟、CD-ROM 光碟機和快閃磁碟機。區塊型設備可實際連接至電腦，或如同實際連接至電腦一般進行遠端存取。

Amazon EC2 支援兩種類型的區塊型設備：
+ 執行個體存放磁碟區 (基礎硬體實際連接到執行個體主機電腦的虛擬設備)
+ EBS 磁碟區 (遠端儲存設備)

*區塊型設備映射*定義要連接到執行個體的區塊型儲存設備 (執行個體存放磁碟區和 EBS 磁碟區)。您可在建立 AMI 時指定區塊型設備映射，如此從 AMI 啟動的所有執行個體都會使用該映射。或者，也可在啟動執行個體時指定區塊型設備映射，則此映射將覆寫啟動執行個體之 AMI 中指定的映射。請注意，某一執行個體類型支援的所有 NVMe 執行個體存放磁碟區會在執行個體啟動時自動列舉，並獲指派設備名稱；將這些磁碟區加入區塊型設備映射中並無作用。

**Topics**
+ [區塊型儲存設備映射項目](#parts-of-a-block-device-mapping)
+ [區塊型儲存設備映射執行個體存放區 Caveat](#instance_store_caveats)
+ [區塊型儲存設備映射範例](#block-device-mapping-ex)
+ [如何在作業系統中將設備變為可用](#bdm-to-os)

### 區塊型儲存設備映射項目
<a name="parts-of-a-block-device-mapping"></a>

建立區塊型設備映射時，您需為要連接至執行個體的每個區塊型儲存設備指定下列資訊：
+ Amazon EC2 內使用的裝置名稱。執行個體的區塊型儲存設備驅動程式，會在掛載磁碟區時指派實際的磁碟區名稱。指派的名稱可能和 Amazon EC2 建議的名稱不一樣。如需詳細資訊，請參閱 [Amazon EC2 執行個體上磁碟區的裝置名稱](device_naming.md)。

對於執行個體存放區磁碟區，您也可以指定下列資訊：
+ 虛擬裝置：`ephemeral[0-23]`。請注意，可供執行個體使用的執行個體存放磁碟區數量和大小，根據執行個體類型而異。

對於 NVMe 執行個體存放區磁碟區，也適用下列資訊：
+ 這些磁碟區會自動列舉，並獲指派設備名稱；將這些磁碟區加入區塊型設備映射中並無作用。

對於 EBS 磁碟區，您也可以指定下列資訊：
+ 用於建立區塊型儲存設備之快照的 ID (snap-*xxxxxxxx*)。若已指定磁碟區大小，則此值是選用的。無法指定已封存快照的 ID。
+ 磁碟區的大小 (GiB)。指定的大小必須大於或等於指定快照的大小。
+ 是否在執行個體終止時刪除磁碟區 (`true` 或 `false`)。根磁碟區的預設值為 `true`，連接磁碟區的預設值為 `false`。建立 AMI 時，其區塊型設備映射會從執行個體繼承此設定。啟動執行個體時，其會從 AMI 繼承此設定。
+ 磁碟區類型對於一般用途 SSD 為 `gp2` 和 `gp3`，對於佈建 IOPS SSD 為 `io1` 和 `io2`，對於輸送量最佳化 HDD 為 `st1`，對於冷 HDD 為 `sc1`，對於磁帶為 `standard`。
+ 磁碟區支援的每秒輸入/輸出操作數 (IOPS)。(僅與 `io1` 和`io2` 磁碟區搭配使用。)
+ 有些執行個體類型支援多個 EBS 卡。您可以指定 EBS 卡索引，為要連接的磁碟區選取 EBS 卡。如需詳細資訊，請參閱[EBS 卡](ebs_cards.md)。

### 區塊型儲存設備映射執行個體存放區 Caveat
<a name="instance_store_caveats"></a>

使用區塊型設備映射中有執行個體存放磁碟區的 AMIs 啟動執行個體時，有幾個注意事項。
+ 部分執行個體類型包含的執行個體存放磁碟區較多，有些執行個體類型則完全沒有執行個體存放磁碟區。如果您的執行個體類型支援一個執行個體存放磁碟區，而 AMI 有兩個執行個體存放磁碟區的映射，則執行個體將以一個執行個體存放磁碟區啟動。
+ 執行個體存放磁碟區只能在啟動時映射。您無法停止沒有執行個體存放磁碟區的執行個體 (例如 `t2.micro`)，請將執行個體變更為支援執行個體存放磁碟區的類型，然後重新啟動含執行個體存放磁碟區的執行個體。但您可從執行個體建立 AMI，並在支援執行個體存放磁碟區的執行個體類型上啟動，然後將這些執行個體存放磁碟區映射至執行個體。
+ 如果啟動有執行個體存放磁碟區映射的執行個體，接著停止執行個體，將其變更為執行個體存放磁碟區較少的執行個體類型，並重新啟動執行個體，則一開始啟動的執行個體存放磁碟區映射仍會出現在執行個體中繼資料內。但是，只有該執行個體類型支援的執行個體存放磁碟區數量上限可供執行個體使用。
**注意**  
停止執行個體時，執行個體存放磁碟區上的所有資料都會遺失。
+ 根據啟動時的執行個體存放區容量而定，除非於啟動時指定，否則 M3 執行個體啟動時可能會忽略 AMI 執行個體存放區的區塊型設備映射。您應在啟動時指定執行個體存放區的區塊型設備映射，即使要啟動的 AMI 在 AMI 內具有執行個體存放磁碟區映射，以確保執行個體存放磁碟區在執行個體啟動時可用。

### 區塊型儲存設備映射範例
<a name="block-device-mapping-ex"></a>

下圖顯示 EBS 後端執行個體的區塊型設備映射範例。其將 `/dev/sdb` 映射至 `ephemeral0`，並映射兩個 EBS 磁碟區，一個映射至 `/dev/sdh`，另一個映射至 `/dev/sdj`。亦顯示為根磁碟區 `/dev/sda1` 的 EBS 磁碟區。

![\[執行個體、執行個體存放磁碟區和 EBS 磁碟區之間的關係。\]](http://docs.aws.amazon.com/zh_tw/AWSEC2/latest/UserGuide/images/block_device_mapping_figure.png)


請注意，此區塊型設備映射範例使用於本主題的命令和 API 範例中。您可在[指定 AMI 的區塊型儲存裝置對應](ami-block-device-mapping.md#create-ami-bdm)和[啟動執行個體時更新區塊型儲存裝置對應](instance-block-device-mapping.md#Using_OverridingAMIBDM)中找到建立區塊型設備映射的命令和 API 範例。

### 如何在作業系統中將設備變為可用
<a name="bdm-to-os"></a>

Amazon EC2 使用 `/dev/sdh` 和 `xvdh` 等設備名稱來描述區塊型儲存設備。Amazon EC2 使用區塊型設備映射來指定要連接到 EC2 執行個體的區塊型儲存設備。區塊型儲存設備連接至執行個體之後，作業系統必須掛載儲存設備，接著方可供存取。區塊型儲存設備與執行個體分離之後，作業系統會卸載儲存設備，於是便無法再存取。

**Linux 執行個體** – 執行個體第一次啟動時，區塊型儲存設備映射中指定的設備名稱會映射至對應的區塊型儲存設備。執行個體類型將決定預設要格式化及掛載的執行個體存放磁碟區。您可在啟動時掛載額外的執行個體存放磁碟區，只要不超過執行個體類型可用的執行個體存放磁碟區數量即可。如需詳細資訊，請參閱 [EC 2 執行個體的執行個體儲存體暫時區塊儲存](InstanceStorage.md)。執行個體的區塊型儲存設備驅動程式決定格式化及掛載磁碟區時要使用的設備。

**Windows 執行個體** – 執行個體第一次啟動時，區塊型儲存設備映射中指定的設備名稱會映射至對應的區塊型儲存設備，然後 Ec2Config 服務將初始化並掛載磁碟機。根磁碟區將掛載為 `C:\`。執行個體存放磁碟區將掛載為 `Z:\`、`Y:\`，並以此類推。掛載 EBS 磁碟區時，其可用任何可用的磁碟機代號掛載。不過，您可設定指派磁碟機代號至 EBS 磁碟機的方式；如需詳細資訊，請參閱 [Amazon EC2 Windows 執行個體的 Windows 啟動代理程式](configure-launch-agents.md)。