Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
KUSANAGIを触ってみた
Presented by WordFes Nagoya 2016
-実際に運用してみて-
自己紹介
• 横井 公紀
• https://www.facebook.com/kiminori.yokoi
• Sierに勤務しています。
• 主にクラウド(AWS, Azure)の
活用提案・環境構築を行っています。
まず取り急ぎ
理解しておいてほしいこと
IoT時代の到来
2 0 1 6 年
あらゆる情報が
インターネットに集まる時代
集まった情報は
どうなる?
常時、分析され可視化される
可視化されたデータは
どうなる?
みんなが見に来る
!!→
リアルタイムに情報を集め
リアルタイムに見せる基盤が必要
WordPressなら
プログラム
XMLRPC
WordPressなら
プログラム
XMLRPC
API サービス
自動
自動
自然事象
SENSOR
自動
IoT時代には高性能が求められる
プログラム
XMLRPC
API サービス
自動
自動
自然事象
SENSOR
自動
非常に多くのリクエスト
非常に多くのセッション
非常に多くのデータ
さらにリアムタイム更新
リアルタイムに大量のデータを
素早く表示させたい
でもコストはかけたくない
★ニーズ
そこで
KUSANAGI
KUSANAGIとは
KUSANAGIとは
私は非常に残念です。解散しない道はなかったのでしょうか。
ちなみに「どんないいこと」と「セロリ」が好きです。
KUSANAGIとは
三種の神器の一つ。草薙剣(くさなぎのつる
ぎ)、草那芸之大刀(くさなぎのたち)の異名
である。熱田神宮の神体となっている。三種の
神器の中では天皇の持つ武力の象徴であるとさ
れる。
「草を薙いだ剣」
ヤマトタケルが伊勢神宮...
KUSANAGIとは
KUSANAGIとは
• はやい
• やすい
• うまい
KUSANAGIとは
• はやい
• やすい
• うまい
KUSANAGIとは
• はやい: 素速い応答
• やすい: 利用は無償
• うまい: チューニング
KUSANAGIは速い
実際に
運用した例
今のWordPress環境
AWS東京リージョン
エンドユーザ
AZ-A
WEB WEB S3
(動的変更
コンテンツ用
ストレージ)
画像等の
静的コンテンツ
CloudWatch
(監視サービス)
AWS Labmda
(自動記事
投稿用)...
以下モデルを具現化したもの
プログラム
XMLRPC
API サービス
自動
自動
自然事象
SENSOR
自動
(参考) 昔のWordPress環境
AWS東京リージョン
エンドユーザ
AZ-A AZ-C
・・・ ・・・WEB WEB WEB WEB
EC2
RDS
(Master)
S3
(コンテンツ用
ストレージ)
EC2
画像等の
静的コンテンツ
...
何が
変わったのか
ランニングコストが落ちた
EC2 (昨年12/20に移行)
全体
確実にコストが落ちている
Before
After
Before vs After
• EC2利用料 $55.34 → $28.89
– Auto Scalingしなくても負荷に耐えるため、
サーバ1台分の費用まで落ちた。
– ロードバランサー(ELB)が不要になり
費用が落ちた。
• データ通...
従来型クラウド時代のコスト
費用
期間
これからの時代のコスト
費用
期間
なんと
応答速度が・・・
!!!!??!?!?!?
そんな!KUSANAGIにしたけど
早くならないなんて!
• 全てのコンテンツが自サーバあるいは、
ブラウザキャッシュが効いている
他サーバから返されているか?
• Google Chromeでレスポンス速度を
確認することが可能でした。
一度...
多くはキャッシュから返ります
ワースト3を見てみましょう
まさかのボトルネック
Adsenseは表示が遅い
• Google Adsenseの「非同期コード」を
使うと、他のHTMLコードの読み込みを
待たずに読み込むことができるため、
多少早まりますが、Nginxを極めると、
このオプションを使用しても
広告の表示のほう...
自サーバだけで
完結していなければ
ならない (大前提)
外部参照はできる限り少なく
• Google Adsenseのように外部サーバを
参照するコードはなるべく書かないようにし
ます。
• ほとんど気にならない程度とはいえ、
KUSANAGIの効果を打ち消してしまいます。
ページが早く表示されることの
意味
出展:ページ表示2秒でイライラし始め、3分の1は「もういいや」となる,
安田英久, ITMediaビジネスオンライン, http://bizmakoto.jp/makoto/articles/1005/19/...
速度以上に
悩まされたのが…
502それは破滅の始まり
• 3週間に1度くらいの頻度で出現
• 厄介なことに原因がよくわからない (調査中)
– KUSANAGI固有ではなくnginxの事象か?
– 色んなログを見ても明確に特定が難しい。
– アクセスログを見ると前触れ無く...
眠れない夜。君のせいだよ。
早朝帯とはいえ3時間止まり、約400ユーザ様が
閲覧できず。
502を
やっつけろ!
I will give you all my love.
2 0 1 6 年 6 月
502オート自己復旧システム
CloudWatch Logs
SQS
502検知で
キュー発砲
定期的にポーリング
キューがあれば、
キューを消してEC2を再起動
access.logを監視
CloudWatch Logs画面
Amazon SQS画面
管理者への連絡はメール(SES)で
障害による影響は極小的に
閲覧不可時間帯を約3分に縮め、
数字が若干落ちる程度までに。
再起動時には以下も実行
• KUSANAGIキャッシュの削除
– KUSANAGI高速化の最大の恩恵である
キャッシュも、再起動前の変な状態のものが
残らないように、全て削除します。
• 念のためパッチ当て
– もしかしたらセキュリティホールか...
これで一安心!
なお障害発生時、管理者は・・・
この仕組みがなかったら、本日私はここにいなかったかもしれません。
緊急時の窮地を救う
まとめ
• KUSANAGI(nginx)を導入することによる
期待効果は
– 数百・数千という大量の同時接続を
処理することが可能
– これらの接続に対して高速にレスポンスを
返すことが可能
– ランニングコストの削減、アクセス数の増加、
コ...
まとめ
• KUSANAGIは、AWSと組み合わせることで
安価・安全に運用できる
– 502発生による閲覧不可問題の対策には
AWSのマネージドサービスの組み合わせが有効
– AWSのマネージドサービスは殆どコスト不要
– CloudWatc...
上手く使って
最速の頂きと
最高の利益を
THE BEST
OF
COMBINATION
ON
提 供
フィクションなので、金銭の授受はありません
提 供
フィクションなので、金銭の授受はありません
提 供
フィクションなので、金銭の授受はありません
END
ご静聴ありがとうございました。
KUSANAGIを触ってみた (WordFes Nagoya 2016 セッション)
KUSANAGIを触ってみた (WordFes Nagoya 2016 セッション)
KUSANAGIを触ってみた (WordFes Nagoya 2016 セッション)
KUSANAGIを触ってみた (WordFes Nagoya 2016 セッション)
Upcoming SlideShare
Loading in …5
×

KUSANAGIを触ってみた (WordFes Nagoya 2016 セッション)

1,465 views

Published on

WordFes Nagoya 2016 セッションにて発表

[Point]
・WordPressは、KUSANAGI (nginx) on AWS 構成
・502対策に CloudWatch Logs と SQS による、自己復旧システムを導入
・本構成により、低コスト化 & 高利益化を実現

Published in: Technology
  • Be the first to comment

KUSANAGIを触ってみた (WordFes Nagoya 2016 セッション)

  1. 1. KUSANAGIを触ってみた Presented by WordFes Nagoya 2016 -実際に運用してみて-
  2. 2. 自己紹介 • 横井 公紀 • https://www.facebook.com/kiminori.yokoi • Sierに勤務しています。 • 主にクラウド(AWS, Azure)の 活用提案・環境構築を行っています。
  3. 3. まず取り急ぎ 理解しておいてほしいこと
  4. 4. IoT時代の到来 2 0 1 6 年
  5. 5. あらゆる情報が インターネットに集まる時代
  6. 6. 集まった情報は どうなる?
  7. 7. 常時、分析され可視化される
  8. 8. 可視化されたデータは どうなる?
  9. 9. みんなが見に来る !!→
  10. 10. リアルタイムに情報を集め リアルタイムに見せる基盤が必要
  11. 11. WordPressなら プログラム XMLRPC
  12. 12. WordPressなら プログラム XMLRPC API サービス 自動 自動 自然事象 SENSOR 自動
  13. 13. IoT時代には高性能が求められる プログラム XMLRPC API サービス 自動 自動 自然事象 SENSOR 自動 非常に多くのリクエスト 非常に多くのセッション 非常に多くのデータ さらにリアムタイム更新
  14. 14. リアルタイムに大量のデータを 素早く表示させたい でもコストはかけたくない ★ニーズ
  15. 15. そこで KUSANAGI
  16. 16. KUSANAGIとは
  17. 17. KUSANAGIとは 私は非常に残念です。解散しない道はなかったのでしょうか。 ちなみに「どんないいこと」と「セロリ」が好きです。
  18. 18. KUSANAGIとは 三種の神器の一つ。草薙剣(くさなぎのつる ぎ)、草那芸之大刀(くさなぎのたち)の異名 である。熱田神宮の神体となっている。三種の 神器の中では天皇の持つ武力の象徴であるとさ れる。 「草を薙いだ剣」 ヤマトタケルが伊勢神宮でこれを拝受し、東征 の途上の駿河国で、この神剣によって野火の難 を払い、草薙剣の別名を与えた。この説は広く 知られているが、日本書紀では異伝とされてい る。現在の静岡県には、焼津、草薙など、この 神話に由来する地名が残る。 Wikipediaより! ということは、熱田神宮にあるってこと?
  19. 19. KUSANAGIとは
  20. 20. KUSANAGIとは • はやい • やすい • うまい
  21. 21. KUSANAGIとは • はやい • やすい • うまい
  22. 22. KUSANAGIとは • はやい: 素速い応答 • やすい: 利用は無償 • うまい: チューニング
  23. 23. KUSANAGIは速い
  24. 24. 実際に 運用した例
  25. 25. 今のWordPress環境 AWS東京リージョン エンドユーザ AZ-A WEB WEB S3 (動的変更 コンテンツ用 ストレージ) 画像等の 静的コンテンツ CloudWatch (監視サービス) AWS Labmda (自動記事 投稿用) AWS Labmda (データ取得用) WEBサービス
  26. 26. 以下モデルを具現化したもの プログラム XMLRPC API サービス 自動 自動 自然事象 SENSOR 自動
  27. 27. (参考) 昔のWordPress環境 AWS東京リージョン エンドユーザ AZ-A AZ-C ・・・ ・・・WEB WEB WEB WEB EC2 RDS (Master) S3 (コンテンツ用 ストレージ) EC2 画像等の 静的コンテンツ RDS (Slave) CloudWatch (監視サービス)
  28. 28. 何が 変わったのか
  29. 29. ランニングコストが落ちた
  30. 30. EC2 (昨年12/20に移行)
  31. 31. 全体
  32. 32. 確実にコストが落ちている
  33. 33. Before
  34. 34. After
  35. 35. Before vs After • EC2利用料 $55.34 → $28.89 – Auto Scalingしなくても負荷に耐えるため、 サーバ1台分の費用まで落ちた。 – ロードバランサー(ELB)が不要になり 費用が落ちた。 • データ通信料 $18.42 → $22.97 – レスポンスが早くなり、ページ回遊数と 滞在時間が増えたためと推測。 • 広告クリック率は0.25% → 0.64%に!
  36. 36. 従来型クラウド時代のコスト 費用 期間
  37. 37. これからの時代のコスト 費用 期間
  38. 38. なんと 応答速度が・・・
  39. 39. !!!!??!?!?!?
  40. 40. そんな!KUSANAGIにしたけど 早くならないなんて! • 全てのコンテンツが自サーバあるいは、 ブラウザキャッシュが効いている 他サーバから返されているか? • Google Chromeでレスポンス速度を 確認することが可能でした。 一度見てみたところ・・・
  41. 41. 多くはキャッシュから返ります
  42. 42. ワースト3を見てみましょう
  43. 43. まさかのボトルネック
  44. 44. Adsenseは表示が遅い • Google Adsenseの「非同期コード」を 使うと、他のHTMLコードの読み込みを 待たずに読み込むことができるため、 多少早まりますが、Nginxを極めると、 このオプションを使用しても 広告の表示のほうが遅い場合があります。 • ページの読み込みが遅い時の対策に 有効だったのですが、ページのほうが 早くなってしまいました。。。
  45. 45. 自サーバだけで 完結していなければ ならない (大前提)
  46. 46. 外部参照はできる限り少なく • Google Adsenseのように外部サーバを 参照するコードはなるべく書かないようにし ます。 • ほとんど気にならない程度とはいえ、 KUSANAGIの効果を打ち消してしまいます。
  47. 47. ページが早く表示されることの 意味 出展:ページ表示2秒でイライラし始め、3分の1は「もういいや」となる, 安田英久, ITMediaビジネスオンライン, http://bizmakoto.jp/makoto/articles/1005/19/news005.html
  48. 48. 速度以上に 悩まされたのが…
  49. 49. 502それは破滅の始まり • 3週間に1度くらいの頻度で出現 • 厄介なことに原因がよくわからない (調査中) – KUSANAGI固有ではなくnginxの事象か? – 色んなログを見ても明確に特定が難しい。 – アクセスログを見ると前触れ無く突然に 502が出現している。 • 一度出現すると502のまま復旧しない – 個人運営ゆえ、ユーザ様からの連絡に気づかず 24時間以上放置したことも… – 放置すると「閲覧不可である状態」のキャッシュが 残ってしまう?
  50. 50. 眠れない夜。君のせいだよ。 早朝帯とはいえ3時間止まり、約400ユーザ様が 閲覧できず。
  51. 51. 502を やっつけろ!
  52. 52. I will give you all my love. 2 0 1 6 年 6 月
  53. 53. 502オート自己復旧システム CloudWatch Logs SQS 502検知で キュー発砲 定期的にポーリング キューがあれば、 キューを消してEC2を再起動 access.logを監視
  54. 54. CloudWatch Logs画面
  55. 55. Amazon SQS画面
  56. 56. 管理者への連絡はメール(SES)で
  57. 57. 障害による影響は極小的に 閲覧不可時間帯を約3分に縮め、 数字が若干落ちる程度までに。
  58. 58. 再起動時には以下も実行 • KUSANAGIキャッシュの削除 – KUSANAGI高速化の最大の恩恵である キャッシュも、再起動前の変な状態のものが 残らないように、全て削除します。 • 念のためパッチ当て – もしかしたらセキュリティホールかも?の不安。 – 自動でyum –y update を実行します。
  59. 59. これで一安心!
  60. 60. なお障害発生時、管理者は・・・ この仕組みがなかったら、本日私はここにいなかったかもしれません。
  61. 61. 緊急時の窮地を救う
  62. 62. まとめ • KUSANAGI(nginx)を導入することによる 期待効果は – 数百・数千という大量の同時接続を 処理することが可能 – これらの接続に対して高速にレスポンスを 返すことが可能 – ランニングコストの削減、アクセス数の増加、 コンバージョンの増加を実現
  63. 63. まとめ • KUSANAGIは、AWSと組み合わせることで 安価・安全に運用できる – 502発生による閲覧不可問題の対策には AWSのマネージドサービスの組み合わせが有効 – AWSのマネージドサービスは殆どコスト不要 – CloudWatch × SQSで、502の影響時間を 極小化することが可能
  64. 64. 上手く使って 最速の頂きと 最高の利益を
  65. 65. THE BEST OF COMBINATION
  66. 66. ON
  67. 67. 提 供 フィクションなので、金銭の授受はありません
  68. 68. 提 供 フィクションなので、金銭の授受はありません
  69. 69. 提 供 フィクションなので、金銭の授受はありません
  70. 70. END ご静聴ありがとうございました。

×