

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

# 教學課程：建立要與資料庫執行個體搭配使用的 (VPC)(雙堆疊模式)
<a name="CHAP_Tutorials.CreateVPCDualStack"></a>

常用案例包括以 Amazon VPC 服務為基礎的虛擬私有雲端 (VPC) 中的資料庫執行個體。此 VPC 與在相同 VPC 中執行的公有 Amazon EC2 執行個體共用資料。

於本教學課程中，您將為此案例建立與以雙堆疊模式執行之資料庫搭配使用的 VPC。雙堆疊模式，可透過 IPv6 定址通訊協定啟用連線。若需 IP 定址的詳細資訊，請參閱 [Amazon RDS IP 定址](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.IP_addressing)。

大部分地區都支援雙堆疊網路執行個體。如需更多資訊，請參閱[區域和版本可用性](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.IP_addressing.RegionVersionAvailability)。若要查看雙堆疊模式的限制，請參閱 [雙堆疊網路資料庫執行個體的限制](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.IP_addressing.dual-stack-limitations)。

此案例可以下列圖表顯示。

 

![\[VPC 案例 (雙堆疊模式)\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/con-VPC-sec-grp-dual-stack.png)


如需其他案例的相關資訊，請參閱[在 VPC 中存取資料庫執行個體的案例](USER_VPC.Scenarios.md)。

您的資料庫執行個體僅需供您的 Amazon EC2 執行個體使用，無需供公有網際網路使用。因此，您建立同時包含公有和私有子網路的 VPC。Amazon EC2 執行個體是在公有子網路中託管，如此其可連接至公有網際網路。資料庫執行個體被託管於私有子網路中。Amazon EC2 執行個體可連線至資料庫執行個體，因為其託管於相同 VPC 中。但是，資料庫執行個體不可用於公有網際網路，以提供更高的安全性。

本教學課程會在單獨的可用區域中設定額外的公有子網路和私有子網路。教學課程不會使用這些子網路。RDS 資料庫子網路群組需要至少兩個可用區域中的子網路。額外的子網路可讓您在未來輕鬆切換到多可用區域資料庫執行個體部署。

若要建立使用雙堆疊模式的資料庫執行個體，請為 **Network type (網路類型)** 設定指定 **Dual-stack mode (雙堆疊模式)**。您也可以使用相同設定來修改資料庫執行個體。如需詳細資訊，請參閱[建立 Amazon RDS 資料庫執行個體](USER_CreateDBInstance.md)及[修改 Amazon RDS 資料庫執行個體](Overview.DBInstance.Modifying.md)。

本教學課程說明為 Amazon RDS 資料庫執行個體配置 VPC。如需 Amazon VPC 的詳細資訊，請參閱《Amazon VPC 使用者指南》[https://docs.aws.amazon.com/vpc/latest/userguide/](https://docs.aws.amazon.com/vpc/latest/userguide/)。

## 建立含私有和公有子網路的 VPC
<a name="CHAP_Tutorials.CreateVPCDualStack.VPCAndSubnets"></a>

使用下列程序來建立一個同時含公有和私有子網路的 VPC。

**建立 VPC 和子網路**

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

1. 在 的右上角 AWS 管理主控台，選擇要在其中建立 VPC 的區域。此範例使用 美國東部 (俄亥俄) 區域。

1. 在左上角，選擇 **VPC Dashboard** (VPC 儀表板)。若要開始建立 VPC，請選擇 **Create VPC** (建立 VPC)。

1. 在 **VPC Settings** (VPC 設定) 的 **Resources to create** (建立資源) 下，選擇 **VPC and more** (VPC 和更多)。

1. 對於剩下的 **VPC 設定**，設定這些值：
   + **Name tag auto-generation** (自動產生名稱標籤) – **tutorial-dual-stack**
   + **IPv4 CIDR block** (IPv4 CIDR 區塊) – **10.0.0.0/16**
   + **IPv6 CIDR block** (IPv6 CIDR 區塊) – **Amazon-provided IPv6 CIDR block** (Amazon 提供的 IPv6 CIDR 區塊)
   + **Tenancy** (租用) – **Default** (預設)
   + **Number of Availability Zones (AZs)** (可用區域 (AZ) 的數量) – **2**
   + **Customize AZs** (自訂可用區域) - 保留預設值。
   + **Number of public subnet** (公有子網路數量) – **2**
   + **Number of private subnets** (私有子網路數量) – **2**
   + **Customize subnets CIDR blocks** (自訂子網路 CIDR 區塊) – 保留預設值。
   + **NAT gateways (\$1)** (NAT 閘道 (\$1)) – **None** (無)
   + **Egress only internet gateway** (僅輸出網際網路閘道) – **No** (否)
   + **VPC endpoints** (VPC 端點) – **None** (無)
   + **DNS options** (DNS 選項) – 保留預設值。
**注意**  
Amazon RDS 需要至少兩個不同可用區域中的子網路，以支援多可用區域資料庫執行個體部署。本教學課程會建立單一可用區部署，但是，可讓您會來輕鬆轉換為多區域可用資料庫執行個體部署。

1. 選擇**建立 VPC**。

## 建立公有 Amazon EC2 執行個體的 VPC 安全群組
<a name="CHAP_Tutorials.CreateVPCDualStack.SecurityGroupEC2"></a>

接著建立公開存取的 VPC 安全群組。若要連接至 VPC 中的公有 EC2 執行個體，請將傳入規則新增至 VPC 安全群組，以允許流量從網際網路連接。

**建立 VPC 安全群組**

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

1. 選擇 **VPC Dashboard (VPC 儀表板)**，再選擇 **Security Groups (安全群組)**，然後選擇 **Create security group (建立安全群組)**。

1. 在 **Create security group (建立安全群組)** 頁面上，設定下列值：
   + **安全群組名稱：****tutorial-dual-stack-securitygroup**
   + **描述:** **Tutorial Dual-Stack Security Group**
   + **VPC:** 選擇您先前建立的 VPC，例如 **vpc-*識別符* (tutorial-dual-stack-vpc)** 

1. 將傳入規則新增至安全群組

   1. 決定用於使用安全殼層 (SSH) 連接至 VPC 中 EC2 執行個體的 IP 地址。

      網際網路通訊協定第 4 版 (IPv4) 位址的範例為 `203.0.113.25/32`。網際網路通訊協定第 6 版 (IPv6) 地址範圍的範例為 `2001:db8:1234:1a00::/64`。

      在許多情況下，您可能透過網際網路服務供應商 (ISP) 或是從沒有靜態 IP 地址的防火牆進行連線。若是如此，請找出用戶端電腦所使用的 IP 地址範圍。
**警告**  
若您將 `0.0.0.0/0` 用於 IPv4 或 `::0` 用於 IPv6，則可讓所有 IP 地址使用 SSH 存取您的公有執行個體。通常在測試環境中短暫使用此方法是沒有問題的，但在生產環境則不安全。在生產環境中，建議您只授權特定 IP 地址或特定範圍的地址存取您的執行個體。

   1. 在 **Inbound rules (傳入規則)** 區段中，選擇 **Add rule (新增規則)**。

   1. 針對您的新傳入規則設定下列值，來允許透過 Secure Shell (SSH) 存取您的 Amazon EC2 執行個體。若執行此動作，您可連線至 EC2 執行個體來安裝 SQL 用戶端和其他應用程式。指定 IP 地址，讓您可以存取 EC2 執行個體：
      + **Type (類型)**：**SSH**
      + **Source (來源)**：來自步驟 a 的 IP 地址或範圍。IPv4 IP 地址的範例為 **203.0.113.25/32**。IPv6 IP 地址的範例為 **2001:DB8::/32**。

1. 請選擇 **Create security group (建立安全群組)** 以建立安全群組。

   請記下安全群組 ID，因為稍後在本教學中會需要它。

## 建立私有資料庫執行個體的 VPC 安全群組
<a name="CHAP_Tutorials.CreateVPCDualStack.SecurityGroupDB"></a>

若要讓您的資料庫執行個體保持私有，請建立第二個安全群組供私有存取。若要連線至 VPC 中的私有資料庫執行個體，請將傳入規則新增至 VPC 安全群組。這些規則僅允許來自 Amazon EC2 執行個體的流量。

**建立 VPC 安全群組**

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

1. 選擇 **VPC Dashboard (VPC 儀表板)**，再選擇 **Security Groups (安全群組)**，然後選擇 **Create security group (建立安全群組)**。

1. 在 **Create security group (建立安全群組)** 頁面上，設定下列值：
   + **安全群組名稱：****tutorial-dual-stack-db-securitygroup**
   + **描述:** **Tutorial Dual-Stack DB Instance Security Group**
   + **VPC:** 選擇您先前建立的 VPC，例如 **vpc-*識別符* (tutorial-dual-stack-vpc)**

1. 將傳入規則新增至安全群組：

   1. 在 **Inbound rules (傳入規則)** 區段中，選擇 **Add rule (新增規則)**。

   1. 針對您的新傳入規則設定下列值，來允許連接埠 3306 上來自 Amazon EC2 執行個體的 MySQL 流量。如果這樣做，您可以從 EC2 執行個體連線至資料庫執行個體。這樣做表示您可以從 EC2 執行個體將資料傳送至您的資料庫。
      + **Type (類型)**：**MySQL/Aurora**
      + **Source** (來源)：您先前在本教學課程中建立的 **tutorial-dual-stack-securitygroup** 安全群組的識別符，例如 **sg-9edd5cfb**。

1. 若要建立安全群組，請選擇 **Create security group (建立安全群組)**。

## 建立資料庫子網路群組
<a name="CHAP_Tutorials.CreateVPCDualStack.DBSubnetGroup"></a>

*資料庫子網路群組*是您在 VPC 中建立，然後指派給資料庫執行個體的子網路的集合。透過使用資料庫子網路群組，您可在建立資料庫執行個體時指定特定的 VPC。如要建立與 `DUAL` 相容的資料庫子網路群組，則所有子網路必須與 `DUAL` 相容。如要成為 `DUAL` 相容，子網路必須具有與其關聯的 IPv6 CIDR。

**建立資料庫子網路群組**

1. 識別 VPC 中資料庫的私有子網路。

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

   1. 選擇 **VPC Dashboard** (VPC 儀表板)，然後選擇 **Subnets** (子網路)。

   1. 記下名為 **tutorial-dual-stack-subnet-private1-us-west-2a** 和 **tutorial-dual-stack-subnet-private2-us-west-2b** 之子網路的子網路 ID。

      當您建立資料庫子網路群組時，您將需要子網路 ID。

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

   請確定您連接到 Amazon RDS 主控台，而非 Amazon VPC 主控台。

1. 在導覽窗格中選擇 **Subnet groups (子網路群組)**。

1. 選擇 **Create DB Subnet Group** (建立資料庫子網路群組)。

1. 在 **Create DB subnet group** (建立資料庫子網路群組) 頁面上，於 **Subnet group details** (子網路群組詳細資訊) 中設定下列值：
   + **名稱:** **tutorial-dual-stack-db-subnet-group**
   + **描述:** **Tutorial Dual-Stack DB Subnet Group**
   + **VPC (VPC)：** **tutorial-dual-stack-vpc (vpc-*識別符*)** 

1. 在 **Add subnets (新增子網路)** 區段中，選擇 **Availability Zones (可用區域)** 和 **Subnets (子網路)** 選項的值。

   對於此教學課程，為 **Availability Zones** (可用區域) 選擇 **us-east-2a** 和 **us-east-2b**。對於 **Subnets** (子網路)，選擇您在上一個步驟找到的私有子網路。

1. 選擇**建立**。

您的新資料庫子網路群組會顯示在 RDS 主控台的資料庫子網路群組清單中。您可以選擇資料庫子網路群組來查看其詳細資訊。其中包括受支援的定址通訊協定、與該組相關聯的所有子網路，以及資料庫子網路群組支援的網路類型。

## 在雙堆疊模式下建立 Amazon EC2 執行個體
<a name="CHAP_Tutorials.CreateVPCDualStack.CreateEC2Instance"></a>

若要建立 Amazon EC2 執行個體，請遵循《Amazon EC2 使用者指南》**中的[使用新的啟動執行個體精靈啟動執行個體](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html)。

在 **Configure Instance Details** (設定執行個體詳細資訊) 頁面上設定這些值，而其他值都維持預設值：
+ **網路**：選擇具備公有和私有子網路的現有 VPC，例如 [建立含私有和公有子網路的 VPC](#CHAP_Tutorials.CreateVPCDualStack.VPCAndSubnets) 中建立的 **tutorial-dual-stack-vpc** (vpc-*identifier*)。
+ **Subnet** (子網路) – 選擇現有的公有子網路，例如 [建立公有 Amazon EC2 執行個體的 VPC 安全群組](#CHAP_Tutorials.CreateVPCDualStack.SecurityGroupEC2) 中建立的 **subnet-*識別符* \$1 tutorial-dual-stack-subnet-public1-us-east-2a \$1 us-east-2a**。
+ **Auto-assign Public IP** (自動指派公有 IP) – 選擇 **Enable** (啟用)。
+ **Auto-assign IPv6 IP** (自動指派 IPv6 IP) – 選擇 **Enable** (啟用)。
+ **Firewall (security groups)** 防火牆 (安全群組) – 選擇 **Select an existing security group** (選取現有的安全群組)。
+ **Common security groups** (一般安全群組) - 選擇現有的安全群組，例如在 [建立公有 Amazon EC2 執行個體的 VPC 安全群組](#CHAP_Tutorials.CreateVPCDualStack.SecurityGroupEC2) 中建立的 `tutorial-securitygroup`。請確定您選擇的安全性群組包含安全殼層 (SSH) 和 HTTP 存取的輸入規則。

## 在雙堆疊模式下建立資料庫執行個體
<a name="CHAP_Tutorials.CreateVPCDualStack.CreateDBInstance"></a>

在此步驟中，您將建立在雙堆疊模式下執行的資料庫執行個體。

**建立資料庫執行個體**

1. 登入 AWS 管理主控台 ，並在 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)：// 開啟 Amazon RDS 主控台。

1. 在主控台的右上角，選擇 AWS 區域 您要建立資料庫執行個體的 。此範例使用 美國東部 (俄亥俄) 區域。

1. 在導覽窗格中，選擇 **Databases** (資料庫)。

1. 選擇 **Create database** (建立資料庫)。

1. 在 **Create database** (建立資料庫) 頁面上，確保已選擇 **Standard create** (標準建立) 選項，接著選擇 MySQL 資料庫引擎類型。

1. 在 **Connectivity** (連線) 區段中，設定下列值：
   + **Network type** (網路類型) – 選擇 **Dual-stack mode** (雙堆疊模式)。  
![\[主控台中的 Network type (網路類型) 區段，選取了 Dual-stack mode (雙堆疊模式)\]](http://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/UserGuide/images/dual-stack-mode.png)
   + **Virtual private cloud (VPC)** 虛擬私有雲端 (VPC) – 選擇具備公有和私有子網路的現有 VPC，例如 [建立含私有和公有子網路的 VPC](#CHAP_Tutorials.CreateVPCDualStack.VPCAndSubnets) 中建立的 **tutorial-dual-stack-vpc** (vpc-*識別符*)。

     VPC 必須具有位於不同可用區域的子網路。
   + **DB Subnet group** (資料庫子網路群組) – 選擇 VPC 的資料庫子網路群組，例如 [建立資料庫子網路群組](#CHAP_Tutorials.CreateVPCDualStack.DBSubnetGroup) 中建立的 **tutorial-dual-stack-db-subnet-group**。
   + **Public access** (公有存取) – 選擇 **No** (否)。
   + **VPC security group (firewall)** (VPC 安全群組 (防火牆)) – 選取 **Choose existing** (選擇現有)。
   + **Existing VPC security groups (現有 VPC 安全群組)** – 選擇設定為私有存取的現有 VPC 安全群組，例如在 [建立私有資料庫執行個體的 VPC 安全群組](#CHAP_Tutorials.CreateVPCDualStack.SecurityGroupDB) 中建立的 **tutorial-dual-stack-db-securitygroup**。

     選擇與各項相關聯的 **X**，以移除其他安全群組，例如預設安全群組。
   + **Availability Zone** (可用區域) – 選擇 **us-west-2a**。

     若要避免跨可用區域流量，請確定資料庫執行個體和 EC2 執行個體位於相同的可用區域。

1. 在其餘區段，指定資料庫執行個體的設定。如需每項設定的相關資訊，請參閱 [資料庫執行個體的設定](USER_CreateDBInstance.Settings.md)。

## 連接至您的 Amazon EC2 執行個體和資料庫執行個體
<a name="CHAP_Tutorials.CreateVPCDualStack.Connect"></a>

在雙堆疊模式下建立 Amazon EC2 執行個體和資料庫執行個體後，您可以使用 IPv6 通訊協定連線到每個執行個體。如要使用 IPv6 通訊協定連線至 Amazon EC2 執行個體，請按照《Amazon EC2 使用者指南》**中[連接至您的 Linux 執行個體](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstances.html)的指示進行。

若要從 Amazon EC2 執行個體連線至您的 RDS for MySQL 資料庫執行個體，請依照[連線至 MySQL 資料庫執行個體](CHAP_GettingStarted.CreatingConnecting.MySQL.md#CHAP_GettingStarted.Connecting.MySQL)中的指示進行。

## 刪除 VPC
<a name="CHAP_Tutorials.CreateVPCDualStack.Delete"></a>

為此教學課程建立 VPC 和其他資源後，如果不再需要這些資源，便可以將它們刪除。

若您在針對此教學課程建立的 VPC 中新增資源，則可能需要先刪除這些資源，才能刪除 VPC。資源範例為 Amazon EC2 執行個體或資料庫執行個體。如需詳細資訊，請參閱《*Amazon VPC 使用者指南*》中的[刪除 VPC](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#VPC_Deleting)。

**刪除 VPC 和相關資源**

1. 刪除資料庫子網路群組：

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

   1. 在導覽窗格中選擇 **Subnet groups (子網路群組)**。

   1. 選取要刪除的資料庫子網路群組，例如 **tutorial-db-subnet-group**。

   1. 選擇 **Delete** (刪除)，然後在確認視窗中選擇 **Delete** (刪除)。

1. 請記下 VPC ID：

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

   1. 選擇 **VPC Dashboard** (VPC 儀表板)，然後選擇 **VPC**。

   1. 在清單中，識別您建立的 VPC，例如 **tutorial-dual-stack-vpc**。

   1. 請記下您所建立 VPC 的 **VPC ID**。於後續步驟中，您會需要此 VPC ID。

1. 刪除安全群組：

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

   1. 選擇 **VPC Dashboard** (VPC 儀表板)，然後選擇 **Security Groups** (安全群組)。

   1. 選取 Amazon RDS 資料庫執行個體的安全群組，例如 **tutorial-dual-stack-db-securitygroup**。

   1. 若為 **Actions (動作)**，選擇 **Delete security groups (刪除安全群組)**，然後在確認頁面上選擇 **Delete (刪除)**。

   1. 在 **Security Groups (安全群組)** 頁面上，選取 Amazon EC2 執行個體的安全群組，例如 **tutorial-dual-stack-securitygroup**。

   1. 若為 **Actions (動作)**，選擇 **Delete security groups (刪除安全群組)**，然後在確認頁面上選擇 **Delete (刪除)**。

1. 刪除 NAT 閘道：

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

   1. 選擇 **VPC Dashboard** (VPC 儀表板)，然後選擇 **NAT Gateways** (NAT 閘道)。

   1. 選取您建立之 VPC 的 NAT 閘道。使用 VPC ID 識別正確的 NAT 閘道。

   1. 若為 **Actions (動作)**，選擇 **Delete NAT gateway (刪除 NAT 閘道)**。

   1. 在確認頁面上，輸入 **delete**，然後選擇 **Delete** (刪除)。

1. 刪除 VPC

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

   1. 選擇 **VPC Dashboard** (VPC 儀表板)，然後選擇 **VPC**。

   1. 選取您要刪除的 VPC，例如 **tutorial-dual-stack-vpc**。

   1. 對於 **Actions (動作)**，請選擇 **Delete VPC (刪除 VPC)**。

      確認頁面會顯示與 VPC 相關聯的其他資源，這些資源也將遭到刪除，包括與其相關聯的子網路。

   1. 在確認頁面上，輸入 **delete**，然後選擇 **Delete** (刪除)。

1. 釋放彈性 IP 地址：

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

   1. 選擇 **EC2 Dashboard** (EC2 儀表板)，然後選擇 **Elastic IPs** (彈性 IP)。

   1. 選取您要釋放的彈性 IP 地址。

   1. 若為 **Actions (動作)**，選擇 **Release Elastic IP addresses (釋放彈性 IP 地址)**。

   1. 在確認頁面上，選擇 **Release** (釋放)。