231
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

updated at

AWSでやらかして3桁万円請求された話

はじめに

こんにちはkappa0923です。
普段はSierでクラウドアーキテクトをしています。

この記事は「本番環境でやらかしちゃった人 Advent Calendar 2020」20日目の記事です。

今回はAWSの設定をミスったために普段の10倍以上の料金を請求されるに至った経緯と、その対策について記載していきます。

お断り

この記事はあくまでもノウハウを共有して、同様にやらかす人を少しでも減らすことを目的としています。

記事の内容はあくまで個人の見解であり、所属とは関係ありません。

また、多少のフェイクを混ぜますので、あらかじめご了承ください。

発生背景

とあるWebシステムをAWS上で構築し、開発・運用を行っていました。

このWebシステムではバッチ処理を並列で行うため、複数の小さいEC2インスタンスを作成→実行→削除という構成をとっていました。
これにより必要ない時間はEC2インスタンスが起動しておらず、ランニングコストを抑えようという狙いがありました。

AWSでやらかした話.png

しかし、この構成が仇となって発覚が遅れ、さらに膨大な費用を請求されるまでに至ってしまいました。

何が起きたか

バッチ処理を行うEC2は毎回AMIから作成されるようにしていましたが、あるときにAMIの設定をミスり、EC2インスタンス削除時にアタッチされているEBSボリュームを削除するオプション(DeleteOnTermination)が外れてしまいました。

その結果、EC2インスタンスは削除されるが、EBSボリュームが削除されないまま残り続けるという状態が発生しました。

AWSでやらかした話-Page-2.png

EBSボリューム1つ1つはサイズも小さく、単位料金も安いですが、気づいたときには1万台を超えるEBSボリュームが残り続けていました。

結果として、1ヶ月以上設定ミスに気づかず、EBSのストレージ使用料金だけで1ヶ月で3桁万円の請求が来ることになってしまいました。

EC2インスタンスは起動しっぱなしにならないよう、毎日確認していましたが、EBSの方まで気が回っていなかったことは落ち度です。

対策

AWS Budgeを利用して予算設定をする、これに尽きます。

今回は急激に料金が跳ね上がった訳ではなく、徐々に徐々に料金が大きくなっていきました。
つまり、気づくチャンスがあったわけです。

これらを設定するだけで、請求額が異常な値になる前に気づくようになることができます。
このサービス自体は認識していましたし、予算を設定することの大切さも知っていたつもりでした……
しかし、後回しにしてしまったがために今回のようなミスが発生しました。

クラウドに関わらず、設定ミスによるやらかしは往々にして発生します。
だからこそ、ミスった時に気づけるようにしておくことが大切です。

おわりに

十分注意していたと思っていても事故は起こります。
特にアクセスキー流出などによる請求はよくある話なため、十分に注意していました。
しかし、今回は予想していなかった設定ミスでした。

大切なことは、このような失敗のバッドノウハウを共有することで一人でも同じやらかしを防ぐことです。

みなさんもこのバッドノウハウを活かし、良いクラウドライフを送っていただけることを祈っています。

明日の本番環境でやらかしちゃった人 Advent Calendar 2020@real_yaruoさんの「ホスティングサーバの/binディレクトリをrm -rfしてしまったおじさんの昔話」です。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
231
Help us understand the problem. What are the problem?