movable type for aws hands-on

199
Movable Type for AWS Hands-on Six Apart, Ltd. Ver. 1.2 http://www.sixapart.jp/ CMS どうでしょう - 大阪編 -

Upload: yuji-takayama

Post on 14-Jul-2015

997 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Movable Type for AWS Hands-on

Movable Type for AWS Hands-on

Six Apart, Ltd. Ver. 1.2

http://www.sixapart.jp/

CMS どうでしょう - 大阪編 -

Page 2: Movable Type for AWS Hands-on

YUJI TAKAYAMASix Apart, Ltd.

Senior Product Manager Movable Type Lead Engineer

My Social

icon

yuji

yuji

Yuji Takayama

シックス・アパートで、働き始めて9年目

Movable Type 一筋

好きなタグは <MTAssetProperty>

好きなサービスは Cloud Watch

Page 3: Movable Type for AWS Hands-on
Page 4: Movable Type for AWS Hands-on

 Movable Type とは

Movable Type 1.0 Movable Type 6.1

サンフランシスコ生まれの世界標準 CMS パブリッシングプラットフォーム。

世界中のユーザーに使われ続けて 13年。

2001年 2015年

Page 5: Movable Type for AWS Hands-on

 Movable Type User Groups

日本全国に 8 つのユーザーグループ

北海道

東北

東京

長野

名古屋

関西

広島

福岡

MTDDC Meetup

MT 勉強会http://www.movabletype.jp/mtug/index.html

Page 6: Movable Type for AWS Hands-on

 Movable Type for AWSとは

Movable Type for AWS は、Movable Type 6 が

インストールされた、OS込みの Amazon

Machine Image(AMI)です。

OS、アプリケーション、ウェブサーバー、

PSGIサーバー、PHP、データベースがすべて

Movable Type にチューニングされた形で提供

されるため、数クリックで簡単に Amazon

EC2 サーバー上に環境を構築できます。

アプリケーション: Movable Type 6.1

ウェブサーバー: nginx

php: php-fpm

OS: Amazon Linux 2014.09版

PSGI サーバー: starman

データベース: mysql

システム構成

Page 7: Movable Type for AWS Hands-on

 Movable Type for AWSとは

料金

時間課金制

$ 0.07 / Hour *1

$ 499 / Year *1

Micro インスタンスは無料

テクニカルサポートは別途 (¥10,800 -)

7日分の無料トライアル

*1: AWS 利用料は別途、Micro インスタンスは無料

*2: EC2 が対応しているリージョン

特徴

All-in-one パッケージ

AWS Marketplace

全リージョン対応 *2

yum コマンドでアップデート

Page 8: Movable Type for AWS Hands-on

ハンズオン

Page 9: Movable Type for AWS Hands-on

http://www.slideshare.net/

swordbreaker/movable-type-for-

aws-handson-jaws-days-2015

Page 10: Movable Type for AWS Hands-on

 ハンズオンのシナリオ

VPC 内に Movable Type のシステムを構築します。

構築された Movable Type を使って再構築、記事の公開を体験します。

システムの構築を3つのフェーズで実施していきます。(残り時間によっては途中で終了します)

最初は、EC2 1台による最小構成のシステムから開始します。

アクセス数が増えてきたと仮定して、システムの拡張を行っていきます。

AWS の各種サービスと連携した、より実用的なシステムについて解説を行います。

Page 11: Movable Type for AWS Hands-on

 全体構成(最終フェーズ)

EC2 2台構成

ELB

RDS

Multi -AZ

Page 12: Movable Type for AWS Hands-on

Phase 1

Page 13: Movable Type for AWS Hands-on

 全体構成(Phase 1)

EC2 1台構成

Internet Gateway

Page 14: Movable Type for AWS Hands-on

VPC の作成

Page 15: Movable Type for AWS Hands-on

 VPC の作成

1. “Start VPC Wizard” ボタンをクリック

します。

Page 16: Movable Type for AWS Hands-on

 VPC の作成

1. “VPC with a Simple Public Subnet” を

選択し、”Select” ボタンをクリックし

ます。

Page 17: Movable Type for AWS Hands-on

 VPC の作成

1. 以下の内容で入力します。

IP CIDR block: 10.0.0.0/16

VPC name: vpc-mt-handson

Availability Zone: ap-northeast-1b

2. “Create VPC” ボタンをクリックしま

す。

Page 18: Movable Type for AWS Hands-on

 VPC の作成

1. VPC が作成されます。

Page 19: Movable Type for AWS Hands-on

 VPC の作成

1. 左ペインの “Your VPCs” を選択する

と、作成された VPC が確認できま

す。

Page 20: Movable Type for AWS Hands-on

 VPC の作成

1. 左ペインの “Subnets” を選択する

と、作成された Subnet が確認できま

す。

2. 作成された subnet を選択し、CIDR

が、10.0.0.0/24 、Availability Zone が

ap-northeast-1b になっていることを

確認して下さい。

Page 21: Movable Type for AWS Hands-on

 VPC の作成

1. “Route Table” タブを選択し、Route

Table を確認します。

2. igw- から始まる Target が、Internet

Gateway です。この Target が存在し

ない場合は、インターネット側との通

信ができません。

Page 22: Movable Type for AWS Hands-on

EC2 インスタンスの配置

Page 23: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. EC2 のサービスページに移動

し、”Launch Instance” ボタンをクリ

ックします。

Page 24: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. “AWS Marketplace” タブを選択し、

検索ボックスに “Movable Type 6” と

入力します。

Page 25: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. “Movable Type 6” のパッケージが 3

種類表示されます。

2. ”Movable Type 6 (HVM, nginx)” の右

横の “Select” をクリックします。

Page 26: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. “T2.Micro” インスタンスのソフトウ

ェア料金が無料であることが確認で

きます。また、“T2.Micro” 以外のイン

スタンス タイプでは、一律 $0.07 で

あることも確認できます。

Page 27: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. 年間契約で利用する場合は、AWS

Marketplace のサイトから起動する必

要があります。

Page 28: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. ページ下部にある “Continue” をクリ

ックします。

Page 29: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. インスタンス タイプとして、デフォ

ルトでは “m3.medium” が選択されて

います。

2. 今回は “t2.micro” を選択します。

3. 選択したら、”Next: Configure

InstanceDetails” をクリックします。

Page 30: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. “Network” は、先ほど作成した VPC

を選択します。

2. “Subnet” は、”(10.0.0.0/24) ap-

northeast-b” を選択します。

3. それ以外は、デフォルトのままで

“Next: Add Storage” をクリックしま

す。

Page 31: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. ストレージは特に変更すること無

く、”Next: Tag Instance” をクリック

します。

Page 32: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. 管理しやすくするために、名前をつ

けます。ここでは、”AZ-B-MT-1” と指

定します。

2. 値を入れ終わったら、”Next:

Configure Security Group” をクリック

します。

Page 33: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. Movable Type for AWS では、おすす

めのセキュリティグループを用意して

います。

2.

3. 今回は、この設定のまま利用します

ので、“Review and Launch” をクリッ

クします。

Page 34: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. 内容を確認して、”Launch” をクリッ

クします。

Page 35: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. Key Pair は、既存のものを利用しま

す。もし、Key Pair を持っていない場

合は、次のステップで作成します。の

で、”Create a new key pair” を選択し

てください。

2. チェックボックスにチェックを入れ

て、”Launch Instance” をクリックし

ます。

Page 36: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. 新しい Key Pair を作成する場合

は、”Create a new key pair” を選

び、”Key pair name” に任意の名前を

入力します。

2. 名前を入力したのち、”Download

Key Pair” をクリックして Key Pair を

ダウンロードします。

3. “Launch Instances” をクリックしま

す。

Page 37: Movable Type for AWS Hands-on

 EC2 インスタンスの配置

1. “View Instance” をクリックすると、

作成されたインスタンスを確認できま

す。

Page 38: Movable Type for AWS Hands-on

Elastic IP の割り当て

Page 39: Movable Type for AWS Hands-on

 Elastic IP の割り当て

1. 左のペインから “Elastic IPs” を選択し

ます。

2. “Associate New Address” をクリック

します。

Page 40: Movable Type for AWS Hands-on

 Elastic IP の割り当て

1. “VPC” を選択して、”Yes, Allocate” を

クリックします。

Page 41: Movable Type for AWS Hands-on

 Elastic IP の割り当て

1. 先ほど作成された IP アドレスを選択

して、”Associate Address” をクリック

します。

Page 42: Movable Type for AWS Hands-on

 Elastic IP の割り当て

1. 先ほど作成した EC2 のインスタンス

を選択し、”Associate” をクリックし

ます。

Page 43: Movable Type for AWS Hands-on

 Elastic IP の割り当て

1. 左ペインの “Instances” を選択して、

作成した EC2 インスタンスを選択す

ると、Elastic IP が割り当てられてい

ることが確認できます。

Page 44: Movable Type for AWS Hands-on

 Elastic IP の割り当て

1. Elastic IP で実際に ターミナルからロ

グインできるか試してみましょう。

2. ターミナルを開き、以下のコマンド

を入力します。”Key Pair File Name”

と “IP Address” は、各々の環境に応じ

て変更してください。

ssh -i <Key Pair File Name> ec2-user@<IP Address>

Page 45: Movable Type for AWS Hands-on

 Elastic IP の割り当て

1. Elastic IP で、ブラウザからアクセス

できることを確認します。

2. ブラウザを開き、IPアドレスを入力

すると、Movable Type の スタート画

面が表示されます。

Page 46: Movable Type for AWS Hands-on

Movable Type のインストール

Page 47: Movable Type for AWS Hands-on

 Movable Type のインストール

1. ブラウザを開き、IPアドレスを入力

すると、Movable Type の スタート画

面が表示されます。

2. “Start Movable Type” をクリックし

て、インストールを開始します。

Page 48: Movable Type for AWS Hands-on

 Movable Type のインストール

1. 新規ユーザー の情報を入力します。

Username: サインインのアカウント

Display Name:ユーザーの表示名

Email Address: メールアドレス

User this as system email address: シ

ステムからのメールの From アカウ

ントとして使用するか

Language: 管理画面の表示言語

Password: サインインのパスワード

2. 終わったら、”Continue” をクリック

します。

Page 49: Movable Type for AWS Hands-on

 Movable Type のインストール

1. 最初のウェブサイトの情報を入力し

ます。

Website Name: サイト名

Website URL: サイトのURL

Website Root: サイトの出力パス

Theme: サイトのテンプレートテー

Time Zone: タイムゾーン

2. 終わったら、”Finish Install” をクリッ

クします。

Page 50: Movable Type for AWS Hands-on

 Movable Type のインストール

1. インストールが終わると、ユーザー

ダッシュボード が表示されます。

Page 51: Movable Type for AWS Hands-on

Movable Type を使ってみる

Page 52: Movable Type for AWS Hands-on

 初めての再構築

1. ダッシュボードの「ウェブサイト」

というタブの中に「My First Website」

が表示されています。「My First

Website」をクリックし、ウェブサイ

トのダッシュボードに移動します。

Page 53: Movable Type for AWS Hands-on

 初めての再構築

1. 右上の「再構築アイコン」をクリッ

クします。

2. 再構築ダイアログが表示されます。

3. 「再構築」ボタンをクリックすると

再構築が始まります。

Page 54: Movable Type for AWS Hands-on

 初めての再構築

1. 再構築が終わったら「閉じる」ボタ

ンをクリックします。

Page 55: Movable Type for AWS Hands-on

 ダッシュボードに戻る

1. いま、どこにいるのかは画面上部の

バーの色で判別できます。

2. いずれかのウェブサイトにいる場合

は、緑のバー、 いずれかのブログに

いる場合は、青いバーが表示されてい

ます

3. システムレベルにいる場合は、灰色

のバーが表示されます。

Page 56: Movable Type for AWS Hands-on

 ダッシュボードに戻る

1. サイト名をクリックすると、サイト

間を移動するメニューが表示されます

2. 今どこにいるのかわからなくなった

場合は、「ユーザーダッシュボード」

をクリックすると、ログイン直後に表

示されていたダッシュボードに移動で

きます。

Page 57: Movable Type for AWS Hands-on

 Movable Type で記事を書いてみる

1. インストール時に作成したウェブサ

イトに対して、初めての記事を書いて

みます。

2. ダッシュボードの「ウェブサイト」

というタブの中に「My First Website」

が表示されています。右にある「記事

を作成」をクリックします。

Page 58: Movable Type for AWS Hands-on

 Movable Type で記事を書いてみる

1. 記事の作成画面が開きます。

Page 59: Movable Type for AWS Hands-on

 Movable Type で記事を書いてみる

1. デフォルトでは、記事の入力フォーマッ

トとして「リッチテキスト」が選択託

されていますが、他にも「Markdown」

や、「Textile 2」HTML を全て入力で

きる「フォーマットなし」などを先駆

できます。

2. リッチテキストエディタは、TinyMCE

Ver. 3 を採用しています。

Page 60: Movable Type for AWS Hands-on

 Movable Type で記事を書いてみる

1. タイトルと本文を入力します。

2. プレビューボタンをクリックしま

す。

Page 61: Movable Type for AWS Hands-on

 Movable Type で記事を書いてみる

1. 新しいタブ(ウィンドウ)にプレ

ビュー結果が表示されます。

2. プレビューを終わらせる場合は、タブ

(ウィンドウ)をクローズしてくださ

い。

Page 62: Movable Type for AWS Hands-on

 Movable Type で記事を書いてみる

1. 「公開」ボタンをクリックすると、作

成された記事が公開されます。まだ公

開したくないという場合は、「ステー

タス」のドロップボックスから「未公

開(原稿)」を選べば公開されません。

2. また、「日時指定」を選択すると「公

開日」に設定された日時に自動公開さ

れます。(run-periodic-tasks が実行さ

れている必要がありますが、MT for

AWS では、実行設定済みです)

Page 63: Movable Type for AWS Hands-on

 Movable Type で記事を書いてみる

1. 記事の保存が完了すると、作成された

記事を確認することができます。

2. 「記事を見る」リンクをクリックしま

す。

Page 64: Movable Type for AWS Hands-on

 Movable Type で記事を書いてみる

1. 先ほどプレビューで確認した内容と同

じ結果が表示されます。

Page 65: Movable Type for AWS Hands-on

 Scale Up してみる

1. 起動したインスタンスは、運用後も

サイズを自由に変更することができま

す。

2. 左ペインの “Instances” を選択して、

作成した EC2 インスタンスを選択し

ます。

3. 「Actions」をクリックして、メニュー

を表示し、「Instance State」-

「Stop」を選択して、一旦インスタン

スを停止します。

Page 66: Movable Type for AWS Hands-on

Movable Type の Update

Page 67: Movable Type for AWS Hands-on

 Movable Type の Update

1.先ほどと同様にターミナルを開き、以

下のコマンドを入力します。”Key Pair

File Name” と “IP Address” は、各々の

環境に応じて変更してください。

ssh -i <Key Pair File Name> ec2-user@<IP Address>

Page 68: Movable Type for AWS Hands-on

 Movable Type の Update

1. Movable Type for AWS では、yum コ

マンドによる Movable Type のアップ

デートができます。以下のコマンドを

実行すると、アップデートは完了です

2. 今回は、最新版をインストールしてい

るのでアップデートは行われません。

yum clean all; yum update movabletype

Page 69: Movable Type for AWS Hands-on

Scale Up してみる

Page 70: Movable Type for AWS Hands-on

 Scale Up してみる

1. 確認のダイアログが表示されます。

2. 「Yes, Stop」をクリックします。

3. 停止中は、一覧の Instance State が

Stopping になっています。これが、

Stopped になれば停止完了です。

Page 71: Movable Type for AWS Hands-on

 Scale Up してみる

1. 「Actions」をクリックして、

「Instance Settings」-「Change

Instance Type」をクリックします。

Page 72: Movable Type for AWS Hands-on

 Scale Up してみる

1. ダイアログが表示されるので、

「Instance Type」から利用したいイ

ンスタンスのタイプを選択します。

2. 今回は、「t2.small」を選びます。

Page 73: Movable Type for AWS Hands-on

 Scale Up してみる

1. インスタンスを起動します。

2. 「Actions」-「Instance State」-

「Start」を選択します。

Page 74: Movable Type for AWS Hands-on

 Scale Up してみる

1. 起動の確認ダイアログが表示される

ので、「Yes, Start」をクリックしま

す。

2. 一覧の Instance State が Pending か

ら、Running に変わればインスタン

スのサイズ変更は完了です。

Page 75: Movable Type for AWS Hands-on

Scale Down してみる

Page 76: Movable Type for AWS Hands-on

 Scale Down してみる

1. 確認のダイアログが表示されます。

2. 「Yes, Stop」をクリックします。

3. 停止中は、一覧の Instance State が

Stopping になっています。これが、

Stopped になれば停止完了です。

Page 77: Movable Type for AWS Hands-on

 Scale Down してみる

1. 「Actions」をクリックして、

「Instance Settings」-「Change

Instance Type」をクリックします。

Page 78: Movable Type for AWS Hands-on

 Scale Down してみる

1. ダイアログが表示されるので、

「Instance Type」から利用したいイ

ンスタンスのタイプを選択します。

2. 今回は、「t2.micro」を選びます。

Page 79: Movable Type for AWS Hands-on

 Scale Down してみる

1. インスタンスを起動します。

2. 「Actions」-「Instance State」-

「Start」を選択します。

Page 80: Movable Type for AWS Hands-on

 Scale Down してみる

1. 起動の確認ダイアログが表示される

ので、「Yes, Start」をクリックしま

す。

2. 一覧の Instance State が Pending か

ら、Running に変わればインスタン

スのサイズ変更は完了です。

Page 81: Movable Type for AWS Hands-on

Phase 1 まとめ

Page 82: Movable Type for AWS Hands-on

 全体構成(Phase 1)

EC2 1台構成

Internet Gateway

Page 83: Movable Type for AWS Hands-on

 Phase 1 のまとめ

HVM 版を利用するには、VPC の構築が必要である。

新しい VPC 内に Movable Type のシステムを構築すると、セキュリティにも考慮された環境が構

築できる。

Internet Gateway を利用すると、インターネットに公開するサイトを作成できる。

Movable Type for AWS を使うと、インストール前の準備作業(Perl、DB、ImageMagickなどの

周辺環境構築)が必要ないので、簡単にインストールして使いはじめることが出来る。

Page 84: Movable Type for AWS Hands-on

Phase 2

Page 85: Movable Type for AWS Hands-on

 全体構成(Phase 2)

EC2 1台構成

Internet Gateway

RDS (Multi-AZ)

Page 86: Movable Type for AWS Hands-on

DB 用のセキュリティグループ作成

Page 87: Movable Type for AWS Hands-on

 DB 用のセキュリティグループ作成

1. 左のペインから “Security Groups” と

選択し、”Create Security Grup” をク

リックします。

Page 88: Movable Type for AWS Hands-on

 DB 用のセキュリティグループ作成

1. “Security group name” に “mt-db”と

入力し、VPC に 今回利用している

VPC を選択します。

2. “Inbound” タブから、”Add Rule” を

クリックします。

3. “Type” として、”MYSQL” を選択

し、”Source” に “Custom IP” と “sg”

から始まるセキュリティグループ(今

回は、Movable Type 6 - で始まるグルー

プ)を指定し、”Create” をクリックし

ます。

Page 89: Movable Type for AWS Hands-on

DB 用のサブネットグループ作成

Page 90: Movable Type for AWS Hands-on

 DB 用のサブネットグループ作成

1. 左のペインから “Subnets” を選択

し、”Create Subnet” をクリックしま

す。

Page 91: Movable Type for AWS Hands-on

 DB 用のサブネットグループ作成

1. 以下の内容で設定をします。

Name tag:MTDB-AZ-B

VPC: 現在利用しているVPC

Availability Zone: ap-northeast-1b

CIDR block: 10.0.2.0/24

2. 入力が終わったら、”Yes, Create” を

クリックします。

Page 92: Movable Type for AWS Hands-on

 DB 用のサブネットグループ作成

1. 2つ目のサブネットを以下の内容で設

定をします。

Name tag:MTDB-AZ-C

VPC: 現在利用しているVPC

Availability Zone: ap-northeast-1c

CIDR block: 10.0.3.0/24

2. 入力が終わったら、”Yes, Create” を

クリックします。

Page 93: Movable Type for AWS Hands-on

 DB 用のサブネットグループ作成

1. VPC を作成したときに作成されたサ

ブネットと合わせて、3つのサブネッ

トが作成されていることを確認して下

さい。

Page 94: Movable Type for AWS Hands-on

 DB 用のサブネットグループ作成

1. RDS のページに移動して、左のペイ

ンから “Subnet Groups” を選択します。

2. “Create DB Subnet Group” をクリッ

クします。

Page 95: Movable Type for AWS Hands-on

 DB 用のサブネットグループ作成

1. “Name”, “Description” を入力

し、”VPC” に今回作成した VPC を選

択します。

2. “Availability Zone” に “ap-northeast-

1b”、“Subnet ID” に 先ほど作成した

Subnet を選択して “Add” をクリック

します。同様に、”ap-northeast-1c”

からも Subnet を選択して “Add” しま

す。

3. Subnet を2つ追加したら、”Create”

をクリックします。

Page 96: Movable Type for AWS Hands-on

 DB 用のサブネットグループ作成

1. DB Subnet の作成が完了しました。

Page 97: Movable Type for AWS Hands-on

DB 用のパラメータグループ作成

Page 98: Movable Type for AWS Hands-on

 DB 用のパラメータグループ作成

1. MySQL の パラメータを調整するた

めに、パラメータグループの作成を行

います。

2. 左のペインから “Parameter Groups”

を選択し、”Create Parameter Group”

をクリックします。

Page 99: Movable Type for AWS Hands-on

 DB 用のパラメータグループ作成

1. “Group Name”, “Description” を入力

し、”Parameter Group Family” に

“mysql5.6” を選択します。

2. “Create” をクリックします。

Page 100: Movable Type for AWS Hands-on

 DB 用のパラメータグループ作成

1. 先ほど作成したパラメータグループ

を選択し、”Edit Parameter” をクリッ

クします。

Page 101: Movable Type for AWS Hands-on

 DB 用のパラメータグループ作成

1. 画面をスクロールし、以下のパラメー

タに “utf-8” を設定して “Save

Changes” をクリックします。

character_set_client

character_set_connection

character_set_database

character_set_filesystem

character_set_results

character_set_server

Page 102: Movable Type for AWS Hands-on

DB インスタンスの作成

Page 103: Movable Type for AWS Hands-on

 DB インスタンスの作成

1. 左のペインから “Instances” を選択し

ます。

2. “Launch DB Instance” をクリックし

ます。

Page 104: Movable Type for AWS Hands-on

 DB インスタンスの作成

1. “MySQL” を選択し、”Select” をク

リックします。

Page 105: Movable Type for AWS Hands-on

 DB インスタンスの作成

1. Multi-AZ の利用に “Yes” を選択し

て、”Next Step” をクリックします。

Page 106: Movable Type for AWS Hands-on

 DB インスタンスの作成

1. “DB Instance Class” に

“db.t2.micro”、”Multi-AZ

Deployment” に “Yes” を選択します。

2. “DB Instance Identifier”, “Master

User”, “Master Password”, “Confirm

Password” を入力し、”Next Step” を

クリックします。

Page 107: Movable Type for AWS Hands-on

 DB インスタンスの作成

1. 以下のように設定します。

VPC: 今回作成した VPC

Sebnet Group: 先ほど作成したサブ

ネットグループ

VPC Security Group: 先ほど作成した

セキュリティグループ

Database Name: movabletype

DB Parameter Group: 先ほど作成し

たパラメータグループ

2. 入力したのち、”Launch DB Instance”

をクリックします。

Page 108: Movable Type for AWS Hands-on

 DB インスタンスの作成

1. 作成が終わると、インスタンスを確

認できます。”View Your Instances” を

クリックします。

Page 109: Movable Type for AWS Hands-on

 DB インスタンスの作成

1. 少し待つと、”Status” が “available”

になるので、それまで待ちます。

Page 110: Movable Type for AWS Hands-on

 DB インスタンスの作成

1. 作成された DB インスタンスを選択

して、DB のエンドポイントを確認し

ます。

Page 111: Movable Type for AWS Hands-on

MySQL のデータを移行する

Page 112: Movable Type for AWS Hands-on

 MySQL のデータを移行する

1. ターミナルから、EC2 インスタンス

にログインして、データベースのダン

プデータを作成します。

2. ダンプの取得には、”mysqldump” コ

マンドを使用します。

mysqldump -usixapart -pp@ssw0rd movabletype > db-backup.sql

Page 113: Movable Type for AWS Hands-on

 MySQL のデータを移行する

1. 先ほど取得したダンプを RDS 上の

MySQL にインポートします。

2. インポートには、”mysql” コマンド

を使用します。

mysql -u<DBユーザー名> -p<DBパスワード> -h <RDSのエンドポイント> movabletype < db-backup.sql

Page 114: Movable Type for AWS Hands-on

Movable Type の設定を変更する

Page 115: Movable Type for AWS Hands-on

 Movable Type の設定を変更する

1. Movable Type の構成ファイル(mt-

config.cgi)を編集して、RDS を利用す

るように変更します。

DBUser: RDSのユーザー

DBPassword: RDSユーザーのパスワー

DBHost: RDS のエンドポイント

DBPort: 3306

sudo vi /app/movabletype/mt-config.cgi

Page 116: Movable Type for AWS Hands-on

 Movable Type の設定を変更する

1. ファイルを保存したのち、Movable

Type のサービスを再起動します。

sudo service movabletype reload

Page 117: Movable Type for AWS Hands-on

 Movable Type の設定を変更する

1. Movable Type の管理画面にアクセス

してみます。

2. サインイン画面が表示されて、サイ

ンインができれば設定は完了です。

Page 118: Movable Type for AWS Hands-on

Phase 2 まとめ

Page 119: Movable Type for AWS Hands-on

 全体構成(Phase 2)

EC2 1台構成

Internet Gateway

RDS (Multi-AZ)

Page 120: Movable Type for AWS Hands-on

 Phase 2 のまとめ

RDS を利用することで、データベースのバックアップや、可用性を高めることができます。

Multi-AZ にすることで、Master - Slave モデルが簡単に構築できます。

UTF-8 で利用する場合は、RDS の パラメータグループでカスタマイズする。

Page 121: Movable Type for AWS Hands-on

Phase 3

Page 122: Movable Type for AWS Hands-on

 全体構成(Phase 3)

EC2 2台構成

ELB

RDS

Multi -AZ

Page 123: Movable Type for AWS Hands-on

EC2 インスタンスの AMI 化

Page 124: Movable Type for AWS Hands-on

 EC2 インスタンスの AMI 化

1. 2台目以降のインスタンスを起動する

とき、毎回同じ設定を行う必要はあり

ませんので、既存のインスタンスを

AMI 化しておきます。

2. EC2 のページで、左のペインから

“Instances” を選び、現在の EC2 イン

スタンスを選択します。

Page 125: Movable Type for AWS Hands-on

 EC2 インスタンスの AMI 化

1. “Actions” から、”Image” - “Create

Image” を選択します。

Page 126: Movable Type for AWS Hands-on

 EC2 インスタンスの AMI 化

1. “Image name”, “Description” を入力

します。”No reboot” にはチェックを

入れません。

2. 入力したら、”Create Image” をク

リックします。

Page 127: Movable Type for AWS Hands-on

 EC2 インスタンスの AMI 化

1. 既存のサーバーが再起動して、AMI

が作成されます。

2. イメージの作成には、数分かかりま

す。

Page 128: Movable Type for AWS Hands-on

新しいインスタンス用の Subnet の追加

Page 129: Movable Type for AWS Hands-on

 新しいインスタンス用の Subnet の追加

1. VPC のページに移動し、左のペイン

から “Subnets” を選択します。

2. “Create Subnet” をクリックします。

Page 130: Movable Type for AWS Hands-on

 新しいインスタンス用の Subnet の追加

1. 以下の内容を入力します。

Name tag: MT-App-AZ-C

VPC: 今回作成した VPC

Availability Zone: ap-northeast-1c

CIDR block: 10.0.1.0/24

2. 入力後、”Yes, Create” をクリックし

ます。

Page 131: Movable Type for AWS Hands-on

 新しいインスタンス用の Subnet の追加

1. 合計 4つのサブネットが作成されて

います。

Page 132: Movable Type for AWS Hands-on

 新しいインスタンス用の Subnet の追加

1. 先ほど作成されたサブネットを選択

し、”Route Table" を選びます。

2. “Edit” をクリックして、編集画面を

表示します。

Page 133: Movable Type for AWS Hands-on

 新しいインスタンス用の Subnet の追加

1. “Change to” から、”Internet

Gateway” が含まれているルートテー

ブルを選択し、”Save” をクリックし

ます。

Page 134: Movable Type for AWS Hands-on

新しいインスタンスの起動

Page 135: Movable Type for AWS Hands-on

 新しいインスタンスの起動

1. EC2 のページより、”AMIs” を開き、

先ほど作成した AMI を選択して

“Launch” をクリックします。

Page 136: Movable Type for AWS Hands-on

 新しいインスタンスの起動

1. インスタンスタイプは、デフォルト

で “t2.micro” が選択されていますの

で、”Next: Configure Instance

Details” をクリックします。

Page 137: Movable Type for AWS Hands-on

 新しいインスタンスの起動

1. “Network” には、今回利用している

VPC を選択します。

2. “Subnet” には、先ほど作成した “ap-

northeast-1c” のサブネットを指定し

ます。

3. 指定した後、”Next: Add Storage” を

クリックします。

Page 138: Movable Type for AWS Hands-on

 新しいインスタンスの起動

1. ストレージは特に変更せず

に、”Next: Tag Instance” をクリック

します。

Page 139: Movable Type for AWS Hands-on

 新しいインスタンスの起動

1. 識別用に名前を指定します。今回

は、”AZ-C-MT-2” と指定します。

2. 入力した後、”Next: Configure

Security Group” をクリックします。

Page 140: Movable Type for AWS Hands-on

 新しいインスタンスの起動

1. 最初のインスタンスを起動した時に、

作成されたセキュリティグループを利

用しますので、”Movable Type 6 “ か

ら始まるセキュリティグループを選択

します。

2. SSH (22) と HTTP (80) が指定されて

いることを確認した上で、”Review

and Launch” をクリックします。

Page 141: Movable Type for AWS Hands-on

 新しいインスタンスの起動

1. 内容を確認した上で、”Launch” をク

リックします。

Page 142: Movable Type for AWS Hands-on

 新しいインスタンスの起動

1. Key Pair は、最初のインスタンスで

使用したものと同じ Key Pair を使用

します。

2. チェックボックスをチェックし

て、”Launch Instance” をクリックし

ます。

Page 143: Movable Type for AWS Hands-on

 新しいインスタンスの起動

1. “View Instances” をクリックすると、

インスタンスの一覧に戻ります。

Page 144: Movable Type for AWS Hands-on

 新しいインスタンスの起動

1. EC2 のインスタンスが2つ起動してい

るのが確認できます。”Status Check”

が “2/2 check passed” になれば、起動

は完了です。

Page 145: Movable Type for AWS Hands-on

ELB の作成

Page 146: Movable Type for AWS Hands-on

 ELB の作成

1. EC2 のページの左のペインから

“Load Balancers” を選択し、”Create

Load Balancer” をクリックします。

Page 147: Movable Type for AWS Hands-on

 ELB の作成

1. “Load Balancer name” を入力

し、”Create LB Inside” に、現在使用

してる VPC を選択します。

2. “Listener Configurations” で、両方共

に “http” “80” が選ばれていることを

く確認して、”Continue” をクリック

します。

Page 148: Movable Type for AWS Hands-on

 ELB の作成

1. “Ping Path” を “/“ に変更し

て、”Continue” をクリックします。

Page 149: Movable Type for AWS Hands-on

 ELB の作成

1. App サーバー用のサブネットを 2つ

とも “Available Subnets” から選択し

て、”+” アイコンをクリックします。

2. 選択したら、”Continue” をクリック

します。

Page 150: Movable Type for AWS Hands-on

 ELB の作成

1. ELB 用のセキュリティグループを新

たに作成します。

2. “Security group name”, “Description”

を入力し、HTTP (80) を Anywhere

(0.0.0.0) で許可します。

3. 入力後、”Continue” をクリックしま

す。

Page 151: Movable Type for AWS Hands-on

 ELB の作成

1. ELB のはいかに配置するインスタン

スを選択します。

2. 2台とも選択したら、”Continue” を

クリックします。

Page 152: Movable Type for AWS Hands-on

 ELB の作成

1. “Tag” は指定してもしなくても構い

ません。

2. “Continue” をクリックします。

Page 153: Movable Type for AWS Hands-on

 ELB の作成

1. 内容を確認したら、”Create” をク

リックします。

Page 154: Movable Type for AWS Hands-on

 ELB の作成

1. ELB が作成されました。リンクをク

リックすると、作成された ELB を確

認できます。

Page 155: Movable Type for AWS Hands-on

 ELB の作成

1. “Instances” タブを選択すると、ELB

配下のインスタンスを一覧できます。

2. インスタンスの “Status” が

“InService” になれば、ELB からアクセ

スすることができるようになります。

Page 156: Movable Type for AWS Hands-on

 ELB の作成

1. “Description” タブで、ELB のエンド

ポイントが確認できます。

Page 157: Movable Type for AWS Hands-on

 ELB の作成

1. ELB のエンドポイント に “/mt/

admin” を付けて、ブラウザでアクセ

スしてみます。

2. Movable Type のサインイン画面が表

示されれば、ELB の設定は完了です。

Page 158: Movable Type for AWS Hands-on

Security Group の変更

Page 159: Movable Type for AWS Hands-on

 Security Group の変更

1. HTTP のアクセスをELBからのみ受け

付けるようにすることで、よりセキュ

リティを高めることができます。

2. EC2 の左のペインから、”Security

Groups” を選びます。

3. EC2 のインスタンスで利用している

セキュリティグループを選択

し、”Inbound” タブを選び、”Edit” ボ

タンをクリックします。

Page 160: Movable Type for AWS Hands-on

 Security Group の変更

1. HTTP の右にある “☓” をクリックして

削除します。

Page 161: Movable Type for AWS Hands-on

 Security Group の変更

1. “Add Rule” をクリックして、新しい

ルールを追加します。

2. “Type” に “HTTP” を選択し、”Source”

に “Custom IP” として、ELB のセキュ

リティグループを指定します。

3. 追加した後、”Save” をクリックしま

す。

Page 162: Movable Type for AWS Hands-on

 Seurity Group の変更

1. 先ほど同様に ELB のエンドポイント

に “/mt/admin” を付けて、ブラウザ

でアクセスしてみます。

2. Movable Type のサインイン画面が表

示されれば、セキュリティグループの

変更は完了です。

Page 163: Movable Type for AWS Hands-on

Phase 3 まとめ

Page 164: Movable Type for AWS Hands-on

 全体構成(Phase 3)

EC2 2台構成

ELB

RDS

Multi -AZ

Page 165: Movable Type for AWS Hands-on

 Phase 3 のまとめ

ELB を利用することで、アクセス負荷を分散できる。

実運用では、Movable Type が出力するファイルを NFS、S3、GlusterFS などで共有する必要が

ある。

EC2 インスタンスのセキュリティグループを抑えることで、セキュリティを向上できる。

Page 166: Movable Type for AWS Hands-on

Appendix

Page 167: Movable Type for AWS Hands-on

API サーバーを分離する

Page 168: Movable Type for AWS Hands-on

 Movable Type + GlusterFS Clustering

EC2 2台構成

CMS

API

ELB

RDS

Multi -AZ

Page 169: Movable Type for AWS Hands-on

GlusterFS を利用する

Page 170: Movable Type for AWS Hands-on

 Movable Type + GlusterFS Clustering

EC2 2台構成

ELB

RDS

Multi -AZ

GlusterFS Cluster

Distributed Striped

Replicated

Page 171: Movable Type for AWS Hands-on

S3 を利用する

Page 172: Movable Type for AWS Hands-on

 Movable Type + Amazon S3

EC2 1台構成

RDS

Multi -AZ

S3

Page 173: Movable Type for AWS Hands-on

SES を利用する

Page 174: Movable Type for AWS Hands-on

 Movable Type + Amazon SES

EC2 1台構成

RDS

Multi -AZ

SES

メール送信

Page 175: Movable Type for AWS Hands-on

Cleanup

Page 176: Movable Type for AWS Hands-on

ELB を削除する

Page 177: Movable Type for AWS Hands-on

 ELB の削除

1. 削除する ELB を選択して、”Actions”

より “Delete” を選択します。

Page 178: Movable Type for AWS Hands-on

 ELB の削除

1. “Yes, Delete” をクリックします。

Page 179: Movable Type for AWS Hands-on

EC2 のインスタンスを削除する

Page 180: Movable Type for AWS Hands-on

 EC2 のインスタンスを削除する

1. “Instances” を選択し、削除する EC2

インスタンスを選択します。

2. “Actions” より “Instance State” -

“Terminate” を選択します。

Page 181: Movable Type for AWS Hands-on

 EC2 のインスタンスを削除する

1. Elastic IP を開放するため、“Release

attached Elastic IPs” を開き、チェッ

クボックスにチェックを入れます。

2. “Yes, Terminate” をクリックします。

Page 182: Movable Type for AWS Hands-on

 EC2 のインスタンスを削除する

1. 一覧で “Terminate” 担っていること

を確認します。

Page 183: Movable Type for AWS Hands-on

 EC2 のインスタンスを削除する

1. “Elastic IPs” を選択し、EC2 インスタ

ンスに割り当てていた Elastic IP が削

除されていることを確認します。

Page 184: Movable Type for AWS Hands-on

AMI を削除する

Page 185: Movable Type for AWS Hands-on

 AMI の削除

1. “AMIs” を選択し、削除する AMI を選

択します。

2. “Actions” から “Deregister” を選択し

ます。

Page 186: Movable Type for AWS Hands-on

 AMI の削除

1. “Continue” をクリックします。

Page 187: Movable Type for AWS Hands-on

 AMI の削除

1. 一覧から削除されていることを確認

します。

Page 188: Movable Type for AWS Hands-on

RDS を削除する

Page 189: Movable Type for AWS Hands-on

 RDS の削除

1. RDS のページの左のペインから

“Instances” を選択し、削除する RDS

のインスタンスを選択します。

2. “Instance Actions” - “Delete” をクリ

ックします。

Page 190: Movable Type for AWS Hands-on

 RDS の削除

1. “Create final Snapshot?” に “No” を指

定します。

2. “Delete” をクリックします。

Page 191: Movable Type for AWS Hands-on

 RDS の削除

1. “Parameter Groups” を選択し、削除

するパラメータグループを選択します。

2. “Delete” をクリックします。

Page 192: Movable Type for AWS Hands-on

 RDS の削除

1. “Delete” をクリックします。

Page 193: Movable Type for AWS Hands-on

 RDS の削除

1. “Subnet Groups” を選択し、削除す

る サブネットグループを選択します。

2. “Delete” をクリックします。

Page 194: Movable Type for AWS Hands-on

 RDS の削除

1. “Delete” をクリックします。

Page 195: Movable Type for AWS Hands-on

VPC を削除する

Page 196: Movable Type for AWS Hands-on

 RDS の削除

1. “VPC” ページから、”Your VPSc” を選

択します。

2. 削除する VPC を選択して、”Actions”

- “Delete VPC” を選択します。

Page 197: Movable Type for AWS Hands-on

 RDS の削除

1. “Yes, Delete” をクリックします。

Page 198: Movable Type for AWS Hands-on

 RDS の削除

1. VPC が削除されたことを確認しま

す。

Page 199: Movable Type for AWS Hands-on

Thank You!