

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

# 將 Elastic Beanstalk 環境從 EC2-Classic 遷移至 VPC
<a name="vpc-ec2migration"></a>

本主題說明如何將 Elastic Beanstalk 環境從 EC2-Classic 網路平台遷移至 [Amazon Virtual Private Cloud](https://docs.aws.amazon.com/vpc/latest/userguide/) (Amazon VPC) 網路的不同選項。

如果您在 2013 年 12 月 4 日之前建立 AWS 帳戶，在某些 中可能會有使用 EC2-Classic 網路組態的環境 AWS 區域。在 2013 年 12 月 4 日當天或之後建立的所有 AWS 帳戶，在每個區域中都已經是僅限 VPC AWS 。唯一的豁免情況為，因為支援請求而啟用 Amazon EC2-Classic。

**注意**  
您可以在 [Elastic Beanstalk 主控台](https://console.aws.amazon.com/elasticbeanstalk)的[組態概觀頁面](environments-cfg-console.md#environments-cfg-console.overview)上的 **Network configuration** (網路組態) 類別中，檢視環境的網路組態設定。

## 您應該移轉的理由
<a name="vpc-ec2migration.benefits"></a>

Amazon EC2-Classic 將於 2022 年 8 月 15 日終止其標準支援。為避免工作負載中斷，建議您在 2022 年 8 月 15 日之前從 Amazon EC2-Classic 遷移到 VPC。我們也會要求您未來不要在 Amazon EC2-Classic 上啟動任何 AWS 資源，而是改用 Amazon VPC。

當您將 Elastic Beanstalk 環境從 Amazon EC2-Classic 遷移至 Amazon VPC 時，您必須建立新的 AWS 帳戶。您還必須在新 AWS 帳戶中重新建立 EC AWS 2-Classic 環境。 EC2-Classic 不必為環境執行任何額外的組態工作，即可使用預設 VPC。如果預設 VPC 不符合您的要求，您可以手動建立自訂 VPC 並將該 VPC 與您的環境建立關聯。



或者，如果您現有的 AWS 帳戶有您無法遷移至新 AWS 帳戶的資源，請將 VPC 新增至目前的帳戶。然後，將您的環境設定為使用 VPC。

如需詳細資訊，請參閱 [EC2-Classic 網路正在淘汰 - 本文介紹如何準備](https://aws.amazon.com/blogs/aws/ec2-classic-is-retiring-heres-how-to-prepare/)的部落格文章。

## 將環境從 EC2-Classic 遷移到新 AWS 帳戶 （建議）
<a name="vpc-ec2migration.newaccount"></a>

如果您還沒有在 2013 年 12 月 4 日當天或之後建立 AWS 的帳戶，請建立新的帳戶。您將會將您的環境遷移到這個新帳戶。

1. 您的新 AWS 帳戶為其環境提供預設 VPC。如果您不需要建立自訂 VPC，請跳至步驟 2。

   您可以使用下列其中一種方式建立自訂 VPC：
   + 使用 Amazon VPC 主控台精靈，透過其中一個可用的組態選項，快速建立 VPC。如需詳細資訊，請參閱 [Amazon VPC 主控台精靈組態](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_wizard.html)。
   + 如果您對 VPC 有更具體的要求，請在 Amazon VPC 主控台上建立自訂 VPC。例如，如果您的使用案例需要特定數量的子網路，我們建議您執行這項操作。如需詳細資訊，請參閱 [VPC 和子網路](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html)。
   + 如果您偏好搭配 Elastic Beanstalk 環境使用範本，請使用 GitHub 網站上的 [elastic-beanstalk-samples](https://github.com/awsdocs/elastic-beanstalk-samples/) 儲存庫建立 VPC。 GitHub AWS CloudFormation 此儲存庫包含 CloudFormation 範本。如需詳細資訊，請參閱[搭配 Amazon VPC 使用 Elastic Beanstalk](vpc.md)。
**注意**  
您也可以使用建立新的環境精靈，在新 AWS 帳戶中重新建立環境的同時建立自訂 VPC。 [建立新的環境精靈](environments-create-wizard.md)如果您使用精靈並選擇建立自訂 VPC，則精靈將您重新引導至 Amazon VPC 主控台。

1. 在您的新 AWS 帳戶中，建立新的環境。我們建議環境包含與您要從中遷移之 AWS 帳戶中現有環境相同的組態。您可以使用下列其中一種方法來執行這項作業。
**注意**  
如果您的新環境必須在遷移之後使用相同的 CNAME，請在 EC2-Classic 平台上終止原始環境。這會釋出 CNAME 以供使用。然而，執行這樣的方式將會導致該環境停機，並且可能會面臨的風險是另一個客戶可能在您終止 EC2-Classic 環境和建立新環境之間的這段時間內，選擇您的 CNAME。如需詳細資訊，請參閱[終止 Elastic Beanstalk 環境](using-features.terminating.md)。  
對於擁有自己專屬網域名稱的環境，CNAME 沒有這個問題。您只需更新您的網域名稱系統 (DNS)，即可將請求轉寄到您的新 CNAME。
   +  使用 [Elastic Beanstalk 主控台](https://console.aws.amazon.com/elasticbeanstalk)上的[建立新環境精靈](environments-create-wizard.md)。該精靈提供建立自訂 VPC 的選項。如果您選擇不建立自訂 VPC，則會指派預設 VPC。
   + 使用 Elastic Beanstalk 命令列界面 (EB CLI) 在新 AWS 帳戶中重新建立您的環境。**eb create** 命令描述中的其中一個[範例](eb3-create.md#eb3-createexample1)會示範在自訂 VPC 中建立環境的方法。如果您不提供 VPC ID，則環境會使用預設 VPC。

     透過使用此方法，您可以在兩個 AWS 帳戶中使用已儲存的組態檔案。因此，您不需要手動輸入所有的組態資訊。然而，您必須需要使用 [eb config save](eb3-config.md) 命令來儲存您正在遷移的 EC2-Classic 環境的組態設定。將儲存的組態檔案複製到新帳號環境的新目錄。
**注意**  
您必須編輯在已儲存的組態檔案中的某些資料，然後才能在新帳戶中使用。您還必須使用新帳戶的正確資料來更新先前帳戶的資訊。例如，您必須將 AWS Identity and Access Management (IAM) 角色的 Amazon 資源名稱 (ARN) 替換為新帳戶的 IAM 角色 ARN。

     如果您使用具有 `cfg` 的 [eb create](eb3-create.md) 命令，將會使用指定的已儲存組態檔案建立新環境。如需詳細資訊，請參閱[使用 Elastic Beanstalk 已儲存組態](environment-configuration-savedconfig.md)。

## 在相同 AWS 帳戶中從 EC2-Classic 遷移環境
<a name="vpc-ec2migration.classicaccount"></a>

您現有的 AWS 帳戶可能具有您無法遷移至新 AWS 帳戶的資源。在這樣的情況下，您必須重新建立環境，並為您建立的每個環境手動設定 VPC。

### 將您的環境移轉至自訂 VPC
<a name="vpc-ec2migration.classicaccount.expandable"></a>

**先決條件**  
在開始之前，您必須先擁有 VPC。您可以使用下列其中一種方式建立非預設 (自訂) VPC：
+ 使用 Amazon VPC 主控台精靈，透過其中一個可用的組態選項，快速建立 VPC。如需詳細資訊，請參閱 [Amazon VPC 主控台精靈組態](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_wizard.html)。
+ 如果您對 VPC 有更具體的要求，請在 Amazon VPC 主控台上建立自訂 VPC。例如，如果您的使用案例需要特定數量的子網路，我們建議您執行這項操作。如需詳細資訊，請參閱 [VPC 和子網路](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html)。
+ 如果您偏好搭配 Elastic Beanstalk 環境使用範本，請使用 GitHub 網站上的 [elastic-beanstalk-samples](https://github.com/awsdocs/elastic-beanstalk-samples/) 儲存庫建立 VPC。 GitHub AWS CloudFormation 此儲存庫包含 CloudFormation 範本。如需詳細資訊，請參閱[搭配 Amazon VPC 使用 Elastic Beanstalk](vpc.md)。

在下列步驟中，您可以在新環境中設定 VPC 時使用產生的 VPC ID 和子網路 ID。

1. 建立包含與現有環境相同組態的新環境。您可以使用下列其中一種方法來執行這項作業。
**注意**  
儲存的組態功能可協助您在新帳戶中重新建立環境。此功能可儲存環境資訊，因此您可以在建立或更新其他環境時套用它。如需詳細資訊，請參閱[使用 Elastic Beanstalk 已儲存組態](environment-configuration-savedconfig.md)。
   + 使用 [Elastic Beanstalk 主控台](https://console.aws.amazon.com/elasticbeanstalk)，在要您設定新環境時，從 EC2-Classic 環境套用已儲存的組態。此組態將會使用 VPC。如需詳細資訊，請參閱[使用 Elastic Beanstalk 已儲存組態](environment-configuration-savedconfig.md)。
   + 使用 Elastic Beanstalk 命令行界面 (EB CLI)，執行 [eb create](eb3-create.md) 命令以重新建立您的環境。提供原始環境的參數和 VPC 識別碼。**eb create** 命令描述中的其中一個[範例](eb3-create.md#eb3-createexample1)會說明如何在自訂 VPC 中建立環境。
   + 使用 AWS Command Line Interface (AWS CLI)，並使用 **elasticbeanstalk create-environment**命令重新建立您的環境。使用 VPC 識別碼提供原始環境的參數。如需說明，請參閱[使用 CLI 建立 Elastic Beanstalk AWS 環境](environments-create-awscli.md)。

1. 交換現有環境與新環境的 CNAME。如此一來，則可以使用熟悉的位址來參考您建立的新環境。您可以使用 EB CLI 或 AWS CLI。
   + 使用 EB CLI，執行 **eb swap** 命令交換環境的 CNAME。如需詳細資訊，請參閱[設定 EB 命令列界面 (EB CLI) 以管理 Elastic Beanstalk](eb-cli3.md)。
   + 使用 AWS CLI，使用 [ elasticbeanstalk swap-environment-cnames ](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/swap-environment-cnames.html) 命令交換環境 CNAMEs。如需詳細資訊，請參閱 [AWS CLI 命令參考](https://docs.aws.amazon.com/cli/latest/reference/)。