「AWSを使ってサーバー費用を抑えたいけど、EC2の種類が多すぎて何を選べばいいのか分からない」「気づいたら月の利用料が思った以上に膨らんでいた」——副業でWebサービスを運営している方や、個人開発でAWSを使い始めた方からよく聞く悩みです。EC2はクラウドの中でも特に料金体系が複雑で、インスタンスタイプや購入オプションを間違えると、同じ性能でも支払う金額が2倍、3倍と変わってしまうことがあります。実際、同じ処理能力を持つインスタンスでも、選び方次第で月額料金に5,000円以上の差が出ることも珍しくありません。この記事では、EC2インスタンスの選び方の基本から、今日からすぐに実践できるコスト最適化のコツまでを、具体的な数字を交えて解説します。読み終える頃には、無駄な費用を削りながら必要な性能を確保する判断軸が身につくはずです。

EC2インスタンスタイプは「用途」で選ぶのが基本
EC2には数十種類のインスタンスファミリーがありますが、まず覚えるべきは4系統です。汎用のTシリーズ・Mシリーズ、計算処理に強いCシリーズ、メモリを多く使うRシリーズです。副業で小規模なWebアプリやブログ、検証環境を動かすなら、バースト性能付きで安価なt3.microやt4g.smallが第一候補になります。特にArmベースの「Graviton」プロセッサを使うt4g系は、同等スペックのx86系インスタンスより約20%安く、処理速度もほぼ同等なので、対応アプリであれば積極的に選ぶべきです。たとえばt3.smallが月額約2,100円であるのに対し、t4g.smallは月額約1,700円程度まで下がるケースもあります。動画変換や機械学習など計算負荷が高い作業はCシリーズ、データベースやキャッシュサーバーのようにメモリを多く消費する用途はRシリーズを検討しましょう。また、Tシリーズには「CPUクレジット」という仕組みがあり、通常は低使用率でクレジットを貯めつつ、アクセスが集中した瞬間だけバーストして性能を発揮します。クレジットを使い切ると性能が頭打ちになる点には注意が必要で、常時高負荷がかかるアプリにはTシリーズは不向きです。「何となく大きいスペックを選ぶ」のではなく、実際のCPU・メモリ使用率を見て選ぶことが、最初のコスト最適化の一歩です。
料金プランの選択でコストは大きく変わる
EC2の料金体系はオンデマンド・リザーブドインスタンス・Savings Plans・スポットインスタンスの4種類があり、選び方次第で支払額が大きく変わります。オンデマンドは使った分だけ払う最も柔軟な方式ですが単価は最も高めです。1年または3年の利用を前払い・前提にするリザーブドインスタンスやSavings Plansを使うと、最大72%程度の割引を受けられます。常時稼働させるサーバーがあるなら検討の価値が高いでしょう。リザーブドインスタンスは特定のインスタンスタイプに紐づく割引であるのに対し、Savings Plansは「1時間あたりいくら使うか」をコミットする仕組みで、将来インスタンスタイプを変更する可能性がある場合はSavings Plansの方が柔軟です。一方、中断されても問題ないバッチ処理や検証用途には、空きキャパシティを安く借りられるスポットインスタンスが有効で、オンデマンド比で最大90%の割引になることもあります。ただし需給状況によって中断される可能性があるため、本番のWebサーバーなど常時稼働が必須の用途には向きません。副業レベルの個人開発なら、検証中はオンデマンド、本番で安定稼働させる部分だけ1年リザーブドに切り替える、というハイブリッド運用が現実的です。契約期間の縛りが不安な場合は、まず1年契約から試し、運用が安定してから3年契約に切り替える段階的なアプローチもおすすめです。
運用フェーズでの最適化テクニック
インスタンスを選んだ後も、運用の工夫でさらにコストを削れます。まずAWS Compute Optimizerを使うと、実際の使用率データから「このインスタンスは1ランク下げられます」といった推奨が無料で表示されます。次にCloudWatchでCPU使用率やネットワーク使用量を定期的に確認し、常に10%未満しか使っていないなら明確な過剰スペックです。使わない時間帯は停止するだけでも効果があり、EC2は停止中はEBSストレージ代のみの課金になるため、検証用サーバーは夜間や休日に自動停止するLambdaスケジュールを組むと月数千円単位で節約できます。さらにAWS Budgetsで予算アラートを設定しておけば、想定外の課金増加にすぐ気づけます。設定の目安としては、まず「月額予想額の80%」でアラートを出すように設定しておくと、急激な利用増加にも早めに対応できます。これらは設定自体が無料でできるため、まず最初に手を付けるべき施策です。
見落としがちなストレージ・データ転送費用
EC2のコストを語るとき、インスタンス代にばかり目が行きがちですが、実はEBS(ストレージ)とデータ転送料金も無視できない要素です。EBSはタイプによって単価が異なり、汎用SSDのgp3は旧世代のgp2より約20%安く、さらにIOPSとスループットを個別に調整できるため、多くのケースでgp3への移行だけでもコスト削減につながります。また、使わなくなったスナップショットやアタッチされていない未使用のEBSボリュームが放置されているケースも多く、これらは気づかないまま毎月課金され続けます。定期的にAWSコンソールで「未アタッチのボリューム」を確認し、不要なものは削除する習慣をつけましょう。データ転送に関しては、インターネットへの送信(アウトバウンド)には課金が発生しますが、同リージョン内の通信や受信(インバウンド)は多くの場合無料です。画像や動画を多く配信するサービスであれば、CloudFrontなどのCDNを経由させることで転送コストを抑えられる場合もあります。
ケーススタディ:副業Webサービスでの最適化例
ある副業エンジニアが、個人開発の予約管理Webアプリをt3.medium(オンデマンド、月額約5,500円)で24時間稼働させていたケースを考えてみます。CloudWatchで確認したところ、平均CPU使用率はわずか8%でした。そこでインスタンスをt4g.smallに変更し、さらに1年のSavings Plansを適用したところ、月額は約1,800円まで下がりました。加えて、アクセスの少ない深夜1時〜6時を自動停止する設定を加えたことで、さらに月300円ほど削減。EBSボリュームも不要なスナップショットを削除し、gp2からgp3に変更したことで月100円程度の節約にもつながりました。結果として、性能はほぼ落とさずに月額費用を約3分の1まで圧縮できました。年間では4万円以上の差になる計算です。

よくある質問
Q. 無料枠だけでEC2を運用できますか?
A. AWSの無料利用枠では、t2.microまたはt3.microを月750時間まで、アカウント作成から12カ月間無料で使えます。個人のブログや検証環境であれば、この範囲内で十分運用できる場合が多いです。ただし無料枠はEC2単体の話であり、EBSストレージやデータ転送量が一定を超えると別途課金される点には注意しましょう。
Q. 急にアクセスが増えた場合はどうすればいいですか?
A. 事前にインスタンスサイズを大きくしておく必要はありません。Auto Scalingとロードバランサーを組み合わせておけば、アクセス増加に応じて自動でインスタンス数を増減できるため、必要な時だけコストをかける運用が可能です。個人開発レベルでも、Application Load Balancerと組み合わせることで比較的低コストにスケーラブルな構成を組めます。
まとめ
EC2のコストは、インスタンスタイプの選定、料金プランの選び方、そして運用時の見直しという3つの段階で最適化できます。まずは今使っているインスタンスのCPU使用率をCloudWatchで確認し、Compute Optimizerの推奨を見てみることから始めましょう。加えて、EBSボリュームやデータ転送量といった見落としがちな費用にも目を向けることで、さらに無駄を削れます。小さな見直しの積み重ねが、月々数千円、年間では数万円の節約につながります。副業の収益を圧迫しないためにも、今日からできる設定変更に一つずつ取り組んでみてください。

