PaaS with OSS
Webアプリをクラウドの展開する
オープンソースソフトウェアとPaaS
株式会社  Engine  Yard
Yusuke  Ando
Copyright  ©  2013  Engine  Yard.  All  ...
@yando

CandyCane / php

「懇親会 ピザ 発注 アプリ」
Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

2
Engine Yard

PHP/Ruby/Node/Java 対応
PaaS
24時間有人監視 / DevOps
SSH&sudo可 サポート有
Copyright  ©  2013  Engine  Yard.  All  Rights  ...
Engine Yard

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

5
Engine YardがPaaSスタックを
の内側についてお話します

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

6
アジェンダ

• クラウド時代のソフトウェア
• Engine Yardが使用するプロダクト
• PaaS運用からの教訓

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

7
クラウド時代のソフトウェア
IPA: IT人材白書2013

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

9
クラウド化
• ユーザは具体的な機能を求める
• ハードウェアを意識しない
• ソフトウェアがより重要に

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

10
構成

LAMP
Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

11
本当にLAMPだけ?
• Linux
• Apache
• MySQL
• PHP
Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

12
必要とされるソフトウェアの増加
• 環境の管理
• ロードバランサー
• その他のWebサーバー
• NoSQL
Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

13
実際にどう違うのでしょうか

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

14
Engine Yardが使用するプロダクト
OSレベル
• Gentoo 12.11
AWSとTerremarkで使用中
• Ubuntu 12.04 LTS
Windows Azureで使用中
Copyright  ©  2013  Engine  Yard.  All  Rights...
構成管理
• Chef 0.6
旧世代の環境
• Chef 10
現行の環境
• Chef 11
次世代の環境
Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

17
Chefを利用する際の注意点
• バージョン間の違い
• インストールの方法
• 外部のクックブックの考慮

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

18
Chef11の最新情報

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

19
Chef関連
• foodcritic
クックブックのルールチェック
• Berkshelf
外部クックブックの管理
Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

20
ロードバランサー
• HAProxy
オープンソースのLB
• Elastic Load Balancing (AWS)
AWSの提供する機能
Copyright  ©  2013  Engine  Yard.  All  Rights  Re...
• 高性能TCP/HTTP ロードバランサ
• 高速・効率・安定
• GitHub / Tumblr / Twitter が採用
• 2000年にWilly Tarreau氏が開発
Copyright  ©  2013  Engine  Yar...
Stats

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

23
豊富な機能
• HTTP / TCP に対応 (例えばDB)
• 賢いバランシング
roundrobin static-rr leastconn source uri url_param
hdr rdp-cookie

• L7 (Sticky...
haproxy.cfg

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

25
課題
• バランシング先のメンテナンス
• スケールアウト時
• ダウン時
• HAproxy自身の冗長化
Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

26
haproxy.cfg.erb (Chef)

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

27
Webサーバー・APPコンテナ
• Nginx
• Unicorn Passenger Puma
• php-fpm
• Jetty
Copyright  ©  2013  Engine  Yard.  All  Rights  Reserve...
Nginx
• 急速に普及中
• 静的コンテンツの配信性能が高い
• FastCGIを使ったリバースプロキシ
• Gzip圧縮・設定分割
Copyright  ©  2013  Engine  Yard.  All  Rights  Reser...
Nginx

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

30
php-fpm
• Apacheを使わずにPHPが動作
• 高速
• mod_rewriteは設定で代替

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

31
/etc/nginx/servers/*.conf

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

32
データストア
• MySQL
• PostgreSQL
• Riak
• Memcache
Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

33
Riak with HAProxy

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

34
PaaS運用からの教訓
クックブックの実装
• 様々なプロダクトが混在
• 手動での構築は非現実的
• Rubyを使ったクックブックの実装
部隊が必要になる
Copyright  ©  2013  Engine  Yard.  All  Rights  Reserve...
頻繁なアップデートの実施
• クックブックが「腐る」
• 頻繁に実施できる環境
• 世代管理・バージョン管理

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

37
突然の脆弱性対応

Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved.

38
脆弱性対応などを随時配信
The Leading Platform as a Service
www.facebook.com/eyjapan
勉強会情報更新中!!
Paa s and oss
Upcoming SlideShare
Loading in...5
×

Paa s and oss

1,806

Published on

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,806
On Slideshare
0
From Embeds
0
Number of Embeds
9
Actions
Shares
0
Downloads
6
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Paa s and oss

  1. 1. PaaS with OSS Webアプリをクラウドの展開する オープンソースソフトウェアとPaaS 株式会社  Engine  Yard Yusuke  Ando Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. E-‐‑‒mail:   yando@engineyard.com Twitter:  @yando
  2. 2. @yando CandyCane / php 「懇親会 ピザ 発注 アプリ」 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 2
  3. 3. Engine Yard PHP/Ruby/Node/Java 対応 PaaS 24時間有人監視 / DevOps SSH&sudo可 サポート有 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 3
  4. 4. Engine Yard Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 5
  5. 5. Engine YardがPaaSスタックを の内側についてお話します Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 6
  6. 6. アジェンダ • クラウド時代のソフトウェア • Engine Yardが使用するプロダクト • PaaS運用からの教訓 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 7
  7. 7. クラウド時代のソフトウェア
  8. 8. IPA: IT人材白書2013 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 9
  9. 9. クラウド化 • ユーザは具体的な機能を求める • ハードウェアを意識しない • ソフトウェアがより重要に Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 10
  10. 10. 構成 LAMP Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 11
  11. 11. 本当にLAMPだけ? • Linux • Apache • MySQL • PHP Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 12
  12. 12. 必要とされるソフトウェアの増加 • 環境の管理 • ロードバランサー • その他のWebサーバー • NoSQL Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 13
  13. 13. 実際にどう違うのでしょうか Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 14
  14. 14. Engine Yardが使用するプロダクト
  15. 15. OSレベル • Gentoo 12.11 AWSとTerremarkで使用中 • Ubuntu 12.04 LTS Windows Azureで使用中 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 16
  16. 16. 構成管理 • Chef 0.6 旧世代の環境 • Chef 10 現行の環境 • Chef 11 次世代の環境 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 17
  17. 17. Chefを利用する際の注意点 • バージョン間の違い • インストールの方法 • 外部のクックブックの考慮 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 18
  18. 18. Chef11の最新情報 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 19
  19. 19. Chef関連 • foodcritic クックブックのルールチェック • Berkshelf 外部クックブックの管理 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 20
  20. 20. ロードバランサー • HAProxy オープンソースのLB • Elastic Load Balancing (AWS) AWSの提供する機能 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 21
  21. 21. • 高性能TCP/HTTP ロードバランサ • 高速・効率・安定 • GitHub / Tumblr / Twitter が採用 • 2000年にWilly Tarreau氏が開発 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 22
  22. 22. Stats Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 23
  23. 23. 豊富な機能 • HTTP / TCP に対応 (例えばDB) • 賢いバランシング roundrobin static-rr leastconn source uri url_param hdr rdp-cookie • L7 (Sticky Session) Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 24
  24. 24. haproxy.cfg Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 25
  25. 25. 課題 • バランシング先のメンテナンス • スケールアウト時 • ダウン時 • HAproxy自身の冗長化 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 26
  26. 26. haproxy.cfg.erb (Chef) Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 27
  27. 27. Webサーバー・APPコンテナ • Nginx • Unicorn Passenger Puma • php-fpm • Jetty Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 28
  28. 28. Nginx • 急速に普及中 • 静的コンテンツの配信性能が高い • FastCGIを使ったリバースプロキシ • Gzip圧縮・設定分割 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 29
  29. 29. Nginx Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 30
  30. 30. php-fpm • Apacheを使わずにPHPが動作 • 高速 • mod_rewriteは設定で代替 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 31
  31. 31. /etc/nginx/servers/*.conf Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 32
  32. 32. データストア • MySQL • PostgreSQL • Riak • Memcache Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 33
  33. 33. Riak with HAProxy Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 34
  34. 34. PaaS運用からの教訓
  35. 35. クックブックの実装 • 様々なプロダクトが混在 • 手動での構築は非現実的 • Rubyを使ったクックブックの実装 部隊が必要になる Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 36
  36. 36. 頻繁なアップデートの実施 • クックブックが「腐る」 • 頻繁に実施できる環境 • 世代管理・バージョン管理 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 37
  37. 37. 突然の脆弱性対応 Copyright  ©  2013  Engine  Yard.  All  Rights  Reserved. 38
  38. 38. 脆弱性対応などを随時配信
  39. 39. The Leading Platform as a Service www.facebook.com/eyjapan 勉強会情報更新中!!
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×