👋
WordPressサイトをAWSへ移行する(1)-cloudformation-
はじめに
AWSには実際に手を動かしながら学べるWorkshop studioというものがあるのをご存じでしょうか?
今回はAWSへのマイグレーション:Application Migration with AWSについて、実際に手を動かし確認した結果を記録していこうと思います。
目次
- 構成概要
- 全体の流れ
- 移行元の環境構築-cloudformation- ★←本記事ではここまで
- AWS DMSでの移行-mysql to RDS-
- AWS MGNでの移行-wordpress to EC2-
- 後片づけ
1. 構成概要
まずは移行元の環境とAWS workshopが目指す最終構成を共有していきます。
移行元の環境
e-commerceサイト: Apache, PHP, wordpress
データベース: MySQL version 5.7 on Ubuntu
最終構成
2. 全体の流れ
-
移行元の環境をcloudformationで作成する
- S3からcloudformationデータを入手
- https://checkip.amazonaws.com/ でGlobalアドレスを調べる
- cloudformationのパラメータへGlobalアドレスを入力する
-
MySQLデータベースをRDSへ移行する
- セキュリティグループの作成
- Database Migrations Service(DMS)のセットアップ
- ターゲットデータベースのサブネットグループの作成
- ターゲットデータベースの作成
- レプリケーションインスタンスのサブネットグループの作成
- レプリケーションインスタンスの作成
- 移行元MySQLの修正
- binary logの有効化(for AWS DMS continuous replication)
- レプリケーション権限の追加
- DMSのエンドポイントを作成する
- 移行元DBをソースエンドポイントに指定する
- 移行先RDSをターゲットエンドポイントに指定する
- DMSによるレプリケーションの実行
-
WebサイトをEC2へ移行する
- Application Migration Service(MGN)をセットアップする
- 移行元サーバへMGNのエージェントをインストールする
- MGNで移行先サーバの設定をする
- MGNによる移行テストを実施する
- カットオーバーを実施する
-
EC2からECSへ移行する※今回はやりません。- セキュリティグループの作成
- ロードバランサー用SGの作成
- ECS用SGの作成
- EFS用SGの作成
- 作成したRDS用SGの修正
- wordpressデータのマウント用EFSの構築
- マウントポイントの設置
- nfs-commonツールのインストール
- SSMパラメータストアーの利用
- RDS接続情報のDB_HOST, DB_NAME, DB_USERNAME,DB_PASSWORDの作成
- ターゲットグループとALBの構築
- ECSクラスターの構築
- ECSタスク定義の作成
- launch typeの設定
- タスクロールの設定
- メモリー、CPUのチューニング
- EFSボリュームのマウント
- コンテナ定義
- SSMパラメータストアーの参照設定
- ECSサービスの定義
- launch typeの設定
- タスク定義の指定
- ネットワーク設定(VPC、SG、public-IP)
- ALBとの関連付け
- Auto-Scalingの設定
- セキュリティグループの作成
-
後片付け
- MGN, RDS, DMS, EFS, ECS, EC2の削除
- cloudformationの削除
3. 移行元の環境をcloudformationで作成する
こちらをクリックし、cloudformationのデータを使い、移行元環境をセットアップする。
https://checkip.amazonaws.com/ から自身のGlobalアドレスを調べ、cloudformationパラメータのYourIPAddressに入力する
その他はデフォルトのまま、下図の3つにチェックし、スタックを作成する。
以上、全体の流れと移行元環境の構築でした。
次回は、
4. AWS DMSでの移行-mysql to RDS-
5. AWS MGNでの移行-wordpress to EC2-
について紹介します。
日々、Twitterにて検証を通してAWSなどネットワーク全般の情報を発信してますので、お互いフォローして情報共有していきましょう!
Discussion