AWS EC2でLAMP環境を構築メモ

かれこれ5年以上使用していたさくらのVPSとはサヨナラして、本ブログをAWS環境に移行しました。
その時のEC2にLAMP環境を構築したメモです。

EC2インスタンスの作成

EC2のインスタンスを作成するにはAWSマネジメントコンソールにログインして、ヘッダメニュー「サービス」をクリックして、EC2を選択します。

EC2ダッシュボード中程の「インスタンスの作成」ボタンををクリック。

Amazon マシンイメージ (AMI)は「Amazon Linux AMI 2018.03.0 (HVM), SSD Volume Type」を選択します。

インスタンスタイプに「t2.micro」を選択し、「確認と作成」ボタンをクリック

確認画面が表示されますので、問題なければそのまま「作成」ボタンをクリック

キーペアの作成ダイアログが表示されます。キーペアとは公開鍵と秘密鍵の事で、ssh等で接続する際に必要になります。キーペア名を入力して「キーペアのダウンロード」ボタンをクリックすると「キーペア名.pem」という名前で秘密鍵がダウンロードされます。公開鍵は自動でサーバーに設定されます。既存のキーペアをすでに発行済みの場合はそれを使用しても大丈夫です。

キーペアをダウンロードしたら、「インスタンスの作成」ボタンをクリックして、インスタンスの作成を完了します。

EC2ダッシュボードのインスタンスにインスタンスが追加され、「インスタンスの状態」列が「running」になっていれば問題なくインスタンスが作成されたということになります。

セキュリティーグループ設定

作成下インスタンスはデフォルトでポートが22(ssh)しか開放されていません。これに80(http)と 443(https)を追加します。

セキュリティーグループの設定を変更するには、インスタンスを選択して下に表示される「説明」タブの中から「セキュリティグループ」に表示されているセキュリティグループ名をクリックします。

セキュリティグループ画面が表示されますので、「インバウンド」タブの「編集」タブをクリックして下さい。

インバウンドのルールの編集ダイアログが表示されます。「ルールの追加」ボタンで新しい行が追加されますので、「HTTP」と「HTTPS」を追加して下さい。タイプを選択すると他は自動で設定されますので、デフォルトのまま保存ボタンをクリックします。

インバウンドに「HTTP」と「HTTPS」が追加されれば完了です。

SSH接続

作成したインスタンスにssh接続するにはダウンロードした秘密鍵を使用して接続します。接続するIPアドレスはインスタンス画面の「説明」タブの中に記載のある、「IPv4パブリックIP」を使用します。

# ssh接続
ssh -i /path/to/キーペア名.pem IPアドレス

以降はssh接続後の作業になります。

UTC(協定世界時)→JST(日本時間)に変更

初期状態ではUTCに設定されていますので、タイムスタンプが日本時間と9時間ズレています。これをJSTに変更し、ズレを修正します。

sudo cp -p /usr/share/zoneinfo/Japan /etc/localtime
# 再起動して設定反映
sudo reboot

yum アップデート

一応、最初にインストール済みパッケージのアップデートを行います。

sudo yum update

Apacheインストール

Apache(webサーバー)をインストールします。インストールするバージョンは2.4です。

# インストール
sudo yum install httpd24
# 起動
sudo service httpd start
# 自動起動をonにする
sudo chkconfig httpd on

PHPインストール

PHPはバージョン7.1をインストールします。

sudo yum install php71 php71-mbstring php71-pdo php71-mysqlnd php71-gd
# Apache再起動
sudo service httpd start

MySQLインストール

MySQLのインストールバージョンは5.7です。

# インストール
sudo yum install mysql57
sudo yum install mysql57-common mysql57-devel mysql57-embedded mysql57-libs mysql57-server
# 起動
sudo service mysqld start
# 自動起動をonにする
sudo chkconfig mysqld on

インストール後はMySQLのrootユーザーのパスワードが空の状態になっておりますので、パスワードを設定します。

# mysqlコンソール起動
mysql -u root
-- rootユーザーのパスワードを設定
SET PASSWORD FOR 'root'@'localhost' = password('password');

以上でEC2にLAMP環境を構築する手順は完了です。後はアプリケーションをインストールしたり、データベースにデータを移管したりする感じになります。

移管後の所感

今回は12ヶ月間無料で使用できる構成でインスタンスを作成してみました。移管前は「さくらのVPS(v3) 1G」×2台(WEB・DB)で構成しておりスペックダウンになるので、パフォーマンスを心配していましたが、特に遜色なく問題なく動作しているので、とりあえずは満足です。

コメントを残す