〰️

【初心者向け】Amazon EC2インスタンスを立ち上げてみる

2024/04/24に公開

EC2とは

パソコンを借りてリモートでアクセスして使用するサービスです。一言で言えば、一つのパソコンです。

サーバーをdeployするためにはパソコンが必要です。自分が持っているパソコンでサーバーをDeployしてユーザーがアクセスできるようにすることもできますが、自分のパソコンだと24時間オンにしないとダメだし、ネットを通知て自分のパソコンにアクセスすることができるので、セキュリティ的によくないです。

なのでAWS EC2を借りてdeployします。AWS EC2には色んな機能があります。(Logging, Autoscaling, Load Balancing)

Regionとは

EC2を利用するためにはRegionを設定します。
Regionとはインフラを地理的に分けてdeployした各データセンターを意味します。
どんな位置でパソコンを借りますって設定することです。Regionは世界中に分布しています。

Region選択の基準

アプリを利用する時にはネットワークを通知て通信することになります。ユーザーの位置とアプリを実行するパソコンろ遠くなるほど速度が遅くなります。なので、アプリがよく使われているユーザーの位置と地理的に違いRegionを選択した方が良いです。

EC2セッティング

  1. インスタンススタートをクリックする。

  2. 名前とタグ: あとで多数のパソコンを借りることがあるけど、その時サーバーの種類をいろいろ持つことができます。
    機能別で分けることもできるし、開発サーバー、deployサーバーでも分けることができ亜mす。
    区分ができる名前で書きます。

  3. アプリケーションおよびOSイメージ(Amazon マシンイメージ)
    MacとWindowがあるのになんでubuntuというパソコンを使う理由はMacとWindowはパソコンについてよくわからない人でも使いやすくするために色んな機能を入れています。なので容量と性能も多く使われてます。
    容量と性能も多く使われるとサーバーをdeployするときサーバーが遅くなる可能性があるので必要な機能だけ入っているubuntuを使います。

  4. インスタンスタイプ:
    ⚫️インスタンスとは?
    借りるパソコン一台を意味する一つの単位です。
    ⚫️インスタンスタイプとは?
    パソコンのスペックを意味します。パソコンのスペックが良いほど多いユーザーが使うことができます。

  5. キーペア(ログイン): EC2パソコンにアクセスするときアクセスがある人だけアクセスできるようにしてくれます。
    キーの名前は直観的に分かるように書いた方がいいです。作ったファイルはきちんと保管しなければならないです。

  6. ネットワーク設定
    VPCはAWSの初心者にはまだ細かく分かってなくてもいいが、セキュリティグループについてはわからないといけないです。

セキュリティグループとは

AWSクラウド中でのネットワーク保安を意味します。一つのパソコンを借りるときパソコンを家と例えた時、家の外側の垣根と玄関だと考えれば良いです。家に入るとき垣根と玄関前で入ってもいいのか保安要員が検査することと同じ感じです。

インターネットで一部のユーザーがEC2インスタンスにアクセスするとき以下の絵みたいに周りにファイアウォールの役割をするセキュリティグループを作成し、セキュリティグループにルールを指定します。
このセキュリティルールは、インバウンドトラフィック(外部からEC2インスタントに送るトラフィック)でどのトラフィックだけを許容するか設定でき、アウトバウンドトラフィック(EC2インスタントから外部に出るトラフィック)でどのトラフィックだけを許容するかを設定できます。

インバウンドセキュリティグループルールがssh, portが22に設定されているけど、sshとはリモートにアクセスする経路です。EC2にリモートで接続してパソコンに入って何かの作業をしますが、ここでportが接続許容ができてないとEC2にアクセスができないです。
位置無関でportが開いているとどんなパソコンのIPからでもアクセスできます。っていうことです。
もし、特定IPたげアクセスできるようにしたいならユーザー指定でIPを入力したら良いです。

HTTPを追加するとportが80番になりますが、私は80番portで入ってくるHTTP要請に対して許容するためであります。 バックエンドサーバーを80に表示する予定なのでです。
ソースタイプを位置無関にする理由はユーザーが不特定多数でバッグエンドに要請する人は違うのでです。

決まっているportの中でよく使われているportです。でも必ず守る必要はありません。

  • 22番(SSH, Secure Shell Protocol): リモート接続するためのport番号です。
    -> EC2インスタンスで繋ぐ時に22番portを使います。
  • 80番(HTTP): HTTPで通信するとき使います。
  • 443番(HTTPS): HTTPSで通信するとき使います。
  1. ストレージ構成: 私たちが使っているハードディスク(保存空間)を持っているけど、EC2も一つのパソコンなので保存空間が必要になります。この保存空間をEBS(Elastic Block Storage)っていいます。
    EBSみたいな保存空間を包括的な用語でストレージ、ボリュームって呼びます。

    free tierの場合30まで無料に使うことができます。

※Azureについて聞きたが、AWSよりやすくできるけど設定とかがめんどくさいみたいだ。

Elastic IP設定

インスタンスを生成するとIPが割り当てられます。 しかし、このように割り当てられたIPは一時的なIPであるため、しばらく中止してから再び実行させるとIPが変わっています。
なので、固定IPを割り当てなければなりません


Discussion