Environment のリソースをカスタマイズする
Copilot を使って新しく Environment を作成するとき既存の VPC リソースをインポートできます。(これは以下のようにenv init
を実行するときのフラグまたはインタラクティブに質問に答えることで実現できます。)
% copilot env init
What is your environment's name? env-name
Which credentials would you like to use to create name? [profile default]
Would you like to use the default configuration for a new environment?
- A new VPC with 2 AZs, 2 public subnets and 2 private subnets
- A new ECS Cluster
- New IAM Roles to manage services and jobs in your environment
[Use arrows to move, type to filter]
Yes, use default.
Yes, but I'd like configure the default resources (CIDR ranges).
> No, I'd like to import existing resources (VPC, subnets).
インポート機能を使用し、インターネットに接続しないワークロード用に 2 つのパブリックサブネットと 2 つのプライベートサブネットを持つ VPC、2 つのパブリックサブネットのみでプライベートサブネットを持たない VPC (default VPC など)、または 2 つのプライベートサブネットのみでパブリックサブネットを持たない VPC を取り込む事ができます。(分離されたネットワークについてより詳細に知りたい方は、こちらをご覧ください。)
Copilot のデフォルトリソースの変更
デフォルト設定を選択すると、 Copilot は AWS のベストプラクティスに従って 2 つのアベイラビリティゾーンにまたがった VPC と 2 つのパブリックサブネットおよびプライベートサブネットを作成します。 追加のアベイラビリティゾーンや CIDR 範囲を変更したい場合、以下の様な変更を選択できます。
$ copilot env init --container-insights
What is your environment's name? env-name
Which credentials would you like to use to create name? [profile default]
Would you like to use the default configuration for a new environment?
- A new VPC with 2 AZs, 2 public subnets and 2 private subnets
- A new ECS Cluster
- New IAM Roles to manage services and jobs in your environment
[Use arrows to move, type to filter]
Yes, use default.
> Yes, but I'd like configure the default resources (CIDR ranges).
No, I'd like to import existing resources (VPC, subnets).
What VPC CIDR would you like to use? [? for help] (10.0.0.0/16)
Which availability zones would you like to use? [Use arrows to move, space to select, type to filter, ? for more help]
[x] us-west-2a
[x] us-west-2b
> [x] us-west-2c
[ ] us-west-2d
What CIDR would you like to use for your public subnets? [? for help] (10.0.0.0/24,10.0.1.0/24) 10.0.0.0/24,10.0.1.0/24,10.0.2.0/24
What CIDR would you like to use for your private subnets? [? for help] (10.0.2.0/24,10.0.3.0/24) 10.0.3.0/24,10.0.4.0/24,10.0.5.0/24
制約
- 既存の VPC をインポートする場合は、VPC のセキュリティのベストプラクティスと、Amazon VPC FAQ の「セキュリティとフィルタリング」のセクションに準拠することをお勧めします。
- プライベートホストゾーンをご利用の場合は、こちらにあるように
enableDnsHostname
とenableDnsSupport
を true に設定してください。 - プライベートサブネットに、インターネットに面したワークロードをデプロイする場合は VPC に NAT ゲートウェイが必要です。