Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SaaS WITH Infrastructure

SaaS WITH Infrastructure

インフラ系SaaSカジュアルトーク at IPROS 〜 New RelicやDatadog, Twillioなどを利用したインフラ運用ノウハウ大公開!〜 - IPROS Tech Meetup | Doorkeeper https://iprostm.doorkeeper.jp/events/25664

Toyama Hiroshi

June 26, 2015
Tweet

More Decks by Toyama Hiroshi

Other Decks in Technology

Transcript

  1. SaaS with Infrastructure インフラ系SaaS 勉強会

  2. None
  3. アジェンダ 何故SaaS を使うのか 使ってるSaaS IPROS の監視方法 まとめ

  4. 何故SaaS を 使うのか

  5. 何故SaaS を使うのか インフラにおけるモニタリングや通知はサー ビスにおけ る本質の部分ではない サー バー を極力自ら持ちたくない 欲しい時に欲しいだけリソー スを調達

    人的リソー スの削減
  6. 何故SaaS を使うのか2 洗練されたAPI プロが運用するセキュリティ 良質なサー ビスの激しい価格競争

  7. IPROS の開発は インフラエンジニアが1 人もいない サー バー は全てAWS 使っているSaaS は100 以上。。

  8. SaaS における問題点 アカウント管理 サー ビスによっては不安定なSLA 低レイヤー のチュー ニング

  9. インフラ エンジニア は死んだ?

  10. 死んでません! ただ求められるスキルは変わ ってきています

  11. ひとむかしのはなし 1. デー タセンター を自分で持つ 2. ラックサー バを買い設置 3. ネットワー

    ク敷設 4. OS をインストー ル 5. shell script でProvisioning
  12. うっ、 頭痛が。。

  13. 最近の傾向 何をするにもコー ドが必要 マシンイメー ジをベー スに必要な部分だけ構築 洗練されたAPI Chef、Ansible などによるprovision サー

    バー の「 使い捨て」
  14. 必要なスキルの変化 cloud を使いこなすスキル 洗練されたOSS を使いこなすスキル コー ドを書くスキル Cloud 側が提供するAPI を把握するスキル

  15. 使ってるSaaS

  16. Infra で使っているSaaS NewRelic Pingdom Leftronic Twilio Hipchat

  17. None
  18. NewRelic 一番メジャー なモニタリングサー ビス から登録するとstandard PLAN を無料で使える レスポンスタイムやスロー クエリなど, パフォー

    マンス に関するさまざまな統計情報 http://newrelic.com/aws
  19. NewRelic いいところ 設定がほとんどないと言っていいほど簡単 インフラ的な側面だけではなく、 アプリケー ションやブ ラウザも含めた統合的なボトルネックが把握しやすい Rails の場合Controller 別のレスポンスタイムの表示は秀

    逸 smartphone アプリも良く出来ている smartphone にpush 通知出来る
  20. NewRelic だめなところ 有料プランの価格が高すぎる 有料プランの価格 LITE:Free PRO:$149/mo.per host ENTERPRISE:Call

  21. None
  22. Pingdom URL 監視サー ビス 世界各地にある複数の監視サー バー から監視する 異常を検知した場合は、 あらかじめ指定したEmail アドレ

    スや携帯電話(SMS) にアラー トを通知。 Webhook による通知。 監視間隔( 分)、 異常を検知してからアラー ト通知するまで の時間( 分)、 異常を検知した場合のリピー ト通知間隔( 回 数)。 レスポンスタイム計測機能
  23. Pingdom いいところ 外部からの監視なので、 客観的な監視が出来る 監視対象となるサー バー 側の設定(Agent 等) が不要 レスポンスタイムやトランザクション監視

    2000 円~ と価格が安い
  24. None
  25. Pingdom ダメなところ Twitter のDM とSMS くらいしか連携できない。 Hipchat やSlack と連携したい場合はWebhook を作る必要

    がある。 API が少し煩雑 中国などネットワー ク環境が劣悪だとサー バー が生きて いてもエラー になったりする
  26. None
  27. Leftronic 可視化サー ビス 大型スクリー ン用で見るダッシュボー ドを想定している ダッシュボー ドとして必要な機能を全て備えている Google Analytics、Twitter、Chartbeat、Mixpanel、

    Zendesk など各種サー ビスと連携可能 レイアウトをドラッグ& ドロップだけでカスタマイズ出 来る 背景が黒い!
  28. None
  29. Leftronic いいところ 開発不要で綺麗なダッシュボー ドが作れる 連携できるデー タソー スが豊富 グラフの種類が豊富 API もシンプル

    ダッシュボー ドのロー テー ション機能が便利
  30. None
  31. None
  32. Leftronic ダメなところ 特になし

  33. Leftronic のPush API c u r l - i -

    X P O S T - k - d \ ' { " a c c e s s K e y " : " y o u r A c c e s s K e y " , \ " s t r e a m N a m e " : " y o u r S t r e a m N a m e " , " p o i n t " : 1 0 0 } ' \ h t t p s : / / w w w . l e f t r o n i c . c o m / c u s t o m S e n d /
  34. Leftronic のPull API { " n u m b e

    r " : 1 0 0 } ↑ のようなデー タを返すURL だけあればいい。 ベー シック認証機能 polling interval を設定可能
  35. None
  36. Twilio 電話API サー ビス Web API になっており電話を掛けることも受けることも 出来る TwiML というXML

    言語で設定を記述する 電話を受けた際には、 相手の電話番号や国、 通話時間な どがパラメー タとして受け取れる
  37. Twilio の主なユー スケー ス コー ルセンター 電話受信のトラッキング 通知

  38. Twilio いいところ 各種言語のライブラリが豊富でコー ドが書きやすい 電話という通知が気軽にできる 応用範囲が広い

  39. Twilio ダメなところ 日本語の発音がかなりおかしい WEB API なので受ける場合はEndpoint が必要 掛ける場合はtwimlets というサー ビスがEndpoint

    を肩 代わりしてくれる
  40. TwiML < ? x m l v e r s

    i o n = " 1 . 0 " e n c o d i n g = " U T F - 8 " ? > < R e s p o n s e > < S a y v o i c e = " w o m a n " l a n g u a g e = " j a - j p " > 障害が発生しました< / S a y < / R e s p o n s e > fluent-plugin-twilio を使えば面倒な設定はほぼ不要( 後述)
  41. IPROS の 監視方法

  42. 通知元 Fluentd Zabbix NewRelic Pingdom

  43. 通知先 Hipchat Twilio

  44. None
  45. Fluentd アプリのロギングはfluent-logger 経由でFluentd に集約 fluent-logger-java, fluent-logger-ruby などライブラリで ロギング Zabbix での通知もあるが、

    徐々 にフェー ドアウトし Fluentd に移植中
  46. 通知ランクB Hipchat

  47. None
  48. 通知ランクB(Hipchat) NewRelic サー バー 障害 Rails のError Rate 5% 以上

    Pingdom サイトが1 分以上応答がない heroku へのWEBHOOK 経由で通知 Fluentd Batch でERROR 以上が発生した場合、fluent-plugin- hipchat で運用メンバー に通知
  49. 通知ランクA Twilio

  50. None
  51. 通知ランクA(Twilio) NewRelic サー バー 障害(10 分以上応答がない) heroku へのWEBHOOK 経由で架電 Pingdom

    サイトが5 分以上応答がない heroku へのWEBHOOK 経由で通知 Fluentd Batch でFATAL が発生した場合、fluent-plugin-twilio で 運用メンバー に通知
  52. まとめ

  53. まとめ 便利SaaS 多すぎて戦国時代 コー ド書けたほうが圧倒的に通知システム作りやすい IPROS はSaaS とOSS を組み合わせた通知システム

  54. Hiring

  55. None
  56. 興味ある方は イプロスエンジニア採用サイト で検索!

  57. ありがとう ございました