
リージョナル NAT Gateway はどの AZ で課金されますか
困っていること
リージョナル NAT Gateway では、どのアベイラビリティーゾーン(AZ)が課金対象になるのか確認したいです。
例えば、ECS on AWS Fargate のタスク数が 0 であり、Amazon EC2 インスタンスなどのワークロードも存在しない AZ があります。
このような AZ では、リージョナル NAT Gateway の料金は発生するのでしょうか。
回答
リージョナル NAT Gateway の時間料金は、NAT Gateway がサポートしている AZ ごとに発生します。
当該 AZ の料金が発生するか確認するには、対象 VPC・AZ に ENI が存在するかを確認してください。リージョナル NAT Gateway は、ENI が存在する AZ を検出して自動的にサポート対象へ追加し、アクティブなワークロードがない AZ はサポート対象から削除します。
そのため、当該 AZ にアクティブなワークロードがなく、リージョナル NAT Gateway のサポート対象から削除されている場合、その AZ 分の時間料金は発生しません。
一方で、ECS on AWS Fargate のタスク数が 0 であることだけでは判断できません。EC2、EKS、Lambda の VPC 接続、RDS、VPC エンドポイントなど、他のリソースが ENI を作成している可能性があることもご認識ください。
たとえば、AWS CLI コマンド利用した確認方法が考えられます。
- 対象 VPC 内の ENI を AZ ごとに確認する方法
aws ec2 describe-network-interfaces \
--filters "Name=vpc-id,Values=vpc-xxxxxxxxxxxxxxxxx" \
--query 'NetworkInterfaces[].{
NetworkInterfaceId:NetworkInterfaceId,
AvailabilityZone:AvailabilityZone,
Status:Status,
Description:Description,
InterfaceType:InterfaceType,
RequesterManaged:RequesterManaged
}' \
--output table
- 特定の AZ に絞る場合の確認方法
aws ec2 describe-network-interfaces \
--filters \
"Name=vpc-id,Values=vpc-xxxxxxxxxxxxxxxxx" \
"Name=availability-zone,Values=ap-northeast-1a" \
--output table
VPC でリージョンレベルでの可用性を備えた NAT ゲートウェイを作成する場合、各アベイラビリティーゾーンで NAT ゲートウェイが設定されている各時間について課金されます。例えば、リージョンレベルの NAT が 3 つのアベイラビリティーゾーン (AZ) にまたがって 1 時間実行されている場合、3「NAT ゲートウェイ-時間」について課金されます。ワークロードフットプリントの変更に伴い、リージョンレベルの NAT が 1 つの AZ のサポートを停止すると、課金は自動的に調整され、その特定の AZ についての課金は発生しなくなります。
新しいアベイラビリティーゾーンでリソースを起動すると、リージョン NAT ゲートウェイはそのアベイラビリティーゾーン内のネットワークインターフェイス (ENI) の存在を検出し、自動的にそのゾーンに拡張します。同様に、NAT ゲートウェイはアクティブなワークロードがないアベイラビリティーゾーンから縮小します。
リソースがインスタンス化された後、リージョン NAT ゲートウェイが新しいアベイラビリティーゾーンに拡張されるまでに最大 60 分かかる場合があります。この拡張が完了するまで、このリソースからの関連するトラフィックは、既存のアベイラビリティーゾーンのいずれかのリージョン NAT ゲートウェイによってゾーン間で処理されます。







