ぴねろぐ

日常や趣味、プログラミングについて書いていきたい

無料枠で使っていたAmazon EC2を停止させてたら料金を請求された話

こんにちは。ぱいんです。

本記事は琉大Advent Calendar 2021 13日目の記事になります。

adventar.org

先日AWSからこんなメールが来てました。

Greetings from Amazon Web Services,

This e-mail confirms that your latest billing statement, for the account ending in *******, is available on the AWS web site. Your account will be charged the following:

Total: $58.44

料金請求のメールでした。

え?なんで料金が請求されてるの?無料枠だったのに? EC2は停止させてたはずなのになぜ?

原因

原因究明のためまずはAWSコンソールからBillingの請求書を見に行きました。

請求書についてはマイ請求ダッシュボードから見れます。 f:id:pine619:20211111062401p:plain

そして料金明細へ。 f:id:pine619:20211212090421p:plain

原因はNATゲートウェイとElastic IPでした。

NATゲートウェイ

サービス概要

ドキュメントによると、

NAT ゲートウェイは、ネットワークアドレス変換 (NAT) サービスです。NAT ゲートウェイを使用すると、プライベートサブネット内のインスタンスVPC 外のサービスに接続できますが、外部サービスはそれらのインスタンスとの接続を開始できません。 NAT ゲートウェイ - Amazon Virtual Private Cloud

インターネットに接続できないプライベートサブネット内のインスタンスがインターネットへ接続するためのサービスです。インスタンスからインターネットへ接続はできるが、外部からインスタンスに対して接はさせたくないときに使われます。

今回はEC2でDBサーバーを立てていて、インストールやアップデートなどインスタンスからインターネットへ接続はしたいが、外部からDBサーバーへアクセスはさせたくないってことでNATゲートウェイを使用していました。

料金

VPCの料金を記述してあるページにNATゲートウェイの料金についても触れられていました。

VPC 内に NAT ゲートウェイを作成することを選択した場合は、ゲートウェイがプロビジョニングされ利用可能であった "NAT ゲートウェイ時間" に対して料金が請求されます。データ処理料金は、トラフィックの送信元か送信先にかかわらず、NAT ゲートウェイで処理されたギガバイト単位で適用されます。1 時間未満の NAT ゲートウェイ時間は、1 時間分として請求されます。また、NAT ゲートウェイを介して転送されるすべてのデータに対して標準的な AWS データ転送料金が発生します。NAT ゲートウェイへの課金を止めたい場合は、AWS マネジメントコンソール、コマンドラインインターフェイスAPI を使用して NAT ゲートウェイを削除します。 料金 - Amazon VPC | AWS

ということでNATゲートウェイには以下の2種類の料金があります。

アジアパシフィック(東京)の場合は、執筆時点(2021/12/12)のレートだと以下のようになります。

USD JPY
NATゲートウェイ時間に対する料金 0.062 USD 0.7 JPY
NATゲートウェイで処理されたデータ量に対する料金 0.062 USD 0.7 JPY

NATゲートウェイはEC2ではなくVPCに紐付いているため、EC2の停止をしてもNATゲートウェイは動いています。そのためNATゲートウェイ時間に対する料金が発生します。

Elastic IP

サービス概要

Elastic IP アドレスは、動的なクラウドコンピューティングのために設計された静的 IPv4 アドレスです。Elastic IP アドレスはユーザーの AWS アカウントに割り当てられ、解放するまでユーザーのアドレスになります。 Elastic IP アドレス - Amazon Elastic Compute Cloud

AWS固定IPアドレスを使うためのサービスです。

NATゲートウェイはインターネットへ接続するためにElastic IPを割り振る必要があります。 NATゲートウェイを作成するときにElastic IPの割り当てというボタンがあり、それを押すことで自動でElastic IPを取得します。 f:id:pine619:20211212095339p:plain

料金

Elastic IPは特定の条件を満たすと料金がかかりません。その条件が以下です。

Elastic IP の料金を理解する

今回の場合はEC2インスタンスではなくNATゲートウェイにElastic IPが関連付けられているため課金対象となります。

料金としてはEC2インスタンスに紐付けられていない場合は1時間あたり0.005USD(0.57JPY)です。

まとめ

約6800円の痛い勉強代になりました。。。 しっかりと料金請求の条件を確認しないと思わぬ出費が発生してしまうので気をつけましょう。

明日は@matac42の記事です!皆さんお楽しみに!