👋

WordPressサイトをAWSへ移行する(1)-cloudformation-

2022/10/17に公開

はじめに

AWSには実際に手を動かしながら学べるWorkshop studioというものがあるのをご存じでしょうか?
今回はAWSへのマイグレーション:Application Migration with AWSについて、実際に手を動かし確認した結果を記録していこうと思います。

目次

  1. 構成概要
  2. 全体の流れ
  3. 移行元の環境構築-cloudformation- ★←本記事ではここまで
  4. AWS DMSでの移行-mysql to RDS-
  5. AWS MGNでの移行-wordpress to EC2-
  6. 後片づけ

1. 構成概要

まずは移行元の環境とAWS workshopが目指す最終構成を共有していきます。

移行元の環境

移行元

e-commerceサイト: Apache, PHP, wordpress
データベース: MySQL version 5.7 on Ubuntu


最終構成

最終構成

2. 全体の流れ

  1. 移行元の環境をcloudformationで作成する
    • S3からcloudformationデータを入手
    • https://checkip.amazonaws.com/ でGlobalアドレスを調べる
    • cloudformationのパラメータへGlobalアドレスを入力する
  2. MySQLデータベースをRDSへ移行する
    • セキュリティグループの作成
    • Database Migrations Service(DMS)のセットアップ
      1. ターゲットデータベースのサブネットグループの作成
      2. ターゲットデータベースの作成
      3. レプリケーションインスタンスのサブネットグループの作成
      4. レプリケーションインスタンスの作成
    • 移行元MySQLの修正
      1. binary logの有効化(for AWS DMS continuous replication)
      2. レプリケーション権限の追加
    • DMSのエンドポイントを作成する
      1. 移行元DBをソースエンドポイントに指定する
      2. 移行先RDSをターゲットエンドポイントに指定する
    • DMSによるレプリケーションの実行
  3. WebサイトをEC2へ移行する
    • Application Migration Service(MGN)をセットアップする
    • 移行元サーバへMGNのエージェントをインストールする
    • MGNで移行先サーバの設定をする
    • MGNによる移行テストを実施する
    • カットオーバーを実施する
  4. EC2からECSへ移行する ※今回はやりません。
    • セキュリティグループの作成
      1. ロードバランサー用SGの作成
      2. ECS用SGの作成
      3. EFS用SGの作成
      4. 作成したRDS用SGの修正
    • wordpressデータのマウント用EFSの構築
      1. マウントポイントの設置
      2. nfs-commonツールのインストール
    • SSMパラメータストアーの利用
      1. RDS接続情報のDB_HOST, DB_NAME, DB_USERNAME,DB_PASSWORDの作成
    • ターゲットグループとALBの構築
    • ECSクラスターの構築
    • ECSタスク定義の作成
      1. launch typeの設定
      2. タスクロールの設定
      3. メモリー、CPUのチューニング
      4. EFSボリュームのマウント
      5. コンテナ定義
      6. SSMパラメータストアーの参照設定
    • ECSサービスの定義
      1. launch typeの設定
      2. タスク定義の指定
      3. ネットワーク設定(VPC、SG、public-IP)
      4. ALBとの関連付け
      5. Auto-Scalingの設定
  5. 後片付け
    • 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などネットワーク全般の情報を発信してますので、お互いフォローして情報共有していきましょう!
https://twitter.com/pero_nw

Discussion