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

SORACOM Technology Camp 2020 - Day3 CTOが語る!スケールするプラットフォームのアーキテクチャーと開発運用 〜 SORACOM Inside 〜/technology-camp2020-day3-s02

7cd783377515bdf8207062840b7b2f4e?s=47 SORACOM
PRO
November 19, 2020

SORACOM Technology Camp 2020 - Day3 CTOが語る!スケールするプラットフォームのアーキテクチャーと開発運用 〜 SORACOM Inside 〜/technology-camp2020-day3-s02

ソラコムは、多数のデバイスが接続するIoTシステムを対象に、スケールするプラットフォームを提供しています。本セッションでは、SORACOMの設計思想、内部構造に加え、短期間で矢継ぎ早にサービスをリリースし、グローバルにサービスを展開しているSORACOMの開発・運用手法を解説します。

​株式会社ソラコム
最高技術責任者 安川 健太

7cd783377515bdf8207062840b7b2f4e?s=128

SORACOM
PRO

November 19, 2020
Tweet

Transcript

  1. 403"$0. *OTJEF *P5εέʔϧͳϓϥοτϑΥʔϜͷཪଆͱͦͷਐԽ ,FOUB:BTVLBXB 1I% $PGPVOEFS$50 403"$0. */$ 

  2. 本日のハッシュタグ TPSBDPN !403"$0.@13 IUUQTXXXGBDFCPPLDPNTPSBDPNKQ

  3.  ࣗݾ঺հ ҆઒ ݈ଠ $PGPVOEFS  $50 403"$0. *OD ུྺ

    3FTFBSDIFSBU&SJDTTPO3FTFBSDI "844PMVUJPOT"SDIJUFDU "84 /P42- %FWFMPQFS4" 5XJUUFS!UIFLFOUJFTU 'BDFCPPLGCNFLFOUBZBTVLBXB -JOLFE*OMJOLFEJODPNJOLFOUBZ ݸਓతͳ͜ͱ γΞτϧۙ߫ʹՈ଒ͰॅΜͰ·͢ ࠷ۙ73ͰϛʔςΟϯά͢Δํ๏Λ໛ࡧத
  4. ifup 2017:SORACOMͷΞʔΩςΫνϟΛॳެ։ ౰࣌ͷ಺༰ΛৼΓฦΓͭͭ3೥ؒͷਐԽΛ͓ಧ͚͠·͢ https://www.slideshare.net/SORACOM/ifup-2017-soracom-inside

  5. 2017೥౰࣌ͷൃද಺༰ΛৼΓฦͬͯΈΔ

  6. *P5スケールなプラットフォームを実現するために 4DBMBCJMJUZ"WBJMBCJMJUZ 地理的& 技術的な カバレッジ 運用の 効率 進化の"HJMJUZ

  7. パケット転送 帯域制御 アクセス制御 アプリケーションサービス 回線・セッション管理 認証 課金 イベント通知 "1* コンソール

    1PMBSJT %JQQFS )VCCMF 監視・デプロイ 403"$0.プラットフォームの構成要素
  8. 1PMBSJTͱ%JQQFS "1*Ͱ࿈ܞ͢Δػೳίϯϙʔωϯτ܈ ηογϣϯ؅ཧ ೝূ ՝ۚ API Gateway User Data API

    API User Data ύέοτసૹ ଳҬ੍ޚ … Amazon DynamoDB 1PMBSJT %JQQFS
  9. • 負荷に応じてサーバ台数を増やす )PSJ[POUBM 4DBMBCJMJUZ "WBJMBCJMJUZ;POF "WBJMBCJMJUZ;POF

  10. #VJMUJO 3FTJMJFODF "WBJMBCJMJUZ;POF "WBJMBCJMJUZ;POF • 410'のない構成 • 障害箇所を自動で置き換え • 負荷に応じてサーバ台数を増やす

    )PSJ[POUBM 4DBMBCJMJUZ
  11. શϨΠϠʹ)PSJ[POUBM 4DBMBCJMJUZ  #VJMUJO 3FTJMJFODF ηογϣϯ؅ཧ ೝূ ՝ۚ API Gateway

    API ύέοτసૹ ଳҬ੍ޚ … Amazon DynamoDB Polaris Dipper API User Data
  12. IoTスケールなプラットフォームを実現するために Scalability & Availability 地理的& 技術的な カバレッジ 運用の 効率 進化のAgility

    Horizontal ScalabilityとBuilt-in Resilience Global前提の設計とLayeredアーキテクチャ 疎結合化と非同期化 DevOpsとOpsDevの両輪
  13. 年当時から現在に至るまでの状況の変化

  14. (4.(DPVOUSJFT  DBSSJFST -5&DPVOUSJFT  DBSSJFST ೥౰͔࣌ΒͷมԽɿ ಠࣗൃߦͷ4*.F4*.Ͱੈքͷࠃͱ஍ҬΛαϙʔτ

  15. ೥౰͔࣌ΒͷมԽɿສΛ௒͑ΔσόΠεΛΫϥ΢υʹ

  16. 403"$0.(MPCBM1MBUGPSN -JCSBSJFT4%,T $-* 3VCZ  4XJGU 8FC .BOBHFNFOU 6TFS$POTPMF %BUBIBOEMJOH

    403"$0.#FBN $MPVEBEBQUFS 403"$0.'VOOFM %BUBDPMMFDUJPO 403"$0.)BSWFTU %BUB'JMFT "8471$1FFSJOH 403"$0. $BOBM 0OEFNBOE QBDLFUDBQUVSF 403"$0.1FFL *P5 $POOFDUJWJUZ 403"$0."JS GPS$FMMVMBS ( ( -5& -18" -P3B8"/ 4JHGPY  -5&. %JSFDUDPOOFDUJPO 403"$0. %JSFDU 71/DPOOFDUJWJUZ 403"$0. %PPS "1* 3FTU"1* $POOFDUJWJUZ /FUXPSLJOH *OUFSGBDF 4*. "VUIFOUJDBUJPO 403"$0.&OEPSTF %FWJDFNBOBHFNFOU 403"$0.*OWFOUPSZ 1BDLFUDPOUSPM 403"$0.+VODUJPO %BTICPBSET 403"$0.-BHPPO 4FDVSF QSPWJTJPOJOH 403"$0.,SZQUPO "DDFTT$POUSPM 403"$0."DDFTT .BOBHFNFOU "QQMJDBUJPO %FWJDF-"/ 403"$0.(BUF $MPVEGVODUJPOT 403"$0.'VOL &EHFQSPDFTTJOH 403"$0..PTBJD %FWFMPQFS 4VQQPSU 64# EPOHMFT$FMMVMBSNPEVMFT.JDSPDPOUSPMMFST#VUUPOT %FWJDF ೥౰͔࣌ΒͷมԽɿ*P5։ൃΛࢧ͑Δ֤छαʔϏε 71( *OMJOF1SPDFTTJOH 403"$0.0SCJU /FX 0OEFNBOE SFNPUF BDDFTT 403"$0./BQUFS
  17. 様々な状況の変化はありつつも 当時からの原則に則った進化を続けてきています 4DBMBCJMJUZ"WBJMBCJMJUZ 地理的& 技術的な カバレッジ 運用の 効率 進化の"HJMJUZ )PSJ[POUBM

    4DBMBCJMJUZと#VJMUJO3FTJMJFODF (MPCBM前提の設計と-BZFSFEアーキテクチャ 疎結合化と非同期化 %FW0QTと0QT%FWの両輪
  18. 年当時からの403"$0.プラットフォームの進化

  19. パケット転送 帯域制御 アクセス制御 アプリケーションサービス 回線・セッション管理 認証 課金 イベント通知 "1* コンソール

    1PMBSJT %JQQFS )VCCMF 監視・デプロイ 403"$0.プラットフォームの構成要素 シグナリング 4*.認証 メッセージング "SJFT -FP $BQSJDPSO
  20. 403"$0.ΞʔΩςΫνϟ *P5 %FWJDFT $FMMVMBS 4FTTJPO .HNU "VUIFOUJDBUJPO "VUIPSJ[BUJPO #JMMJOH "1*

    (BUFXBZ "1* "1* ./0 %JSFDU $POOFDU )-3)44  4.4$ ((4/1(8 (51 4*(53"/ %JBNFUFS 0CKFDU 4UPSBHF $%/ %FWJDF .HNU 71$ 71$ 71$ .FTTBHF 2VFVF "1* ˜ 403"$0. */$ $0/'*%&/5*"-
  21. )-3)44 4.4$対応が可能にした機能やサービス 独自4*.の発行やF4*.対応 4*.ೝূΛԠ༻ͨ͠ σόΠεͷ#PPUTUSBQQJOH 403"$0.,SZQUPO F4*.ϓϩϑΝΠϧ μ΢ϯϩʔυରԠ΍ J04޲͚F4*.ΞϓϦ 4*.04

    αϒεΫϦϓγϣϯ ίϯςφΤϯδϯ α ϒ ε Ϋ Ϧ ϓ γ ἀ ϯ " α ϒ ε Ϋ Ϧ ϓ γ ἀ ϯ # α ϒ ε Ϋ Ϧ ϓ γ ἀ ϯ $ 403"$0.*P54*. 403"$0. *P5 4*. αϒεΫϦϓγϣϯίϯςφ
  22. 403"$0.ΞʔΩςΫνϟ *P5 %FWJDFT $FMMVMBS 4FTTJPO .HNU "VUIFOUJDBUJPO "VUIPSJ[BUJPO #JMMJOH "1*

    (BUFXBZ "1* "1* ./0 %JSFDU $POOFDU )-3)44  4.4$ ((4/1(8 (51 4*(53"/ %JBNFUFS 0CKFDU 4UPSBHF $%/ %FWJDF .HNU 71$ 71$ 71$ .FTTBHF 2VFVF "1* ˜ 403"$0. */$ $0/'*%&/5*"- 変わったところ &$ &$4 'BSHBUF )44)-3  4.4$などのイ ンターフェース対 応 "84アイコン
  23. 403"$0.ΞʔΩςΫνϟ *P5 %FWJDFT $FMMVMBS 4FTTJPO .HNU "VUIFOUJDBUJPO "VUIPSJ[BUJPO #JMMJOH "1*

    (BUFXBZ "1* "1* ./0 %JSFDU $POOFDU )-3)44  4.4$ ((4/1(8 (51 4*(53" / %JBNFU FS 0CKFDU 4UPSBHF $%/ %FWJDF .HNU 71$ 71$ 71$ .FTTBHF 2VFVF "1* ˜ 403"$0. */$ $0/'*%&/5*"- 変わらないところ $FMMVMBSコア特有のプロトコルを実装する5IJO -BZFSと ロジックを実装するクラウドネイティブなマイクロサービス群が"1*連携 )PSJ[POUBM 4DBMBCJMJUZ #VJMUJO3FTJMJFODF
  24. 403"$0.ΞʔΩςΫνϟɿ"1*࿈ܞͷར఺ *P5 %FWJDFT $FMMVMBS "1* ./0 %JSFDU $POOFDU (51 4*(53"/

    %JBNFUFS $%/ 4FTTJPO .HNU "VUIFOUJDBUJPO "VUIPSJ[BUJPO #JMMJOH "1* (BUFXBZ "1* )-3)44  4.4$ ((4/1(8 0CKFDU 4UPSBHF %FWJDF .HNU 71$ 71$ 71$ .FTTBHF 2VFVF "1* ˜ 403"$0. */$ $0/'*%&/5*"- ίϯϙʔωϯτ͝ͱʹࣗ༝ͳ࠶഑ஔ͕Մೳ 71$ "1* ((4/1(8
  25. ௨ৗͷϩʔϛϯά௨৴ͷ՝୊ɿେ͖ͳ஗Ԇ

  26. ϥϯσϒʔϙΠϯτΛ׆༻ͨ͠௿஗Ԇ௨৴ ランデブーポイント ドイツ ランデブーポイント 64" ランデブーポイント 日本

  27. ϥϯσϒʔϙΠϯτͷཪଆ 4FTTJPO .HNU "VUIFOUJDBUJPO "VUIPSJ[BUJPO #JMMJOH "1* (BUFXBZ "1* )-3)44

     4.4$ ((4/1(8 0CKFDU 4UPSBHF %FWJDF .HNU 71$ 71$ 71$ .FTTBHF 2VFVF "1* 71$ "1* ヨーロッパ在圏 のデバイス 71$ "1* 64在圏 のデバイ ス 日本在圏の デバイス ランデブーポイント ドイツ ランデブーポイント 64" ランデブーポイント 日本
  28. 403"$0. %JTDPWFSZ にて発表 "848BWFMFOHUI×(.&$実証実験 超低遅延なエッジコンピューティング 403"$0. $PSF/FUXPSL &YQFSJNFOU QBSUOFST 4ZTUFN

    $VTUPNFS 4ZTUFN ( /FUXPSL $PSF /FUXPSL ( /FUXPSL &YQFSJNFOU QBSUOFST 4ZTUFN (検証センター 従来構成 "84 8BWFMFOHUI 活⽤構成 超低遅延 "84 8BWFMFOHUI ⽉から 実証中! *OUFSOFU *OUFSOFU (検証センター内に"848BWFMFOHUIを配置し クラウド型コアネットワークを実装
  29. *P5 %FWJDFT $FMMVMBS 4FTTJPO .HNU "VUIFOUJDBUJPO "VUIPSJ[BUJPO #JMMJOH "1* (BUFXBZ

    "1* ./0 %JSFDU $POOFDU )-3)44  4.4$ 4*(53"/ %JBNFUFS 0CKFDU 4UPSBHF $%/ %FWJDF .HNU "1* ((4/1(8 (51 71$ 71$ 71$ .FTTBHF 2VFVF "1* ˜ 403"$0. */$ $0/'*%&/5*"- "848BWFMFOHUIΛ׆༻ͨ͠ΞʔΩςΫνϟ "84 8BWFMFOHUI ;POF
  30. パケット転送 帯域制御 アクセス制御 アプリケーションサービス 回線・セッション管理 認証 課金 イベント通知 "1* コンソール

    1PMBSJT %JQQFS )VCCMF 監視・デプロイ 403"$0.プラットフォームの構成要素 シグナリング 4*.認証 メッセージング "SJFT -FP $BQSJDPSO
  31. 監視・運用システム)VCCMF 4MBDLに 警告通知 自動復旧 を試行 アラート継続な らエンジニアを順 に呼び出し • 疑似呼生成によるセルラーコアの監視

    • 各種サービスの外形監視
  32. サービス(MPCBM化に伴って監視も(MPCBM化 オフィスのある拠点から実機で-5&(の&&監視

  33. サービス(MPCBM化に伴って監視も(MPCBM化 拠点のない地域からは外部サービスを活用して監視

  34. 拡張と改善を繰り返しながら 世界各地の200万を超える デバイスを繋いできました

  35. Still Day One ͓٬༷ɾύʔτφʔͷօ༷ʹࢧ͑ΒΕͳ͕Β ૉ੖Β͍͠νʔϜͱڞʹ৴ͨ͡ະདྷʹ޲͔ͬͯ ΈΜͳͷ403"$0.͸εέʔϧ͠ଓ͚·͢

  36. 403"$0.の願い クラウド 㱺多くのビジネス、8FCサービス 403"$0. 㱺多くの*P5ビジネス、システム たくさんの *P5プレイヤーが生まれますように

  37. 世界中のヒトとモノをつなげ 共鳴する社会へ