Successfully reported this slideshow.
Your SlideShare is downloading. ×

インフラ専任エンジニアが一人もいないSmartNewsにおけるクラウド活用法

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 69 Ad

More Related Content

Slideshows for you (20)

Viewers also liked (20)

Advertisement

Similar to インフラ専任エンジニアが一人もいないSmartNewsにおけるクラウド活用法 (20)

Recently uploaded (20)

Advertisement

インフラ専任エンジニアが一人もいないSmartNewsにおけるクラウド活用法

  1. 1. ! インフラ専任エンジニアが一人も居ない SmartNews におけるクラウド活用法 #SmartTechNight / SmartNews Tech Night Vol.2
  2. 2. SmartNews
  3. 3. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 3
  4. 4. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 4 https://www.techinasia.com/smartnews-us-1m-monthly-active-users/
  5. 5. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 5 Edge of traffic(JP)
  6. 6. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 6 ML-Based News App
  7. 7. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 7 インフラ専任エ ンジニアがひと りも居ない
  8. 8. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 8 ≠インフラに強いエンジニアが居ない ! インフラ専任がいない
  9. 9. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 9 なぜ専任が居ないのか? • 組織が少人数である • クラウドサービスを活用している
  10. 10. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 10 エンジニアも少数精鋭 2012年末 : 1人
 2013年末 : 5人
 2014年末 : 15人
 2015年末 : ?? ! 少人数の組織
  11. 11. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 11 エンジニアも少数精鋭 2012年末 : 1人
 2013年末 : 5人
 2014年末 : 15人
 2015年末 : ?? ! 少人数の組織 SmartNewsリリース エンジニア:社長のみ
  12. 12. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 12 エンジニアも少数精鋭 2012年末 : 1人
 2013年末 : 5人
 2014年末 : 15人
 2015年末 : ?? ! 少人数の組織 300万ダウンロード(2014/02) サーバーサイドエンジニア:1人
 (他 : ネイティブアプリx1 / 機械 学習x2 / 社長x1)
  13. 13. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 13 エンジニアも少数精鋭 2012年末 : 1人
 2013年末 : 5人
 2014年末 : 15人
 2015年末 : ?? ! 少人数の組織 1000万ダウンロード(2015/02) 広告事業開始
 サービス規模相応の体制に (それでも少人数)
  14. 14. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 14 選択と集中 • 本当に大事なところだけに集中 • ネイティブアプリ/サーバーアプリ (API、機械学習)/データ解析 • それ以外は外部に任せる • ハードウェア、ネットワーク、etc… • 自社で管理するには人が足りない…
  15. 15. “If we have seen further, it is by standing on ye shoulders of Giants.”
  16. 16. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 16 クラウドを使う理由 • 以下、 釈 に説法です • 欲しい時に必要なコンピュート資源やサー ビス機能を調達することが出来る • それらをAPIを用いてプログラマブルにコ ントロールできる
  17. 17. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 17 クラウドを使う理由 • 以下、 釈 に説法です • 欲しい時に必要なコンピュート資源やサー ビス機能を調達することが出来る • それらをAPIを用いてプログラマブルにコ ントロールできる サーバーやネットワーク、データセン ターの管理や契約業務、必要機能の開 発などから開放される
  18. 18. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 18 クラウドを使う理由 • 以下、 釈 に説法です • 欲しい時に必要なコンピュート資源やサー ビス機能を調達することが出来る • それらをAPIを用いてプログラマブルに コントロールできる 日々のオペレーション業務を省力化・ 自動化することができる
  19. 19. クラウドサービスを活用するということ
  20. 20. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 20 最初期から現在まで、サービスのバックエ ンドのすべてがクラウドサービス上に存在 する ! SmartNewsとクラウド
  21. 21. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 21 なぜSmartNewsではクラウドをフル活用す ることができたのか? ! SmartNewsとクラウド
  22. 22. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 22 なぜSmartNewsではクラウドをフル活用す ることができたのか? 運が良かったから ! SmartNewsとクラウド
  23. 23. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 23 運とは? • クラウドサービスが実用に耐えるように なっていた(機能、安定性、お金、etc) • 10年前では無理 • 数年前でも無理かも • SmartNewsがクラウドサービス向けの アーキテクトになっているから
  24. 24. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 24 クラウドに向かない処理 • write heavyな処理 • 域内でハイトラフィックなネットワーク (over 10Gbps)が求められる処理 • リアルタイム性の高い処理 • その他、低レイヤーのカリカリのチュー ニングやカスタマイズが必要な処理
  25. 25. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 25 なぜ向かないか? • 仮想環境の限界 • ネットワーク最適化をユーザーが行う事 が難しい事が多い • ハードウェアのカスタマイズや導入が難 しい • Fusion IO, InfiniBand, FPGAなど
  26. 26. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 26 クラウドでも大丈夫な処理 • write heavyではなく、ディスクアクセス も少ない • そこまでの域内トラフィックは求められ ない • リアルタイム性がそこまで高くない
  27. 27. SmartNews
  28. 28. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 28 • 疎結合 • バックエンドは非同期処理を多用
 (同期的書き込みを減らす) • ディスクへのアクセスを極力減らす • 短期的なキャッシュを用いて大量のリク エスト処理を捌く システムの特徴
  29. 29. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 29 構成概略 http://aws.amazon.com/jp/solutions/case-studies/smartnews/
  30. 30. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 30 構成概略 記事を収集し分析するシステム。 大量の処理すべきデータを自作の分散 オンメモリストレージに保存 & 永続的 ストレージへ遅延書き込み。
  31. 31. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 31 構成概略 ネイティブアプリとのインタラクショ ンを行うAPI。engineの解析内容を短 期的にキャッシュしつつ高速に配信。
  32. 32. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 32 構成概略 分析engineと外部向けAPIは完全に別 システムで、RestfulAPIにて情報をや りとり。

  33. 33. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 33 構成概略 <other APIs> 他にも各種RestfulAPIと連携して処理 を行う(画像クオリティ判定API、国 籍判定API、固有表現抽出APIなど)
  34. 34. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 34 短期的なキャッシュの仕組み 簡易的なフレームワークを用いてデー タを短期的に各種キャッシュレイヤー に保存。データ構造も最適化した上で。
  35. 35. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 35 短期的なキャッシュの仕組み Cache API Background Origin
 API or DB <every N seconds> <on demand> データの種類によってCacheStrategy を切り替える。
  36. 36. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 36 • SmartNewsは比較的クラウド上で動作さ せても性能に支障が出ないアーキテクト になっている • そのように工夫している側面ももちろん ある システムの特徴
  37. 37. どのようにクラウドを活用しているか
  38. 38. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 38 • 全体の仕組みを話すと時間が足らないの で、以下に絞って話します • provisioning toolなどを活用した透過的 な運用 • SaaSの活用 • 情報グルーとしてのslack どのように活用しているか
  39. 39. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. • chefやfabricなどのprovisioning toolなど のツールを活用して透過的に誰でもサー バーの管理やdeployが行えるように • 弊社のエンジニアでchefのrecipeを書い たことの無い人はいない(はず)
 39 provisioning toolの活用
  40. 40. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 40 • 主に監視機能や、メトリクス可視化の強 化など、より安定したサービスをより高 速に提供するため。 • 多くのSaaSがAPIを提供しており、既存 のシステムにaddonで組み合わせて連携 することができる
 SaaS活用
  41. 41. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 41 Datadog
  42. 42. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 42 NewRelic
  43. 43. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 43 pagerduty
  44. 44. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 44 logentries
  45. 45. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 45 chartio
  46. 46. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 46 ref. #dd_sushi http://blog.takus.me/2015/02/26/dd-sushi/
  47. 47. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 47 ref. takusの資料 https://speakerdeck.com/takus/smartnews-to-datadog
  48. 48. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 48 • datadog、pagerdutyなどの監視アラート をslackに集約 • slack上で現状共有や対策の協議など 情報グルーとしてのSlack
  49. 49. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 49 情報グルーとしてのSlack • Slackにflow情報が集約されている • 「チラ見」してるだけでも色々なチーム の状況が分かる • ふらっと議論に参加もできる • 「情報」をAPIを使ってプログラマブルに 自由自在に組み立てられる
  50. 50. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 50 クラウドを使う理由 • 以下、 釈 に説法です • 欲しい時に必要なコンピュート資源やサー ビス機能を調達することが出来る • それらをAPIを用いてプログラマブルにコ ントロールできる
  51. 51. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 51 クラウドを使う理由 • 以下、 釈 に説法です • 欲しい時に必要なコンピュート資源やサー ビス機能を調達することが出来る • それらをAPIを用いてプログラマブルにコ ントロールできる 必要な時に、必要な機能を、APIを介し て、自社向けにさまざまな形でのりづけす るように組み立てていく事ができるのが、 クラウド時代のシステムである
  52. 52. intermission.
  53. 53. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 53
  54. 54. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 54 インフラエン ジニアとは?
  55. 55. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 55 “企業の情報システムを構成するコン ピュータや通信ネットワークなどの調達・ 導入や運用、管理、調整、更新などを専門 に行う技術者。また、そのような業務を担 う職種。” (IT用語辞典 e-wordsより引用) インフラエンジニアとは?
  56. 56. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 56 インフラエンジニアとは? インフラ設計 インフラ構築 インフラ運用 『インフラエンジニアの教科書』より引用
  57. 57. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 57 正直、私の知識と経験では網羅的に語る事 が難しいので、経験(Webサービス、スマ フォアプリ)から得た知見として話します インフラエンジニアとは?
  58. 58. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 58 サーバーシステムスタック 物理ネットワーク データセンター ハードウェア 論理ネットワーク OS ミドルウェア アプリケーション
  59. 59. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 59 サーバーシステムスタック 物理ネットワーク データセンター ハードウェア 論理ネットワーク OS ミドルウェア アプリケーション インフラエンジニア アプリケーション エンジニア
  60. 60. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 60 サーバーシステムスタック 物理ネットワーク データセンター ハードウェア 論理ネットワーク OS ミドルウェア アプリケーション クラウドサービス 事業者
  61. 61. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 61 サーバーシステムスタック 物理ネットワーク データセンター ハードウェア 論理ネットワーク OS ミドルウェア アプリケーション クラウドサービス 事業者 低レイヤーの環境についてはクラウド 事業者が提供するサービスを使用し自 前では管理しない、という選択肢が普 通になってきた
  62. 62. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 62 運用スタック M/W App 構築 監視 障害対応 H/W
  63. 63. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 63 運用スタック M/W App 構築 監視 障害対応 H/W インフラ アプリ
  64. 64. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 64 運用スタック M/W App 構築 監視 障害対応 H/W ハードウェア環境は クラウドサービス事業者に依存 インフラ アプリ クラウド
  65. 65. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 65 運用スタック M/W App 構築 監視 障害対応 H/W SaaSを用いた監視 インフラ アプリ クラウド SaaS
  66. 66. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 66 運用スタック M/W App 構築 監視 障害対応 H/W インフラエンジニアとアプリケーション エンジニアの対象となるレイヤーが重なっ てきている インフラ アプリ クラウド SaaS
  67. 67. まとめ
  68. 68. #SmartTechNight / SmartNews Tech Night Vol.2 © SmartNews Inc. All right reserved. 68 • 実際にSmartNewsはクラウドベースな サービスとして成立しています • 専任のインフラエンジニアは居ません • 一番インフラエンジニアっぽいtakus もプログラム書いてます まとめ
  69. 69. Thank you for your attention.

×