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

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

SORACOM
November 19, 2020

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

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

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

SORACOM

November 19, 2020
Tweet

More Decks by SORACOM

Other Decks in Technology

Transcript

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

    View full-size slide

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

    View full-size slide


  3. ࣗݾ঺հ
    ҆઒ ݈ଠ
    $PGPVOEFS $50 403"$0. *OD
    ུྺ
    3FTFBSDIFSBU&SJDTTPO3FTFBSDI
    "844PMVUJPOT"SDIJUFDU
    "84 /P42- %FWFMPQFS4"
    5XJUUFS!UIFLFOUJFTU
    'BDFCPPLGCNFLFOUBZBTVLBXB
    -JOLFE*OMJOLFEJODPNJOLFOUBZ
    ݸਓతͳ͜ͱ
    γΞτϧۙ߫ʹՈ଒ͰॅΜͰ·͢
    ࠷ۙ73ͰϛʔςΟϯά͢Δํ๏Λ໛ࡧத

    View full-size slide

  4. ifup 2017:SORACOMͷΞʔΩςΫνϟΛॳެ։
    ౰࣌ͷ಺༰ΛৼΓฦΓͭͭ3೥ؒͷਐԽΛ͓ಧ͚͠·͢
    https://www.slideshare.net/SORACOM/ifup-2017-soracom-inside

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  7. パケット転送
    帯域制御
    アクセス制御
    アプリケーションサービス
    回線・セッション管理
    認証
    課金
    イベント通知
    "1*
    コンソール
    1PMBSJT
    %JQQFS
    )VCCMF
    監視・デプロイ
    403"$0.プラットフォームの構成要素

    View full-size slide

  8. 1PMBSJTͱ%JQQFS
    "1*Ͱ࿈ܞ͢Δػೳίϯϙʔωϯτ܈
    ηογϣϯ؅ཧ ೝূ ՝ۚ
    API Gateway
    User Data
    API
    API
    User Data
    ύέοτసૹ
    ଳҬ੍ޚ

    Amazon DynamoDB
    1PMBSJT %JQQFS

    View full-size slide

  9. • 負荷に応じてサーバ台数を増やす
    )PSJ[POUBM 4DBMBCJMJUZ
    "WBJMBCJMJUZ;POF
    "WBJMBCJMJUZ;POF

    View full-size slide

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

    View full-size slide

  11. શϨΠϠʹ)PSJ[POUBM 4DBMBCJMJUZ

    #VJMUJO 3FTJMJFODF
    ηογϣϯ؅ཧ ೝূ ՝ۚ
    API Gateway
    API
    ύέοτసૹ
    ଳҬ੍ޚ

    Amazon
    DynamoDB
    Polaris Dipper
    API
    User Data

    View full-size slide

  12. IoTスケールなプラットフォームを実現するために
    Scalability & Availability
    地理的&
    技術的な
    カバレッジ
    運用の
    効率
    進化のAgility
    Horizontal ScalabilityとBuilt-in Resilience
    Global前提の設計とLayeredアーキテクチャ
    疎結合化と非同期化
    DevOpsとOpsDevの両輪

    View full-size slide

  13. 年当時から現在に至るまでの状況の変化

    View full-size slide

  14. (4.(DPVOUSJFT DBSSJFST

    -5&DPVOUSJFT DBSSJFST

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

    View full-size slide

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

    View full-size slide

  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

    View full-size slide

  17. 様々な状況の変化はありつつも
    当時からの原則に則った進化を続けてきています
    4DBMBCJMJUZ"WBJMBCJMJUZ
    地理的&
    技術的な
    カバレッジ
    運用の
    効率
    進化の"HJMJUZ
    )PSJ[POUBM 4DBMBCJMJUZと#VJMUJO3FTJMJFODF
    (MPCBM前提の設計と-BZFSFEアーキテクチャ
    疎結合化と非同期化
    %FW0QTと0QT%FWの両輪

    View full-size slide

  18. 年当時からの403"$0.プラットフォームの進化

    View full-size slide

  19. パケット転送
    帯域制御
    アクセス制御
    アプリケーションサービス
    回線・セッション管理
    認証
    課金
    イベント通知
    "1*
    コンソール
    1PMBSJT
    %JQQFS
    )VCCMF
    監視・デプロイ
    403"$0.プラットフォームの構成要素
    シグナリング
    4*.認証
    メッセージング
    "SJFT -FP $BQSJDPSO

    View full-size slide

  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*"-

    View full-size slide

  21. )-3)44 4.4$対応が可能にした機能やサービス
    独自4*.の発行やF4*.対応
    4*.ೝূΛԠ༻ͨ͠
    σόΠεͷ#PPUTUSBQQJOH
    403"$0.,SZQUPO

    F4*.ϓϩϑΝΠϧ
    μ΢ϯϩʔυରԠ΍
    J04޲͚F4*.ΞϓϦ
    4*.04
    αϒεΫϦϓγϣϯ
    ίϯςφΤϯδϯ
    α
    ϒ
    ε
    Ϋ
    Ϧ
    ϓ
    γ

    ϯ
    "
    α
    ϒ
    ε
    Ϋ
    Ϧ
    ϓ
    γ

    ϯ
    #
    α
    ϒ
    ε
    Ϋ
    Ϧ
    ϓ
    γ

    ϯ
    $
    403"$0.*P54*.
    403"$0. *P5 4*.
    αϒεΫϦϓγϣϯίϯςφ

    View full-size slide

  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アイコン

    View full-size slide

  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

    View full-size slide

  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

    View full-size slide

  25. ௨ৗͷϩʔϛϯά௨৴ͷ՝୊ɿେ͖ͳ஗Ԇ

    View full-size slide

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

    View full-size slide

  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"
    ランデブーポイント 日本

    View full-size slide

  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を配置し
    クラウド型コアネットワークを実装

    View full-size slide

  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

    View full-size slide

  30. パケット転送
    帯域制御
    アクセス制御
    アプリケーションサービス
    回線・セッション管理
    認証
    課金
    イベント通知
    "1*
    コンソール
    1PMBSJT
    %JQQFS
    )VCCMF
    監視・デプロイ
    403"$0.プラットフォームの構成要素
    シグナリング
    4*.認証
    メッセージング
    "SJFT -FP $BQSJDPSO

    View full-size slide

  31. 監視・運用システム)VCCMF
    4MBDLに
    警告通知
    自動復旧
    を試行
    アラート継続な
    らエンジニアを順
    に呼び出し
    • 疑似呼生成によるセルラーコアの監視
    • 各種サービスの外形監視

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide