SlideShare a Scribd company logo
Movable Type 
for AWS 
JAWS-UG沖縄 CMS祭り! 
! 
2014.10.18 
YUJI TAKAYAMA@SIX APART
My Social 
icon 
YUJI TAKAYAMA 
Six Apart 
Senior Product Manager 
Movable Type Lead Engineer 
! 
Twitter: @yuji 
Facebook: Yuji Takayama 
Github: yuji 
Mail: ytakayama@sixapart.com
Movable Type for AWS - JAWS-UG 沖縄 CMS祭り!
Happy 13th Anniversary
2001年 10 月 に Ver. 1.0 リリース 
2013年 10月 に Movable Type 6 リリース 
最新バージョンは 6.0.5 
Data API (JSON/REST API) 搭載 
CMS Platform / Application Platform
Six Apart によるテクニカルサポート有り 
開発者用ライセンスあります 
Movable Type for AWS 
Movable Type クラウド版 
Movable Type Advanced
agenda 
Movable Type “を” AWS で使う 
Movable Type “で” AWS を使う 
Movable Type + AWS の事例
Movable Type 
を “AWS” で使う
Install / Setup 
Movable Type
ファイル転送が途中で止まる 
FTP / SCP などで Movable Type のファイル 
をアップロード 
SSH? CPAN? 
足りない Perl モジュールのインストール 
MySQL にデータベSQL? 
ースを準備 
Movable Type のインストール 
パーミッション
まぁ手間ですよね
Movable Type 
for AWS
Movable Type for AWS - JAWS-UG 沖縄 CMS祭り!
AWS Marketplace
All in one package 
Amazon Linux 2014.09 
Movable Type 6.0.5 
nginx 1.6.2 
starman(PSGI) 0.4009 
! 
MySQL 5.5 
Perl 5.16.3 
PHP-FPM 5.3.29 
2014.10.18 現在申請中 
必要なPerl モジュールもインストール済み
Features 
Free Tier Eligible 
7days Free Trial 
HVM / PV 
yum update movabletype 
Paid Technical Support (Japanese)
DEMO
Why Movable Type on AWS 
Software license fee: $0.07 / h 
All in one package 
Easy start / Easy update 
T2 Family
T2と相性いい? 
実際のところどうなの?
Benchmark 
記事数: 約3500件 
t2.micro, medium, c3.large, xlarge 
再構築勝負 (browser) 
Data API へ高負荷アタック(siege)
t2.micro - 再構築
t2.micro - Data API 
$ siege --concurrent=50 --reps=100 —time=10M 
! 
Transactions: 19,970 hits 
Availability: 100.00 % 
Elapsed time: 599.13 secs 
Data transferred: 128.19 MB 
Response time: 1.00 secs 
Transaction rate: 33.33 trans/sec 
Throughput: 0.21 MB/sec 
Concurrency: 33.30 
Successful transactions: 19,970 
Failed transactions: 0 
Longest transaction: 4.06 
Shortest transaction: 0.11
Movable Type for AWS - JAWS-UG 沖縄 CMS祭り!
t2.medium - 再構築
t2.medium - Data API 
$ siege --concurrent=50 --reps=100 —time=10M 
! 
Transactions: 29,950 hits 
Availability: 100.00 % 
Elapsed time: 599.42 secs 
Data transferred: 196.27 MB 
Response time: 0.50 secs 
Transaction rate: 49.96 trans/sec 
Throughput: 0.33 MB/sec 
Concurrency: 25.13 
Successful transactions: 29,950 
Failed transactions: 0 
Longest transaction: 2.38 
Shortest transaction: 0.05
Movable Type for AWS - JAWS-UG 沖縄 CMS祭り!
c3.large- 再構築
c3.large - Data API 
$ siege --concurrent=50 --reps=100 —time=10M 
! 
Transactions: 25,412 hits 
Availability: 100.00 % 
Elapsed time: 599.73 secs 
Data transferred: 169.31 MB 
Response time: 0.68 secs 
Transaction rate: 42.37 trans/sec 
Throughput: 0.28 MB/sec 
Concurrency: 28.80 
Successful transactions: 25,412 
Failed transactions: 0 
Longest transaction: 2.69 
Shortest transaction: 0.09
Movable Type for AWS - JAWS-UG 沖縄 CMS祭り!
c3.xlarge- 再構築
c3.xlarge - Data API 
$ siege --concurrent=50 --reps=100 —time=10M 
! 
Transactions: 29,991 hits 
Availability: 100.00 % 
Elapsed time: 599.89 secs 
Data transferred: 195.08 MB 
Response time: 0.50 secs 
Transaction rate: 49.99 trans/sec 
Throughput: 0.33 MB/sec 
Concurrency: 25.10 
Successful transactions: 29,991 
Failed transactions: 0 
Longest transaction: 2.40 
Shortest transaction: 0.09
Movable Type for AWS - JAWS-UG 沖縄 CMS祭り!
Result 
t2.medium, c3.xlarge > c3.large > t2.micro
T2 medium 最高
Movable Type 
for AWS の勘所
Starman の Worker数 
初期設定では Worker 数は 2 
運用環境に応じて適宜変更 
リクエストへの応答が Timeout す 
るようなら増やす契機
環境設定ファイルを編集 
$ sudo vi /data/conf/movabletype.conf 
WORKERS の値を適切な値に変更 
PORT="5000" 
WORKERS=“2" 
movabletype のプロセスを再起動 
$ sudo /etc/init.d/movabletype restart
Process 監視 
初期導入ではプロセス監視はなし 
適宜管理ツールの導入を 
Monit とか
yum で monit をインストール 
$ sudo yum install monit 
nginx用の監視設定 
$ sudo vi /etc/monit.d/nginx 
check process nginx with pidfile /var/run/nginx.pid 
start program = "/etc/init.d/nginx start" 
stop program = "/etc/init.d/nginx stop" 
movable type用の監視設定 
$ sudo vi /etc/monit.d/nginx 
check process movabletype with pidfile /app/run/movabletype.pid 
start program = "/etc/init.d/movabletype start" 
stop program = "/etc/init.d/movabletype stop"
cpan モジュール 
yum で提供されているものはyumからイ 
ンストール 
ただし、バージョンが古いことが多い 
yumにない場合、自分で入れる場合は 
cpanmおすすめ
yum で cpanm をインストール 
$ sudo yum install perl-App-cpanminus 
cpan モジュールのインストール 
$ sudo cpanm Text::SimpleTable 
movabletype のプロセスを再起動 
$ sudo /etc/init.d/movabletype restart
Movable Type 
で “AWS” を使う
AWS のサービスと 
組み合わせてみる
Movable Type for AWS - JAWS-UG 沖縄 CMS祭り!
S3 を使う
MT 
静的ファイルを 
すべて配信 
Direct Hosting 
静的生成S3 である 
EC2 
アプリケーションとコンテンツの分離 
Visitors Admin
S3 に配信するには? 
S3FS + rsync 
AWS CLI S3 sync + lsyncd
http://tec.toi-planning.net/mt/amazon/mt-amazons3/
S3 に配信するには? 
S3FS + rsync 
AWS CLI S3 sync + lsyncd 
Movable Type Plugin 
再構築をトリガーに S3 に配信
S3 + CloudFrontを使う
MT 
静的ファイルを 
すべて配信 
S3 EC2 
Visitors 
Cache Distribution 
S3 
世界各地にエッジサーバー 
キャッシュコントロールが必要 
Admin 
CloudFront 
Edge Server 
CloudFront 
Edge Server 
CloudFront 
Edge Server 
Visitors Visitors
MT 
EC2 
S3 
画像など変更が少ない 
静的ファイルを配信 
Admin 
更新が掛かるHTMLを配信 
Cache Distribution + Web Storage 
Cache Distribution 
CloudFront 
Edge Server 
Visitors 
CloudFront 
Edge Server 
CloudFront 
Edge Server 
Visitors Visitors 
Web 
EC2 
キャッシュコントロールを併用
RDS (MySQL)を使う
ELB 
出力ファイルは、 
Data API 
RDS 
Zone 1a 
MT 
EC2 
MT 
EC2 
MT 
EC2 
を複数台用意するとか 
RDS 
Zone 1b 
Replication
MT で RDS を使うには? 
mt-config.cgi に書くだけ 
DBHost mt.c9pv2bda4o…ds.amazonaws.com 
Database mt 
DBPort 3306 
DBUser master 
DBPassword password
ElastiCache (memcahced) 
を使う
MT 
EC2 
RDS 
ElastiCache 
(Memcached) 
DB Cache 
Movable Type 
Auto-Discovery
MT で ElastiCache を使うには? 
mt-config.cgi に書くだけ 
MemcachedServers mt.c9pvo…ds.amazonaws.com:11211 
MemcachedServers mt.c8ffga…ds.amazonaws.com:11211
SESでメール配信
MT 
EC2 
Movable Type 
SES 
SMTP Interface 
メール配信をスケール 
メールマガジン
MT で SES を使うには? 
mt-config.cgi に書くだけ 
MailTransfer smtp 
SMTPServer email-smtp.us-east-1.amazonaws.com 
SMTPPort 587 
SMTPUser your-iam-annout 
SMTPPassword your-iam-password 
SMTPAuth starttls
AWS + Movable Type 
Case Study
- Case Study 1 - 
! 
Event Web Site
北海道の人気 
なんとかどうでしょう 
大人の事情 
去年開催されたイベント用サイト
MT 
EC2 
S3 
画像ファイルを配置 
Admin 
イベント期間中は、負荷状況に応じて 
S3 
動的に切り替えて運用 
CloudFront 
Edge Server 
Visitors 
CloudFront 
Edge Server 
CloudFront 
Edge Server 
HTMLを配置 
Visitors Visitors 
Web 
EC2 
Web 
EC2 
Web 
EC2 
ELB
Movable Type on EC2 + S3 + CloudFront 
動的生成では膨大なサーバ負荷が予想された 
Yahoo! Japan、新聞掲載によるトラフィック増 
イベント中も更新が随時発生する 
イベント参加者もスマフォで閲覧している
Movable Type on EC2 + S3 + CloudFront 
HTML は EC2 に配置、画像などは S3 に配置 
アクセス状況に応じて、CloudFront へ切り替え 
現場で迅速な対応が求められる 
AWS を採用することで臨機応変に対応可能
Movable Type on EC2 + S3 + CloudFront 
イベント終了後は、AWS から、自社サーバ内にコ 
ンテンツを収容して、イベントサイトは残しつつ、 
コストを掛けない運用に切り替え 
Movable Type が出力した静的ファイルをすべて 
移動することで対応
- Case Study 2 - 
! 
Data API
COACH UNITED 
http://www.sixapart.jp/business/coach_united.html
Movable Type for AWS + Data API 
記事の増加による再構築のコストも nginx + PSGIで 
解決 
高トラフィックへの対応 
スマフォ向けサイトも併用 
Data API による Infinite Scroll
- Case Study 3 - 
! 
EC Site
某アウトドア用品メーカー 
EC 大人の事情
By NetConcierge Co.,LTD. 
https://netconcierge.jp/mtcommerce/
株式会社ネットコンシェルジェの製品 
MT で本格的な EC サイトを構築 
実際に多数の EC サイトを構築
Admin 
Visitors 
ELB 
RDS 
Web 
App 
EC2 
Master Server 
再構築 
メール送信 
非セール時、最小構成で運用 
ELB + EC2 + RDS 
1インスタンスで管理画面、ウェブサイト、 
再構築、メール送信をおこなう
Admin 
CloudWatch + Alarm 
セール時、冗長構成で運用 
WebApp + Master + Task + ELB + RDS 
再構築、メール送信をタスクサーバに一元 
各サーバは 
memcached 
ELB 
Visitors 
RDS 
Web 
App 
EC2 
再構築 
メール送信 
Task 
Server 
EC2 
memcached 
Master 
Server 
EC2 
Web 
App 
EC2 
Web 
App 
EC2 
Visitors Visitors Visitors Visitors
Movable Type
自分でメンテしたくない(*´Д`) 
そんなあなたには、Movable Type クラウド版
告知
沖縄上陸記念 
MT Live in OKINAWA
MT Live in OKINAWA 
開催日時: 2014年 10月 19日 (日) 13:00 ~ 18:00 
開催地: Tab’spot さん 
参加費: 無料 
内容: MT ユーザーの交流、お悩み相談、陳情、  
お友達募集 などなんでもどうぞ。       
ミニセッションもアリマス
Movable Type for AWS - JAWS-UG 沖縄 CMS祭り!
Thank you for listening

More Related Content

PDF
MT東京03 - Movable Type for AWS
PDF
Movable Type for AWS を用いた環境構築のポイント
PDF
AWSについて @ JAWS-UG 沖縄 CMS祭り!
PDF
Movable Type for AWS Hands-on
PDF
JAWS-DAYS 2015 / 北海道 x 農業 x クラウド
PPTX
急なトラフィック増にも動じない、Amazon S3とCloudFrontを活用したWebサイト構築
PDF
Cloud on the_beach_aws入門_公開
PDF
20160429 JAWS-UG沖縄 Cloud on the BEACH 2016 AWS全サービス紹介
MT東京03 - Movable Type for AWS
Movable Type for AWS を用いた環境構築のポイント
AWSについて @ JAWS-UG 沖縄 CMS祭り!
Movable Type for AWS Hands-on
JAWS-DAYS 2015 / 北海道 x 農業 x クラウド
急なトラフィック増にも動じない、Amazon S3とCloudFrontを活用したWebサイト構築
Cloud on the_beach_aws入門_公開
20160429 JAWS-UG沖縄 Cloud on the BEACH 2016 AWS全サービス紹介

What's hot (20)

PPTX
Windowsシステムの AWS移行とMulti-AZ化 - JAWS DAYS 2015
PPTX
AWS WAF でセキュリティ対策_JAWS-UG沖縄勉強会_Cloud on the BEACH 2016
PDF
CloudFront マルチオリジンの利用事例と反省点
PDF
JAWS-UG 名古屋 第5回 発表資料 「AWSアップデート」
PDF
Awsの質問に何でも答えます
PPTX
2011年12月 八子クラウド「縦と横のクラウドインテグレーション」
PDF
Amazon Web Services 基本の「き」〜AWS概要編〜
PDF
Data Engineering at VOYAGE GROUP #jawsdays
PPTX
AWS活用のいままでとこれから -東急ハンズの事例-
PPTX
20130406 awsのいろんな使い道@jawsug名古屋
PDF
はじめてのAmazon Web Services
PPTX
Jcss 「はじめよう!クラウド」配布用
PDF
クラウドとコミュニティのこれまでとこれから 20150322_#JAWSDAYS
PPTX
AWSアカウントに関する不正使用を整理してみた
PDF
AWS Black Belt Online Seminar 2017 EC2 Windows
PDF
JAWSUG Kansai Simple Workflow Service (SWF)
PDF
ELB & Auto Scaling & CloudWatch 詳細 -ほぼ週刊AWSマイスターシリーズ第5回-
PDF
ベンチャーCTO、AWSエバンジェリストを経て考える、クラウド時代に向き合うエンジニア像のこれから
PDF
AWSのセキュリティについて
PDF
業務アプリをクラウド化する5つのステップ ~Amazon Web Services活用の勘所~
Windowsシステムの AWS移行とMulti-AZ化 - JAWS DAYS 2015
AWS WAF でセキュリティ対策_JAWS-UG沖縄勉強会_Cloud on the BEACH 2016
CloudFront マルチオリジンの利用事例と反省点
JAWS-UG 名古屋 第5回 発表資料 「AWSアップデート」
Awsの質問に何でも答えます
2011年12月 八子クラウド「縦と横のクラウドインテグレーション」
Amazon Web Services 基本の「き」〜AWS概要編〜
Data Engineering at VOYAGE GROUP #jawsdays
AWS活用のいままでとこれから -東急ハンズの事例-
20130406 awsのいろんな使い道@jawsug名古屋
はじめてのAmazon Web Services
Jcss 「はじめよう!クラウド」配布用
クラウドとコミュニティのこれまでとこれから 20150322_#JAWSDAYS
AWSアカウントに関する不正使用を整理してみた
AWS Black Belt Online Seminar 2017 EC2 Windows
JAWSUG Kansai Simple Workflow Service (SWF)
ELB & Auto Scaling & CloudWatch 詳細 -ほぼ週刊AWSマイスターシリーズ第5回-
ベンチャーCTO、AWSエバンジェリストを経て考える、クラウド時代に向き合うエンジニア像のこれから
AWSのセキュリティについて
業務アプリをクラウド化する5つのステップ ~Amazon Web Services活用の勘所~
Ad

Similar to Movable Type for AWS - JAWS-UG 沖縄 CMS祭り! (20)

PDF
[AWS Summit 2012] クラウドデザインパターン#3 CDP Eコマース編 (EC-CUBE)
PDF
AWSクラウドデザインパターン(CDP) - Eコマース編 -
PDF
Amazon Web Services 最新事例集
PDF
Movable type for AWS Starter Guide
PDF
ソリューションセッション#3 ビッグデータの3つのVと4つのプロセスを支えるAWS活用法
PDF
[AWS Summit 2012] クラウドデザインパターン#7 CDP キャンペーンサイト編 (Wordpress)
PDF
CDP キャンペーンサイト編 UPDATE
PPTX
20180228 aws handson_public
PDF
次世代ディザスタリカバリを成功させるアマゾンクラウド活用法
PPTX
20180709 aws handson_public
PPTX
Microservice and agile development
PDF
アマゾンクラウド実践講座 in 福岡/山口クラウドセミナー 20101208
PPTX
インフラ系自主トレするならAWS
KEY
Awsをつかってみた
PDF
Amazon EC2
PDF
Amazon Ec2
PPTX
20170314 aws handson
PPTX
20170425 aws handson
PDF
「はじめてのAmazon Web Services」 JAWS-UG 長崎第1回勉強会
PPTX
NoSQL on AWSで作る最新ソーシャルゲームアーキテクチャ
[AWS Summit 2012] クラウドデザインパターン#3 CDP Eコマース編 (EC-CUBE)
AWSクラウドデザインパターン(CDP) - Eコマース編 -
Amazon Web Services 最新事例集
Movable type for AWS Starter Guide
ソリューションセッション#3 ビッグデータの3つのVと4つのプロセスを支えるAWS活用法
[AWS Summit 2012] クラウドデザインパターン#7 CDP キャンペーンサイト編 (Wordpress)
CDP キャンペーンサイト編 UPDATE
20180228 aws handson_public
次世代ディザスタリカバリを成功させるアマゾンクラウド活用法
20180709 aws handson_public
Microservice and agile development
アマゾンクラウド実践講座 in 福岡/山口クラウドセミナー 20101208
インフラ系自主トレするならAWS
Awsをつかってみた
Amazon EC2
Amazon Ec2
20170314 aws handson
20170425 aws handson
「はじめてのAmazon Web Services」 JAWS-UG 長崎第1回勉強会
NoSQL on AWSで作る最新ソーシャルゲームアーキテクチャ
Ad

More from Yuji Takayama (20)

PDF
Movable Type 7 のすべて
PPTX
詳説 Movable type 7
PDF
Data API ことはじめ
PDF
概説 Data API v3
PDF
詳説 Data api mtddc 拡張版 v3対応
PDF
初めての Data api cms どうでしょう - 大阪夏の陣
PDF
Data apiで実現 進化するwebの世界
PDF
初めての Data API CMS どうでしょう - 仙台編 -
PDF
初めての Data api
PDF
Data API + AWS = (CMS どうでしょう 札幌編)
PDF
Data API 2.0
PDF
Data api workshop at Co-Edo
PDF
Mtとクラウドと私
PDF
Movable Type 6 overview spec3
PDF
Movable Type 6 Overview - New York Perl Mongers Tech Talk
PDF
Movable Type 6 Overview SPEC2
PDF
Mtddc2013: Movable Type 6 Overview
PDF
Mtddc kyusyu-lightningtalks
KEY
Movable Type 5.2 Overview at MTDDC 2012
KEY
Phpで作るmovable typeプラグイン
Movable Type 7 のすべて
詳説 Movable type 7
Data API ことはじめ
概説 Data API v3
詳説 Data api mtddc 拡張版 v3対応
初めての Data api cms どうでしょう - 大阪夏の陣
Data apiで実現 進化するwebの世界
初めての Data API CMS どうでしょう - 仙台編 -
初めての Data api
Data API + AWS = (CMS どうでしょう 札幌編)
Data API 2.0
Data api workshop at Co-Edo
Mtとクラウドと私
Movable Type 6 overview spec3
Movable Type 6 Overview - New York Perl Mongers Tech Talk
Movable Type 6 Overview SPEC2
Mtddc2013: Movable Type 6 Overview
Mtddc kyusyu-lightningtalks
Movable Type 5.2 Overview at MTDDC 2012
Phpで作るmovable typeプラグイン

Movable Type for AWS - JAWS-UG 沖縄 CMS祭り!

  • 1. Movable Type for AWS JAWS-UG沖縄 CMS祭り! ! 2014.10.18 YUJI TAKAYAMA@SIX APART
  • 2. My Social icon YUJI TAKAYAMA Six Apart Senior Product Manager Movable Type Lead Engineer ! Twitter: @yuji Facebook: Yuji Takayama Github: yuji Mail: ytakayama@sixapart.com
  • 5. 2001年 10 月 に Ver. 1.0 リリース 2013年 10月 に Movable Type 6 リリース 最新バージョンは 6.0.5 Data API (JSON/REST API) 搭載 CMS Platform / Application Platform
  • 6. Six Apart によるテクニカルサポート有り 開発者用ライセンスあります Movable Type for AWS Movable Type クラウド版 Movable Type Advanced
  • 7. agenda Movable Type “を” AWS で使う Movable Type “で” AWS を使う Movable Type + AWS の事例
  • 8. Movable Type を “AWS” で使う
  • 9. Install / Setup Movable Type
  • 10. ファイル転送が途中で止まる FTP / SCP などで Movable Type のファイル をアップロード SSH? CPAN? 足りない Perl モジュールのインストール MySQL にデータベSQL? ースを準備 Movable Type のインストール パーミッション
  • 15. All in one package Amazon Linux 2014.09 Movable Type 6.0.5 nginx 1.6.2 starman(PSGI) 0.4009 ! MySQL 5.5 Perl 5.16.3 PHP-FPM 5.3.29 2014.10.18 現在申請中 必要なPerl モジュールもインストール済み
  • 16. Features Free Tier Eligible 7days Free Trial HVM / PV yum update movabletype Paid Technical Support (Japanese)
  • 17. DEMO
  • 18. Why Movable Type on AWS Software license fee: $0.07 / h All in one package Easy start / Easy update T2 Family
  • 20. Benchmark 記事数: 約3500件 t2.micro, medium, c3.large, xlarge 再構築勝負 (browser) Data API へ高負荷アタック(siege)
  • 22. t2.micro - Data API $ siege --concurrent=50 --reps=100 —time=10M ! Transactions: 19,970 hits Availability: 100.00 % Elapsed time: 599.13 secs Data transferred: 128.19 MB Response time: 1.00 secs Transaction rate: 33.33 trans/sec Throughput: 0.21 MB/sec Concurrency: 33.30 Successful transactions: 19,970 Failed transactions: 0 Longest transaction: 4.06 Shortest transaction: 0.11
  • 25. t2.medium - Data API $ siege --concurrent=50 --reps=100 —time=10M ! Transactions: 29,950 hits Availability: 100.00 % Elapsed time: 599.42 secs Data transferred: 196.27 MB Response time: 0.50 secs Transaction rate: 49.96 trans/sec Throughput: 0.33 MB/sec Concurrency: 25.13 Successful transactions: 29,950 Failed transactions: 0 Longest transaction: 2.38 Shortest transaction: 0.05
  • 28. c3.large - Data API $ siege --concurrent=50 --reps=100 —time=10M ! Transactions: 25,412 hits Availability: 100.00 % Elapsed time: 599.73 secs Data transferred: 169.31 MB Response time: 0.68 secs Transaction rate: 42.37 trans/sec Throughput: 0.28 MB/sec Concurrency: 28.80 Successful transactions: 25,412 Failed transactions: 0 Longest transaction: 2.69 Shortest transaction: 0.09
  • 31. c3.xlarge - Data API $ siege --concurrent=50 --reps=100 —time=10M ! Transactions: 29,991 hits Availability: 100.00 % Elapsed time: 599.89 secs Data transferred: 195.08 MB Response time: 0.50 secs Transaction rate: 49.99 trans/sec Throughput: 0.33 MB/sec Concurrency: 25.10 Successful transactions: 29,991 Failed transactions: 0 Longest transaction: 2.40 Shortest transaction: 0.09
  • 33. Result t2.medium, c3.xlarge > c3.large > t2.micro
  • 35. Movable Type for AWS の勘所
  • 36. Starman の Worker数 初期設定では Worker 数は 2 運用環境に応じて適宜変更 リクエストへの応答が Timeout す るようなら増やす契機
  • 37. 環境設定ファイルを編集 $ sudo vi /data/conf/movabletype.conf WORKERS の値を適切な値に変更 PORT="5000" WORKERS=“2" movabletype のプロセスを再起動 $ sudo /etc/init.d/movabletype restart
  • 38. Process 監視 初期導入ではプロセス監視はなし 適宜管理ツールの導入を Monit とか
  • 39. yum で monit をインストール $ sudo yum install monit nginx用の監視設定 $ sudo vi /etc/monit.d/nginx check process nginx with pidfile /var/run/nginx.pid start program = "/etc/init.d/nginx start" stop program = "/etc/init.d/nginx stop" movable type用の監視設定 $ sudo vi /etc/monit.d/nginx check process movabletype with pidfile /app/run/movabletype.pid start program = "/etc/init.d/movabletype start" stop program = "/etc/init.d/movabletype stop"
  • 40. cpan モジュール yum で提供されているものはyumからイ ンストール ただし、バージョンが古いことが多い yumにない場合、自分で入れる場合は cpanmおすすめ
  • 41. yum で cpanm をインストール $ sudo yum install perl-App-cpanminus cpan モジュールのインストール $ sudo cpanm Text::SimpleTable movabletype のプロセスを再起動 $ sudo /etc/init.d/movabletype restart
  • 42. Movable Type で “AWS” を使う
  • 46. MT 静的ファイルを すべて配信 Direct Hosting 静的生成S3 である EC2 アプリケーションとコンテンツの分離 Visitors Admin
  • 47. S3 に配信するには? S3FS + rsync AWS CLI S3 sync + lsyncd
  • 49. S3 に配信するには? S3FS + rsync AWS CLI S3 sync + lsyncd Movable Type Plugin 再構築をトリガーに S3 に配信
  • 51. MT 静的ファイルを すべて配信 S3 EC2 Visitors Cache Distribution S3 世界各地にエッジサーバー キャッシュコントロールが必要 Admin CloudFront Edge Server CloudFront Edge Server CloudFront Edge Server Visitors Visitors
  • 52. MT EC2 S3 画像など変更が少ない 静的ファイルを配信 Admin 更新が掛かるHTMLを配信 Cache Distribution + Web Storage Cache Distribution CloudFront Edge Server Visitors CloudFront Edge Server CloudFront Edge Server Visitors Visitors Web EC2 キャッシュコントロールを併用
  • 54. ELB 出力ファイルは、 Data API RDS Zone 1a MT EC2 MT EC2 MT EC2 を複数台用意するとか RDS Zone 1b Replication
  • 55. MT で RDS を使うには? mt-config.cgi に書くだけ DBHost mt.c9pv2bda4o…ds.amazonaws.com Database mt DBPort 3306 DBUser master DBPassword password
  • 57. MT EC2 RDS ElastiCache (Memcached) DB Cache Movable Type Auto-Discovery
  • 58. MT で ElastiCache を使うには? mt-config.cgi に書くだけ MemcachedServers mt.c9pvo…ds.amazonaws.com:11211 MemcachedServers mt.c8ffga…ds.amazonaws.com:11211
  • 60. MT EC2 Movable Type SES SMTP Interface メール配信をスケール メールマガジン
  • 61. MT で SES を使うには? mt-config.cgi に書くだけ MailTransfer smtp SMTPServer email-smtp.us-east-1.amazonaws.com SMTPPort 587 SMTPUser your-iam-annout SMTPPassword your-iam-password SMTPAuth starttls
  • 62. AWS + Movable Type Case Study
  • 63. - Case Study 1 - ! Event Web Site
  • 64. 北海道の人気 なんとかどうでしょう 大人の事情 去年開催されたイベント用サイト
  • 65. MT EC2 S3 画像ファイルを配置 Admin イベント期間中は、負荷状況に応じて S3 動的に切り替えて運用 CloudFront Edge Server Visitors CloudFront Edge Server CloudFront Edge Server HTMLを配置 Visitors Visitors Web EC2 Web EC2 Web EC2 ELB
  • 66. Movable Type on EC2 + S3 + CloudFront 動的生成では膨大なサーバ負荷が予想された Yahoo! Japan、新聞掲載によるトラフィック増 イベント中も更新が随時発生する イベント参加者もスマフォで閲覧している
  • 67. Movable Type on EC2 + S3 + CloudFront HTML は EC2 に配置、画像などは S3 に配置 アクセス状況に応じて、CloudFront へ切り替え 現場で迅速な対応が求められる AWS を採用することで臨機応変に対応可能
  • 68. Movable Type on EC2 + S3 + CloudFront イベント終了後は、AWS から、自社サーバ内にコ ンテンツを収容して、イベントサイトは残しつつ、 コストを掛けない運用に切り替え Movable Type が出力した静的ファイルをすべて 移動することで対応
  • 69. - Case Study 2 - ! Data API
  • 71. Movable Type for AWS + Data API 記事の増加による再構築のコストも nginx + PSGIで 解決 高トラフィックへの対応 スマフォ向けサイトも併用 Data API による Infinite Scroll
  • 72. - Case Study 3 - ! EC Site
  • 74. By NetConcierge Co.,LTD. https://netconcierge.jp/mtcommerce/
  • 75. 株式会社ネットコンシェルジェの製品 MT で本格的な EC サイトを構築 実際に多数の EC サイトを構築
  • 76. Admin Visitors ELB RDS Web App EC2 Master Server 再構築 メール送信 非セール時、最小構成で運用 ELB + EC2 + RDS 1インスタンスで管理画面、ウェブサイト、 再構築、メール送信をおこなう
  • 77. Admin CloudWatch + Alarm セール時、冗長構成で運用 WebApp + Master + Task + ELB + RDS 再構築、メール送信をタスクサーバに一元 各サーバは memcached ELB Visitors RDS Web App EC2 再構築 メール送信 Task Server EC2 memcached Master Server EC2 Web App EC2 Web App EC2 Visitors Visitors Visitors Visitors
  • 82. MT Live in OKINAWA 開催日時: 2014年 10月 19日 (日) 13:00 ~ 18:00 開催地: Tab’spot さん 参加費: 無料 内容: MT ユーザーの交流、お悩み相談、陳情、  お友達募集 などなんでもどうぞ。       ミニセッションもアリマス
  • 84. Thank you for listening