先日、社内のAWS開発環境のS3コストが急に増加しました。そちらの、原因と対策を記載していきます。
S3コスト増加
原因
- EC2からS3へのリクエスト(GET、PUT)を、エンドポイント経由ではなく、NatGatewayから一度インターネットに出てS3へリクエストしていた。
- 上記かつ、サーバ台数を増やしての負荷試験を実施していた。
なぜ
なぜ上記のインフラ構成になっていたのかですが、AWS知識が乏しいアプリ開発者が試しに作成したインフラ構成をレビューもなしにそのまま流用していましたためです。
対策
- 構築前にインフラ構成図の作成、各コンポーネントのコスト試算をし、インフラチームへのレビューをもらう
- プロトタイプのアプリ開発もしっかりインフラチームが関わる
- プロトタイプのAWSコンポーネントもインフラチームが構築する。もしくはIaCコードのレビューをしインフラ構築する。
おわりに
アプリチーム数が多い場合やインフラチームのメンバーが少ないと、手が回らずに今回のようなミスが発生してしまうのかなと感じました。
アプリインフラ関係なく、AWSの知識向上や注意点などは知っておく必要があります。また、振り返りをしっかりと実施し、知見者による勉強会なども効果的かなと感じました。
コメント