2016年5月14日(土)に行われた「AMIMOTO 起動隊 アドバンスド シリーズ ハンズオン in 東京」に参加してきました。
「ナカノヒト」なのに参加したのは来月仙台・山形で開催される同ハンズオン・セッションの予習です。

IMG_2389

今回はハンズオンの内容をさらっと紹介しつつ、興味のある方は仙台・福岡のハンズオンに参加していただければと思います。

スポンサーサイト

インフラ構成を手動で作成する別名「苦行」

simple_stack_diagram-20160316201603

最終的には上記の構成を作ります。
通常の AMIMOTO は単一の EC2 インスタンスに Web サーバーやデータベース、WordPress など全部入っているのですが、

  • 前段に CloudFront をおいて CDN を利用しコンテンツを配信する
  • WordPress のメディアファイル(アップロードしたファイル)は EC2 ではなく S3 に配置して配信する
  • EC2 の前段にロードバランサーをおく
  • データベースは RDS(MariaDB)に置く

という構成になります。
これにより、EC2 単一インスタンスでトラフィックが多くなったりした場合に EC2 をスケールアップするよりも、より多くのトラフィックを捌ける様になります。

この構成をすべて「手動」で構築してくのが今回のハンズオンの内容でした。

手順をざっくり紹介すると

  1. 事前準備
    1. AMIMOTOを起動する(WordPressインストール前で止めておく)
    2. ローカルマシンに AWS-CLI をインストールする(Windowsはここが面倒)
    3. IAM ユーザーの作成(ハンズオン様なので権限は甘めなので実際に使うときは権限を見直すこと)
    4. 上記で作った IAMユーザーでAWS-CLIを使えるようにセットアップ
  2. AWSサービスのセットアップ
    1. AWS-CLI から CloudFront のセットアップ(完了まで20〜30分)
    2. S3 バケットの作成
    3. RDS をセットアップし、WordPress がアクセスできるよう wp-config.php の書き換え(RDSのセットアップで15分ぐらい)
  3. CloudFront の Domain Name でアクセスして WordPressのセットアップ
  4. WordPressプラグインの有効化
    1. メディアファイルを S3 に転送させるプラグイン「Nephila clavata (絡新婦)」を有効化しセットアップ
    2. WordPress から CloudFront のキャッシュを削除させるプラグイン「C3 Cloudfront Clear Cache」を有効化しセットアップ
    3. CloudFront 利用時でも WordPress のプレビューを使えるようにするプラグイン「CF Preview Fix」を有効化

こんな感じです。

起動した画面はこちら。CloudFront の Domain Name でアクセスした画面です。

IMG_2390_2

 

それなりに手数が多い上、ブラウザで AWS マネジメントコンソールや WordPress の画面にいったり、コマンドラインからの操作もローカルだったり、EC2 インスタンスに SSH ログインして vi でファイルを書き換えたりと手間もかかります。
また、AWS サービスをセットアップ中に待ち時間が発生したりとハンズオン全体で数時間かかります。(おそらく淡々と進めても1時間以上はかかるかもしれません)

これを自動化したものが JINKEI CloudFormation です。

自動化が最強なのである

AWSマーケットプレイスからAMIMOTOのWordPress AMIを起動する場合、「Single AMI」の他に 「WordPress powered by JINKEI」が選択できるようになっています。

スクリーンショット 2016-05-16 15.32.06

上図のように JINKEI を選択すると、最初の構成図の内容を簡単に構築できます。
CloudFront や RDS 起動の待ち時間は発生しますが、IAMユーザーの権限は適切なものに変更してあったり、wp-config.php の書き換えやプラグインとAWSとの連携も必要ありません。

ハンズオンのスライドを見つつコマンドまとめを見ながらであれば、私のようなフロントエンドよりの人間でも構築可能ですが、実際にやってみて、ボタンクリックで起動できる方が悩まないで済むし手数も少なく遥かに楽でした。

地方開催もあるよ

このアドバンスドハンズオンですが、来月には福岡と仙台でも開催されます。

また、サーバーワークスさんで開催され盛況だった「AWSの運用自動化サービス Cloud Automator で”攻め”のシステム運用」も仙台の前日に山形で開催されます。

加えて、福岡・仙台・山形いずれの会場でも最近注目のマーケティングオートメーションツール「Mautic」の紹介もあります。

まだ席に余裕がありますので、ぜひお申し込みください。