*WEBサーバー用EC2の起動からWEBページの表示までの続き
アプリケーションデプロイ用の基本構成のEC2インスタンス起動方法についてメモ
簡単なことですが、たまに不安になるので。
VPC内に、パブリックサブネットにWEBサーバー用のEC2と
プライベートサブネットDBサーバー用のEC2を構成していきます
##事前準備
###VPC
WEBサーバーのインスタンスを起動したときVPCを用意(何用かわかりやすい名前を付けましょう)
###サブネット
WEBサーバーのインスタンスがるVPCにプライベート1aを用意
(冗長構成用にプライベート1cがあってもなくても)
##DBサーバー用のインスタンス起動設定
###インスタンスタイプの選択
無料利用枠のt2.micro
###インスタンスの詳細設定
ネットワーク:事前に用意したデフォルトのものではないVPC
サブネット:プライベートサブネット1a
自動割り当てパブリックIP:無効
###タグの追加
キー:Name
値:[アプリ名]-DBserver-1a
###セキュリティグループの設定
セキュリティグループの割り当て:新しいセキュリティグループを作成する
セキュリティグループ名:[アプリ名]-DBserver-sg
説明:[アプリ名]-DBserver-sg
ルールの追加:MySQL/Aurora 0.0.0.0/0
##ファイルを更新するためにNATゲートウェイを作成
VPC→NATゲートウェイ を選択
NATゲートウェイを作成 を押す
名前:わかりやすいもの
サブネット:パブリック1a
ElasticIPを割り当てる
作成 を押す
##プライベートのルートテーブルを通す
サブネット→プライベート1a→ルートテーブルタブ→ルートテーブル→
ルートタブ→ルートを編集 を選択
(バックホールになっているものがあったら削除)
ルートを追加 を選択
送信先:0.0.0.0/0
ターゲット:つくったNATゲートウェイ
##MYSQLをインストール
###インスタンスにSSHで接続する
*パブリックサブネットのインスタンスからプライベートサブネットのインスタンスに入る
*WindowsはTeraTermなどを起動
*パブリックサブネットにあるインスタンスのパブリックIPv4アドレスをコピー
*ホスト(T):[インスタンスのIPv4アドレス]
*ユーザー名:ec2-usr
*RSA/DSA/ECDSA/ED25519鍵を使う
*インスタンスを起動したときにダウンロードしたキーペアを選択
###プライベートサブネットのインスタンスに入っていく
vi myprivatekey.pem```
*キーペアの内容を入力し保存
```chmod 400 myprivatekey.pem
ssh ec2-user@[プライベートインスタンスのIPアドレス] -i myprivatekey.pem
yes```
###MYSQLをインストールする
```sudo su
yum update -y
yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm -y```
↑[公式サイト](https://dev.mysql.com/downloads/repo/yum/)でOS等を確認
```yum install mysql-community-server -y```
##MYSQL起動
```systemctl start mysqld```
インスタンスが起動されるとmysqldも起動させるようにする
```systemctl enable mysqld```
###データベースを作成してみる
MySQLにアクセスするパスを作成する
```cat /var/log/mysqld.log | grep localhost```
一時ユーザーのパスワードが発行される(赤字の右)
```mysql -u root -p```
発行されたパスワードを入力しエンター
*パスワードを変更
```alter user root@localhost identified by '一時発行パスワード';
create database test;
show databases;```
###NATゲートウェイを削除
MySQLの設定が終わったらNATゲートウェイを削除して、
ElasticIPも削除する