【AWS】 EC2でWebアプリを構築する方法と料金体系を解説!

Webアプリ情報

みなさん、AWS EC2でWebアプリを構築する方法や料金体系を知りたいと思いませんか?

この記事を読むことで、EC2を活用したWebアプリ構築の手順やメリット、そして料金体系の詳細まで分かります。

この記事は以下の人にオススメです!

・AWSを使ったWebアプリ開発に興味がある人

・EC2の料金がどのように発生するか知りたい人

・コストを最適化しながら運用したい人

AWS EC2(Elastic Compute Cloud)は、Amazon Web Servicesが提供する仮想サーバーサービスです。


Webアプリを開発・運用する際に必要なサーバー環境を手軽に構築できるのが特徴です。

EC2の主な特徴は以下の通りです。

・必要な時に必要なだけ利用できる柔軟性

・インスタンスタイプ(仮想マシンのスペック)を自由に選択可能

・他のAWSサービスとの連携がスムーズ

手順1: AWSアカウントを作成する

AWS公式サイトにアクセスしてアカウントを作成します。

アカウント作成時にクレジットカード情報が必要となるため、事前に用意しておきましょう。

手順2: EC2インスタンスを起動する

  1. AWSマネジメントコンソールにログインし、EC2のダッシュボードにアクセスします。
  2. 「インスタンスを起動」をクリックし、ウィザードに従って設定を進めます。

手順3: AMI(Amazon Machine Image)を選択する
AMIは仮想サーバーのテンプレートです。
用途に応じて、以下のようなオプションを選択します。

  • Amazon Linux 2
  • Ubuntu
  • Windows Server

手順4: インスタンスタイプを選択する
必要なスペックに応じてインスタンスタイプを選びます。
初心者や小規模アプリの場合、無料枠対象の「t2.micro」を選ぶとよいでしょう。

手順5: セキュリティグループを設定する
セキュリティグループは、EC2インスタンスへのネットワークアクセスを制御するファイアウォールの役割を果たします。
最低限以下の設定を行います。

  • HTTP/HTTPS: Webアプリ用にポート80と443を開放
  • SSH: サーバー管理用にポート22を開放(IP制限を設定するのが推奨されます)

手順6: キーペアを作成する
キーペアはインスタンスにログインする際の認証情報です。
新しいキーペアを作成し、秘密鍵(.pemファイル)をダウンロードして安全に保管してください。

手順7: インスタンスを起動する
全ての設定を確認し、「起動」をクリックします。
これでインスタンスが起動し、Webアプリを構築するための基盤が整います。

手順8: ソフトウェアをインストールする

  1. SSHを使用してインスタンスに接続します。                

 ・Mac/Linuxの場合: ターミナルで以下のコマンドを実行

    ssh -i "your-key.pem" ec2-user@your-ec2-instance-address

      ・Windowsの場合: PuTTYを利用

    必要なソフトウェアをインストールします。例としてLAMPスタック(Linux, Apache, MySQL, PHP)をセットアップする場合のコマンドは以下の通りです。

    sudo yum update -y  
    sudo yum install httpd mariadb-server php -y

    Webアプリのコードをインスタンスにデプロイします。
    ファイル転送にはSCPやFTPクライアントを使用できます。

      手順9: 動作確認とドメイン設定

      1. ブラウザでインスタンスのパブリックIPアドレスにアクセスして、Webアプリが動作しているか確認します。
      2. 必要に応じてカスタムドメインを設定します。Route 53や他のDNSプロバイダーを利用できます。

      AWS EC2の料金は使用量に基づいて計算される従量課金制です。

      以下は、主な料金要素です。

      インスタンスの使用時間
      インスタンスの稼働時間に応じて料金が発生します。
      オンデマンドインスタンスでは1時間単位、または1秒単位で課金されます。

      インスタンスタイプ
      選択するインスタンスの種類により料金が異なります。
      例えば、CPUやメモリのスペックが高いほど料金は高くなります。

      ストレージ費用
      EBS(Elastic Block Store)など、インスタンスに付随するストレージの使用量に応じた料金が発生します。また、ストレージタイプ(SSDやHDD)や容量によって料金が変動します。

      データ転送費用
      インターネットに送受信するデータ量に基づいて課金されます。
      一般的に、インバウンドデータ(受信)は無料ですが、アウトバウンドデータ(送信)には料金が発生します。

      AWS EC2を使う際、料金を抑えるための工夫がいくつかあります。

      スポットインスタンスの活用
      余剰キャパシティを利用することで、オンデマンドインスタンスよりも最大90%安く利用できます。
      ただし、途中でインスタンスが停止するリスクがあります。

      リザーブドインスタンスの購入
      一定期間(1年や3年)インスタンスを予約することで、料金を大幅に割引できます。
      長期利用が前提の場合に有効です。

      オートスケーリングの設定
      アクセスが少ない時間帯にインスタンス数を減らし、ピーク時にのみ増やすことでコストを削減できます。

      無料枠の活用
      AWSでは新規ユーザー向けに無料枠が提供されており、EC2の利用も一部含まれます。
      この無料枠を活用して、初期費用を抑えながらサービスを試すことができます。

      以下は、2024年12月時点での一部料金例です。

      • t2.micro(オンデマンド)
        • 料金:約0.0116 USD/時間(東京リージョン)
        • 対象:小規模なWebアプリや開発用サーバーに適したプラン
      • m5.large(オンデマンド)
        • 料金:約0.096 USD/時間(東京リージョン)
        • 対象:中規模のWebアプリや高負荷なテスト環境
      • データ転送
        • アウトバウンドデータ:最初の1 GB/月は無料、その後は0.114 USD/GB

      ※料金は変動する場合があります。詳細はAWS公式サイトを確認してください。

      実際にEC2を使ったWebアプリの構築事例を紹介します。

      オンライン学習プラットフォーム
      日本の教育系スタートアップが、EC2とRDSを利用してeラーニングシステムを構築した事例があります。
      アクセス数が不定期なため、オートスケーリングを活用しコストを最適化しています。

      個人ブログ運営
      個人がWordPressをEC2にインストールしてブログを運営するケースも一般的です。
      日本語対応のテンプレートやプラグインを利用しやすい点が魅力です。

      AWS EC2は、柔軟でスケーラブルなWebアプリ開発環境を提供するだけでなく、コスト管理も細かく調整可能です。

      料金体系を理解し、適切に活用することで、無駄なく効率的に運用することができます。

      この記事を参考に、ぜひEC2を活用したWebアプリ構築と運用を検討してみてください。

      コメント

      タイトルとURLをコピーしました