見出し画像

AWS(Amazon Web Servises)

ただいまデプロイ周辺で絶賛つまづいてますので、復習します。
サーバのセットアップ ~ SSHでログインまでを書きます。

・クラウドコンピューティング

従来ダウンロードやインストールして利用していたデータやソフトを、ネットワークを通じて利用するもの。
レンタルサーバとは異なり必要な時に、必要な分だけ使う事ができる。
Gmailなどもクラウドコンピューティングの一つになります。

画像1

米Amazonが提供している クラウドコンピューティングサービス の総称。
代表的なサービスにAmazon EC2(仮想サーバ)、Amazon S3
(クラウドストレージ)、Amazon RDS(データベース)などがあります。

他サービスとの比較

画像2

始めやすそうですね!!ではまず会員登録です→aws
クレジットかデビットカードの登録が必要になります。
『AWSを使って最短でRuby on Railsのためのサーバを用意する』
に絞っていきます!!

サイン

①右上オレンジのサインアップをクリック。
②アカウント、連絡先情報、支払情報を入力して下さい。
③本人確認をしましょう。
④サポートプランを選択しましょう。無料のベーシックプランでOK。
⑤サインインしましょう。

・サーバのセットアップ ~SSHログイン

・リージョンの設定
物理的なサーバの場所を指定するものです。世界各地に存在し、一つは東京にあります。物理的なサーバなのでリージョン間の移動はできません。
ログインしたら画面右上のサポートの左側を東京にします。

画像4

・EC2インスタンスを作成

・EC2とは Amazon Elastic Compute Cloud (Amazon EC2)
・インスタンスとは AmazonのEC2はインスタンスという単位でサーバー環境が構築できる。OSを載せた仮想サーバーのこと。
・仮想サーバとは 1台のサーバを仮想上複数のサーバとみなして稼働させる仕組み。

①画面左上の サービス から EC2 をクリック。
②画面左の目次から インスタンス をクリック。
③青いボタン インスタンスを作成 をクリック。
④AMIの選択 画像の下側「 Amazon Linux AMI 」を選択。

AMI選択

・AMI(Amazon Machine Image)とは
OSの情報、ディレクトリ、ファイル、ブロックデバイスマッピングなど
必要な情報をまとめたもの(インスタンスはAMIのコピー)

⑤EC2インスタンスのタイプを選択。無料枠の「t2.micro」を選択し
右下青いボタン 確認と作成 をクリック、同じく 起動 をクリック。

⑥キーペアのダウンロード。新しいキーペア を選択しキーペア名を入力。
キーペア名にスペースが含まれていると後の作業でエラーが発生する可能性があります。 スペースを含まない名前にしましょう!

キーペアのダウンロード をクリック。
インスタンスにSSHでログインする際に必要となる「秘密鍵」です。これがないとEC2インスタンスにログインできないので、必ずダウンロードしてパソコンに保存しておきましょう。
・SSH(Secure Shell)とは 
安全に通信を行って、ネットワークに接続された機器を遠隔操作するための通信手段(プロトコル)の1つ。通信する側とされる側で、SSHでやり取りをしよう!と取り決めることで安全に通信を行う。

キー


⑧ダウンロード完了後、右下青ボタン インスタンスの作成 をクリック。
⑨画面右下青ボタン インスタンスの表示 をクリック。

・Elastic IPの作成と紐付け

EC2インスタンスは、作成時にIPアドレスが自動で割り振られています。
これをパブリックIPと言います。しかし、サーバー再起動させるたびにパブリックIPが変わってしまうという欠点を持っています。IPが変わってしまうということは、設定ファイル等をその都度書き換えなければいけません。
これを解決してくれるのが、Elastic IPです。
・Elastic IPとは 
AWSから割り振られた固定のパブリックIPアドレス。パブリックIPアドレスをEC2インスタンスに紐付けることで、インスタンスの起動、停止に関わらず常に同じIPアドレスで通信をするElastic IPことが可能になります。

①画面左の目次から Elastic IP をクリック。
②画面右上オレンジボタン Elastic IP アドレスの割り当て をクリック。

画像7

Amazon の IPv4 アドレスプール をチェック。
④右下オレンジボタン 割り当て をクリック。
⑤画面右上 Action をクリック。
Elastic IP アドレスの関連付け をクリック。

画像8

⑧画面中央の インスタンスタイプを選択します をクリック。
⑨作成したインスタンスIDが表示されるので選択。
⑩右下オレンジの 関連付ける をクリック。

インスタンスに戻り、作成したインスタンスをクリックすると画面の下に
インスタンスの説明が表示されます。「パブリック IP」と「Elastic IP」が同じものに設定されていれば成功です。

・ポートを開く

立ち上げたばかりのEC2インスタンスは、HTTPなど他の接続はつながらないようになっています。WEBサーバとして利用するEC2インスタンスは事前にHTTPがつながるように「ポート」を開放する必要があります。

①インスタンスの説明が表示されている画面で、セキュリティグループ欄にあるすぐ右側のリンクをクリック。

②遷移先画面右上 アクション をクリックし、
インバウンドのルールの編集  をクリック。

ルール

ルールを追加する をクリックし、HTTPを追加、ソースも変更する。
「ルールの追加」を行い、元の「ssh」の設定がなくならないよう注意。
④画面右下オレンジ ルールの保存 をクリック。

・EC2インスタンスへのログイン

EC2インスタンスを作成すると、ec2-userというユーザーと対応するSSH秘密鍵が生成されます。本来はサービスを稼働させる為により権限を小さくしたユーザーを作成して運用しますが、簡易化のためにec2-userを使います。

ターミナル(ローカル)

$ cd ~

$ mkdir ~/.ssh
# .sshディレクトリを作成

$ mv Downloads/〇〇.pem .ssh/
# mvコマンドで、ダウンロードしたpemファイルを、ダウンロードディレクトリから、.sshディレクトリに移動します。
# 〇〇は自身で命名した名前が入ります。

$ cd .ssh/

$ ls
# pemファイルがあるか確認

$ chmod 600 〇〇.pem

$ ssh -i 〇〇.pem ec2-user@紐付けたElastic IP
# Elastic IPが123.456.789であれば、ssh -i 〇〇.pem ec2-user@123.456.789 になります
# ダウンロードした鍵で、ec2-userとしてログイン

接続を続行してもよろしいですかと確認された時は yes を入力。 
chmodコマンド → 詳細解説

成功

上記画面になり、ターミナルのコマンド待ちの表示が、
[ec2-user| ...  となればログイン成功!!!
ssh接続は一定時間操作せずにいると、タイムアウトします。
同コマンドで、再度接続できます。

長々と失礼しました。
次はEC2インスタンスの環境構築を行います。

いいなと思ったら応援しよう!