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

さくらがIoTで実現したいこと

chibiegg
September 17, 2016

 さくらがIoTで実現したいこと

2016-09-17 Open Cloud Innovation Festa 2016 #ocif16

chibiegg

September 17, 2016
Tweet

More Decks by chibiegg

Other Decks in Technology

Transcript

  1. (C) Copyright 1996-2016 SAKURA Internet Inc. @DIJCJFHH ⾃⼰紹介 江草 陽太 2

    【所属等】 さくらインターネット株式会社 新卒⼊社2年⽬        【開発案件】 • さくらの専⽤サーバ • さくらのVPS API/DB/制御システム担当 • さくらのIoT Platform α 設計・開発 ソフトウエア/インフラ/組み込みエンジニア 【その他】 • 新卒・中途採⽤ • ICTトラブルシューティングコンテスト実⾏委員 • Home NOC Operatorsʼ Group (AS59105) • JANOG38 実⾏委員 (ORG)
  2. (C) Copyright 1996-2016 SAKURA Internet Inc. ʲܦྺʳ ϩϘΧοϓδϡχΞ (தֶɾߴߍ) େࡕେֶ޻ֶ෦ిࢠ৘ใ޻ֶՊ৘ใ௨৴޻ֶઐ߈

    ݸਓࣄۀओ NHKେֶϩϘίϯ େࡕେֶେֶӃ޻ֶݚڀՊதୀ SECCON CTF 2014 ࠃ಺4Ґ ʲઐ໳ʳ γεςϜઃܭ/ίʔσΟϯά WebΞϓϦέʔγϣϯ NW/SC/DBεϖγϟϦετ ճ࿏ઃܭ/૊ΈࠐΈ։ൃ 3 ⾃⼰紹介
  3. (C) Copyright 1996-2016 SAKURA Internet Inc. 4 0 5 21

    8 0 2 5 6 6 8 59 0 1 6 59 9 5 6 9 6 0 2 1  2156A;B><=!&  &    0 #%8$14 ) '    1999817 C7B?9/319961223D      20051012C@8B:D 20151127C *-4 D +  . 89,530  "  339 C,(D   
  4. (C) Copyright 1996-2016 SAKURA Internet Inc. 11 ਨ௚౷߹ܕ ࣗݾ৘ใ؅ཧ σόΠε

    ˍ γεςϜ ੜ׆श׳৘ใ؅ཧ σόΠε ˍ γεςϜ ॅ୐৘ใ؅ཧ σόΠε ˍ γεςϜ ੡଄೶ۀ౳ ࢈ۀ৘ใ؅ཧ σόΠε ˍ γεςϜ ੜ࢈ٕज़৘ใԽ σόΠε ˍ γεςϜ ઀ଓ ։ൃج൫ ιϑτ΢ΣΞ σʔλج൫ 044 ղੳ෼ੳج൫ ηϯαʔωοτ ηϯαʔ ωοτ ηΩϡϦςΟ ج൫ ࣄۀձࣾ ௨৴ํࣜ ཁૉٕज़ Ϋϥ΢υ ίϯϐϡʔςΟϯάύϫʔ ϞόΠϧ ϛχ1$ ηϯαʔ ϛχ1$ ηϯαʔ .. ௨৴ σόΠεؒ 8JGJωοτ ΩϟϦΞ .. αʔϏε ʢ$"%%ϓϦϯτσʔλʣ ىۀࢧԉ Ϋϥ΢υ ϑΝϯσΟϯά ྲྀ௨ ਫฏ౷߹ܕɹج൫
  5. (C) Copyright 1996-2016 SAKURA Internet Inc. ਨ௚౷߹ܕ ࣗݾ৘ใ؅ཧ σόΠε ˍ

    γεςϜ ੜ׆श׳৘ใ؅ཧ σόΠε ˍ γεςϜ ॅ୐৘ใ؅ཧ σόΠε ˍ γεςϜ ੡଄೶ۀ౳ ࢈ۀ৘ใ؅ཧ σόΠε ˍ γεςϜ ੜ࢈ٕज़৘ใԽ σόΠε ˍ γεςϜ ઀ଓ ։ൃج൫ ιϑτ΢ΣΞ σʔλج൫ 044 ղੳ෼ੳج൫ ηϯαʔωοτ ηϯαʔ ωοτ ηΩϡϦςΟ ج൫ ࣄۀձࣾ ௨৴ํࣜ ཁૉٕज़ Ϋϥ΢υ ίϯϐϡʔςΟϯάύϫʔ ϞόΠϧ ϛχ1$ ηϯαʔ ϛχ1$ ηϯαʔ .. ௨৴ σόΠεؒ 8JGJωοτ ΩϟϦΞ .. αʔϏε ʢ$"%%ϓϦϯτσʔλʣ ىۀࢧԉ Ϋϥ΢υ ϑΝϯσΟϯά ྲྀ௨ ਫฏ౷߹ܕɹج൫ શ෦΍ͬͯΔʂ Ϟϊʢηϯαʔͱ͔Մಈ෦ʣɺ௨৴෦ όοΫΤϯυγεςϜʢΫϥ΢υʣɺදݱ෦ ൚༻඼΍ͬͯΔΑʂ Ϟϊʢηϯαʔͱ͔Մಈ෦ɺ௨৴෦ όοΫΤϯυγεςϜʢΫϥ΢υʣɺදݱ෦ɹͷ͍ͣΕ͔ ෦඼΍ͬͯΔΑʂ Ϟϊʢηϯαʔͱ͔Մಈ෦ɺ௨৴෦ όοΫΤϯυγεςϜʢΫϥ΢υʣɺදݱ෦ɹΛߏ੒͢Δ෦඼ 12
  6. اըɾΞΠσΟΞ Ϟϊʢ੡଄ʣ Sensor ૹ৴खஈ γεςϜ UI ࿈ܞAPI ͞ ͘ Β

    Π ϯ λ ʔ ω ο τ ੈ ͷ IoTPF ͱΓ͋͑ͣ ΞϓϦͰʂ εϚϗͰʂʂ ҆શͳ௨৴ܦ࿏
  7. اըɾΞΠσΟΞ Ϟϊʢ੡଄ʣ Sensor ૹ৴खஈ γεςϜ UI ࿈ܞAPI ͱΓ͋͑ͣ ΞϓϦͰʂ εϚϗͰʂʂ

    ҆શͳ௨৴ܦ࿏ Ϟϊʹ૊ΈࠐΊ͹ɺ ઃఆෆཁɹిݯΛೖΕΔ͚ͩͰར༻Մ ʢ๲େͳ਺ɾ஌ࣝͷ༗ແɾωοτธ஍ʣ ͞ ͘ Β Π ϯ λ ʔ ω ο τ ੈ ͷ IoTPF
  8. (C) Copyright 1996-2016 SAKURA Internet Inc. さくらのIoT Platform で提供するもの ̍ɽ͘͞ΒͷIoT௨৴Ϟδϡʔϧ

    ɾܞଳճઢϞσϜ಺ଂઐ༻ดҬ໢Λܦ༝ͨ͠௨৴Λఏڙ ̎ɽ͘͞ΒͷIoTϓϥοτϑΥʔϜ ɾϞδϡʔϧʗσʔλ౷߹؅ཧ༻ίϯτϩʔϧύωϧ ɾ௨৴Ϟδϡʔϧͷొ࿥ʗ֬ೝ͕Մೳ ɾσʔλ஝ੵ ɾ༷ʑͳγεςϜͱ઀ଓ͢Δػೳ - Outgoing/Incoming Webhook (HTTPΠϕϯτυϦϒϯ) - WebSocket (ϦΞϧλΠϜ)
 - ֤छαʔϏε࿈ܞ (myThings, Bluemix, Milkcocoa, AWS IoT, etc.) 17
  9. (C) Copyright 1996-2016 SAKURA Internet Inc. 18 Other Our Services

    Customer site SAKURA SAKURA Communication Board SAKURA IoT Platform Our Partner’s Services ThingsʢϞϊʗίτʣ SAKURA IoT Platform
  10. (C) Copyright 1996-2016 SAKURA Internet Inc. 19 通信 モジュール 通信

    モジュール 通信 モジュール 通信 モジュール 認証・認可 連携情報 通信モジュールからのデータの流れ 接続管理 リアルタイム処理 蓄積・サービス連携 ⾃社サービス
  11. (C) Copyright 1996-2016 SAKURA Internet Inc. 20 通信 モジュール 通信

    モジュール 通信 モジュール 通信 モジュール 認証・認可 連携情報 通信モジュールからのデータの流れ 接続管理 リアルタイム処理 ⾃社サービス 蓄積・サービス連携 さくらIoT Platform
  12. (C) Copyright 1996-2016 SAKURA Internet Inc. 蓄積・サービス連携 21 通信 モジュール

    通信 モジュール 通信 モジュール 通信 モジュール 認証・認可 連携情報 通信モジュールからのデータの流れ 接続管理 リアルタイム処理 ⾃社サービス ͘͞Β*P51MBUGPSN 1社1⼈で全部やるのではなく コラボレーションが簡単に︕ 組み込み WEB 共創
  13. (C) Copyright 1996-2016 SAKURA Internet Inc. 24 さくらのIoT Platform α

    利⽤例 (クラウドEXPO) ̍ɽݟकΓϙοτ ɾڅ౬࣌ͷ౬ྔͱڅ౬࣌ؒΛଌఆ ɾऔಘσʔλΛϓϥοτϑΥʔϜ΁ૹ৴ ɾϓϥοτϑΥʔϜˠWebαʔόˠʮSlackʯ ɹɹˠɹݟकΓαʔϏεʹʂंྠͷ࠶ൃ໌ʂ ̎ɽԹ࣪౓ܭ ɾ֎ؾͷԹ౓͓Αͼ࣪౓Λଌఆ ɾऔಘσʔλΛϓϥοτϑΥʔϜ΁ૹ৴ ɾOutgoing WebhookΛܦ༝͠ಠࣗAPʹ ɹૹ৴ɺάϥϑΟΧϧͳදࣔΛ࣮ݱ
  14. (C) Copyright 1996-2016 SAKURA Internet Inc. 25 さくらのIoT Platform α

    利⽤例 ඵҎԼͩͱʰνϣϩʱ ඵҎ্ͩͱ ʰʙʱͻͱͭͰɺඵ
  15. (C) Copyright 1996-2016 SAKURA Internet Inc. Other Our Services Customer

    site SAKURA SAKURA Communication Board SAKURA IoT Platform ポットの中 SAKURA IoT Platform Slack 26
  16. (C) Copyright 1996-2016 SAKURA Internet Inc. 29 • 3G/LTEモデム •

    ARMマイコン (STM32) • RTOS (FreeRTOS) • TCP/IPプロトコルスタック (LwIP) • HTTP・MQTT等(独⾃実装) 通信モジュール側
  17. (C) Copyright 1996-2016 SAKURA Internet Inc. 30 ファームウエアの更新 ϒʔτϩʔμ 1MB

    FLASH 0x00000000 0x00020000 ϑΝʔϜ΢ΤΞ 0x00100000 更新しない → 更新する → ⾃⾝を書き換える • 提供するファームウエアの管理 • 暗号化等による耐タンパ性
  18. (C) Copyright 1996-2016 SAKURA Internet Inc. 31 • GSLB •

    DNSコンテンツ・キャッシュ • データベース • RabbittMQ • Mesosマスタ+Dockerクラスタ • Webロードバランサ • BGPルータ • サービス収容ルータ • Docker Repository データセンター側
  19. (C) Copyright 1996-2016 SAKURA Internet Inc. 36 MarathonによるBlue-Greenデプロイ MarathonのAPIと連携するロードバランサを開発 •

    API経由でバージョンの切り替えが可能 • イメージの作成からデプロイ、                切り替えが⾃動化可能に IUUQRJJUBDPNDIJCJFHHJUFNTGCCBEBGDGD GitHub:e → ビルド/デプロイ → テスト → 切り替え
  20. (C) Copyright 1996-2016 SAKURA Internet Inc. LNݍ಺ ΰʔϧº̍ ண཮ڑ཭ʹΑͬͯՃ఺ ۓٸண཮஍఺º

    Ͳ͏ͯ͠΋߱Γͳ͚Ε͹ͳΒͳ͍৔ ߹͜͜ʹ߱ΓΕ͹ಘ఺͸ҡ࣋ ύΠϩϯº NҎ಺Ͱಘ఺ ֤͕ࣗ࣋ͪࠐΜͩ(14૷ஔ Ͱ͋ΔͨΊɺϑΥʔϚοτ͕ ·ͪ·ͪɺμ΢ϯϩʔυ΋ ஗͍ʗյΕ͍ͯΔ࣌΋ɾɾɾ パラグライダー 48