AWS
EC2

初心者がAWSに挑戦してみるお

ドットインストールにAWS講座があったから、流し見しながら触ってみます。
https://dotinstall.com/lessons/basic_aws

アカウント作成

まずアカウント作るお。
image.png

12ヶ月の無料枠って太っ腹ですね。
image.png

連絡先入力。
image.png

住所のフォーム3つがエラーになった。
スクリーンショット 2018-06-03 23.03.18.png
そゆことは先に言ってよ!
Amazon様ほどの大企業がこういう雑な仕事してると、むしろフフッてなる。
海外企業だから仕方ないんやろかー

支払う気なくてもクレカ入力が必要。
image.png

電話認証もあるのね!厳重です。
image.png
携帯電話を携帯しない人なので、これのために1ヶ月ぶりに電源いれたら2週間前に大事な着信入ってて焦った…

プランの選択。
image.png
もちろん無料でお願いシャス!

チュートリアルとかもあるのね。
image.png
って動画かと思ってクリックしたら普通に説明ページだった。

インスタンスの作成

なんかすでにドットインストールの画面が古くなってるらしく、かなり違ってて戸惑いますがw

右上のプルダウンから、リージョンを東京にする。
image.png

左上のサービスメニューから、EC2(仮想サーバー)を選択する。
image.png

インスタンスの作成。
image.png

よく分からないけどAMIの2の方が新しいみたい。
image.png

よく分からないけど無料の枠で!
image.png

全部デフォルトでいいだろう。作成!
image.png

キーペアを聞かれるので、
image.png

新しいキーペアの作成を選んで、適当に名前を決めます。
image.png
ダウンロードできたら、インスタンスの作成。

インスタンスを作成できたらしい。インスタンスの表示!
image.png

とりあえず作ったインスタンスに「Test」と名前つけました。
いろいろよく分からないからモザイク多めになりますw
image.png
セキュリティーグループを作ります。

アクションから、インバウンドルールの編集。
image.png

ルールの追加。HTTP。保存。
image.png

サーバーに接続

インスタンスの作成ボタンの隣、接続ボタンをクリック。
image.png

サーバー接続の方法を教えてくれます。
image.png
赤で囲ったところのコマンドをこのあと使います。

あとはコマンドラインからの作業です。

# インスタンスを作成するときにダウンロードした秘密鍵を使いやすい場所に移動させます。
$ mv /Users/自分/Downloads/秘密鍵.pem /移動させたいとこ

# 移動。
$ cd /Users/自分/移動させたとこ

# 秘密鍵のパーミッションを400に変更します。
$ chmod 400 秘密鍵.pem

# さっきの赤く囲んだコマンドをコピペ。
$ ssh -i "秘密鍵.pem" 省略.compute.amazonaws.com

こんな感じ。
image.png

# 途中でyes/no聞かれるからyesする。
# `sudo yum update` してね!って言われるから、おおせのままにする。
$ sudo yum update

# 途中でy/d/N聞かれるから、yにする。
# しばらく待つとアップデート完了。

# httpdとphpとmysqlをインストール
$ sudo yum -y install httpd php mysql
# ちょっと待つとインストール完了。

WEBサーバーの立ち上げ

# WEBサーバーの立ち上げ
$ sudo service httpd start
Redirecting to /bin/systemctl start httpd.service

おっと、ここまでスムーズだったけど、ついにドットインストールさまと違うコメントが出ちゃったよ。
なんかリダイレクトしてるの?これでいいのかな。

# httpdを起動後のステータス状況を確認。
$ systemctl status httpd.service

「active (running)」って文字が見えるから、ちゃんと起動してるっぽい。

# OS再起動時に、Apacheも自動起動してね!
$ sudo chkconfig httpd on

んだば、WEBサーバーが無事動いてるか確認しましょう。

# index.htmlを新規作成
$ sudo vim /var/www/html/index.html

# インサートモード
i

<html>
Hello!
</html>

# ノーマルモードに戻して保存して終了
ESC
:wq

ブラウザに戻って、インスタンスへの接続説明を閉じます。
パブリックDNSというのをコピーして、
image.png

ブラウザのアドレスバーに貼り付け。ちゃんと「Hello!」が表示されました。
image.png

PHPとmySQLがちゃんとはいってるか、確認。

$ php -v
$ mysql --version

こんな感じでOK!
image.png

イメージの作成

サーバーの設定をコピペしておいてくれるような便利ちゃんをイメージというらしい。
インスタンスを右クリックで、イメージ→イメージの作成に進みます。
image.png

とりあえず名前だけ入力して、あとはデフォルトのままOK。
image.png

すると一度インスタンスをシャットダウンして、スナップショットっていうものを撮って、イメージを作ってくれるらしいです。

Elastic IPの割り当て

インスタンスがシャットダウンされると、先程ブラウザで「Hello!」を確認したときのパブリックDNSが変わっちゃうんですって。
ころころアドレス変わると困るから、IPアドレスを割り当てるのが一般的な方法らしいです。

Elastic IP(えらすてぃっくあいぴー)のメニューから、新しいアドレスの割り当てを選択します。
image.png

割り当て〜
image.png

なんも設定してないけど出てきた。
image.png

とりあえず「TestIP」って名前をつけてあげました。
アクションのプルダウンにアドレスの関連付けってありますね。
image.png

ここでインスタンスを選んであげるとよさそうです。
image.png

image.png

IPアドレスで接続できました。
image.png

今度は練習で関連付けを解除してみます。
image.png

image.png

関連付けされていないIPは課金される?らしいので開放しておきます。
image.png

image.png

今回はここまで

今回個人的に必要な部分はここまでだったので、
あとはドットインストールを流し見して「こんなこともできるのね〜」でいったん終わりとしました。
また必要になったときにちゃんと勉強しましょ。