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

IoTシステム開発の新潮流を探る!組込み向けコンテナOSと内製化支援の新スタイル/SORACO...

SORACOM
November 25, 2021

IoTシステム開発の新潮流を探る!組込み向けコンテナOSと内製化支援の新スタイル/SORACOM Tech Days 2021 day2_10

SORACOM Tech Days 2021 セッション資料です。
IoTの活用が拡がる中で、そのシステム開発にも新しい仕組みやスタイルが登場しています。本セッションではそれらを手がける"中の人"より、それらの特徴や狙いを存分に語っていただきます。取り上げるのはIoTゲートウェイの基盤ソフトウェアとしてのコンテナOSと、ユーザー組織でエンジニアチームの立ち上げをサポートする内製化支援サービスです。

株式会社アットマークテクノ
第2開発部 部長
大澤 啓明氏

クラスメソッド株式会社
CX事業本部 MAD事業部 内製化支援チーム マネージャー
阿部 信介氏
(※資料はこちら:https://speakerdeck.com/cmabe/soracom-tech-days-kurasumesotudofalsenei-zhi-hua-zhi-yuan-sabisunituite

株式会社ソラコム
ソリューションアーキテクト
​今井 雄太

SORACOM

November 25, 2021
Tweet

More Decks by SORACOM

Other Decks in Technology

Transcript

  1. ソリューションアーキテクト 今井 雄太(factory) [email protected] 経歴 • SE - 6年 •

    ソフトウェアエンジニア(SNS) - 2.5年 • ソリューションアーキテクト(クラウド、ビッグデータ) 自己紹介
  2. IoTシステムはカバーすべきことがたくさん インターネット クラウド モノ • センサ, デバイス選定 • フィールド側構成の設計 •

    ネットワーク設計 • ルーター選定 • アーキテクチャ設計 • クラウドサービス選定 モノ、通信、クラウドとフルスケール
  3. ハードウェアもソフトウェアも サーバーも利用 作らずに、創る 自前主義からの脱却 経験ゼロでも 素早く始める方法は? IoT SELECTION connected with

    SORACOM SORACOM IoT ストア IoT レシピ SORACOM パートナースペース 自分で やってみる 買って使う IoT パートナーに 相談する 例えばソラコムのおすすめな開発手法は
  4. 会社・自己紹介 大澤啓明(@keimei) ▪ 第2開発部部長 ▪ ボードコンピューター製品関連のマネジメント担当 ←こんなの作ってます 株式会社アットマークテクノ ▪ 設立:1997年11月

    ▪ 本社/生産センター:札幌 | 営業部:東京、大阪 ▪ 事業概要: 組み込み機器向け小型コンピュータボード 「組み込みプラットフォーム」の開発・製造・販売
  5. Armadillo20年の歴史とOSの変遷 © Atmark Techno, Inc. p.3 ゲートウェイ型 モジュール型 ボード型(汎用) ボード型(特化)

    2007年~ 2001年~ 2004年~ 2010年~ 2013年~ 2016年~ 2019年~ 初代Armadillo A200世代 A500世代 A400世代 A800世代 A600世代 A-X1世代 PC/104 PC/104 PC/104 カメラ LCD A500 A500 A9 HT1070 A210/220/230/240 A420/440 A410 A460 A840m A840 A810 AX1 A640 A610 A-IoT G1/G2 A-IoT G3/G3L A-IoT A6 Atmark Dist scratch Debian
  6. OS開発の背景 © Atmark Techno, Inc. p.4 ディストリビューションがサポート期間を決めている 長期にディストリビューションを固定できない OSサポート期間 個体ごとにパッケージアップデートをするのか?

    個体ごとのメジャーアップデートは時間を要するし電源も切れない 容量的に2面化することはできなく、失敗時に何の手段もなくなる アップデート時の課題 Hardware 汎用ディストリ ビューション pkg pkg pkg インストールしたアプリは そのまま利用できてしまう アクセス権限の問題 サーバー・デスクトップ用途向けに、多様な機能が搭載され、 不要な機能も含まれている サイズが大きい
  7. IoT機器における独特の課題 © Atmark Techno, Inc. p.5 ▪ 長期に運用が必要 ◆ サーバー用途よりも長いこともある

    ◆ その割りには安く作ることが求められる ▪ ストレージがeMMC等のNANDフラッシュメモリ ◆ 書換え回数や容量に制限がある ▪ 個体ごとに環境が異なる(台数が多いことも) ◆ その場に行けない ◆ 十分な通信路を確保できない ◆ 電源が切られる可能性
  8. ▪OSのコンパクト化 • 長期的なアップデートの提供 • 機能限定化によるセキュリティの向上 Armadillo Base OSの特長 © Atmark

    Techno, Inc. p.8 eMMC(8GB ストレージ) log firm app 50MB 200MB 7.2GB コンテナ 1 コンテナ n コンテナ 0 GPU VPU NPU OS 300MB x2 Bootloader uboot 32MB x2 Linux 5.10 ネットワーク マネージャー ソフトウェア アップデート コンテナ エンジン 約200MB (圧縮配信時:約100MB) IoT時代に適応した長期運用への対応 ▪コンテナによるアプリケーション運用 • サンドボックス化によるセキュリティの向上 • コンテナ単位でアップデート可能 ▪アップデート機能を標準提供 • OS/ブートローダ/コンテナの二面化とリカバリー機能 • ネットワーク/USB/SDによるアップデート機能 ▪堅牢性の向上 • 安定性の高いファイルシステムと抑制された書込み回数 • 運用ログの記録機能を標準搭載 ▪セキュリティ機能の向上 • コンテナ化によるアクセス権限の管理 • セキュアエレメントへの対応 • OP-TEEの提供 連携 サーバー Secure Element CERT 主にデバイス認証 向けに利用 NXP SE050 配信
  9. オリジナル=フルスクラッチではない でもちょっと逆張り? SWUpdate NetworkManager Linux 5.10 ネットワーク マネージャー ソフトウェア アップデート

    コンテナ エンジン あえてホストOSにalpineを採用 都度ビルドするyoctoではなく apk単位で社内開発を促進 ダウンロード中の電源断対策や 後処理を柔軟に実装可能な拡張性 あり、BaseOSとコンテナを同一手順 で更新する実装が実現 OCI準拠による内部仕様安定への 期待とリリースサイクルの速さ、 issueへの反応も良くありがたい サイズ大…しかしModemManagerと 組合せた開発資産あり LTE搭載機に は必要
  10. コンテナによる空間分離 © Atmark Techno, Inc. p.10 Linux Kernel コンテナ A

    コンテナ B コンテナ N app 分離 分離 分離 A コンテナエンジン(podman) app lib app lib app lib B N Alpine Linuxベースで コンパクトに構築 arm64v8向けのイメージを 利用可能(Docker Hub) 5MB~ Alpine Debian Ubuntu 小さめ 大きめ 大きめ アクセス制限 ユーザーアプリのための 閉じた空間を用意し、脆弱性を限定 空間分離 ライブラリのバージョンが異なる 複数のアプリを実行可能
  11. 現場でのアップデート系 複数のアップデート手段を提供 © Atmark Techno, Inc. p.11 eMMC(8GB ストレージ) log

    firm app コンテナ 1 コンテナ n 50MB 200MB 7.2GB コンテナ 0 GPU VPU NPU OS 300MB x2 Bootloader uboot 32MB x2 正しく「署名されたイメージ」のみを書き 込む (改ざん防止) Web サーバー file hawkBit サーバー dB file SD file USB file 簡易型の リモートアップデート 高機能な リモートアップデート
  12. ロールバック可能なアップデート © Atmark Techno, Inc. p.12 Bootloader-A uboot OS Base

    OS コンテナ 0 ロールバック可能 コンテナ / OS領域 / Bootloader領域は それぞれ単独/複数で更新することができ、 1回分のバックアップが存在する ロールバック可能 ロールバック可能 OS Base OS 更新 Bootloader uboot 更新 配信 eMMC(8GB ストレージ) log firm app コンテナ 1 コンテナ n 50MB 200MB 7.2GB コンテナ 0 GPU VPU NPU OS 300MB x2 Bootloader uboot 32MB x2 サーバー 各領域を二面化し アップデートを安全に コンテナは差分更新可能 diff’ diff'' 更新 コンテナ 0
  13. エッジAI対応の現実的な選択肢!! © Atmark Techno, Inc. p.14 ▪ 最新SoCのi.MX 8M Plusを採用

    ◆ NPU搭載(2.3TOPS)で高速に動作 ◆ NPUはTensorFlow Lite / Arm NNに対応 ▪ 普及価格帯で提供 ◆ 1個でも5万円以下(税込49,500円) ◆ ボリュームディスカウント可能 ▪ ファンレス/ヒートシンクレスで軽量 ◆ 耐環境性が高い(-20~+70℃) ▪ IoT機器向けの新OSで長期運用へ対応 ◆ Linuxベースのコンテナ型OS ◆ 高いセキュリティとアップデート機能を提供 NEW
  14. エッジAI対応の現実的な選択肢!! © Atmark Techno, Inc. p.15 ▪ 最新SoCのi.MX 8M Plusを採用

    ◆ NPU搭載(2.3TOPS)で高速に動作 ◆ NPUはTensorFlow Lite / Arm NNに対応 ▪ 普及価格帯で提供 ◆ 1個でも5万円以下(税込49,500円) ◆ ボリュームディスカウント可能 ▪ ファンレス/ヒートシンクレスで軽量 ◆ 耐環境性が高い(-20~+70℃) ▪ IoT機器向けの新OSで長期運用へ対応 ◆ Linuxベースのコンテナ型OS ◆ 高いセキュリティとアップデート機能を提供 NEW 2021年12月13日発売! ご注文お待ちしております
  15. 既存のエッジAIゲートウェイの課題 © Atmark Techno, Inc. p.18 ▪ Intel x86系CPUを搭載したもの ▪

    Arm/Intel SoCに外付けNPUを搭載したもの ▪ NVIDIA Jetsonモジュールを搭載したもの ▪ Raspberry Piをベースに拡張したもの 既存の選択肢 • NPU非搭載でAIの処理能力が足りない • NPU搭載だが高コストで量産しづらい • 巨大なヒートシンク(重量) or ファン搭載(寿命) • Debian/UbuntuのLinuxでは長期運用に耐えられない 課題 重要 Neural Processing Unit: AI処理向けのアクセラレータ
  16. 価格 © Atmark Techno, Inc. p.19 ▪ 開発セット:49,500円(税別:45,000円) ◆ Armadillo-IoTゲートウェイG4

    LANモデル開発セット ◆ 型番: AGX4500-C00D0 ◆ 内容物: 本体, ACアダプタ ▪ 量産品 ◆ 1pcs時: OPEN ◆ 30pcs以上でボリュームディスカウントあり ◆ ボード単体(筐体なし)でもディスカウントあり
  17. IoTゲートウェイ ラインナップ © Atmark Techno, Inc. p.20 Photo SoC RAM

    Storage Extensions Features G4 i.MX 8M Plus LTE Cat.4? Cortex-A53 1.6GHz×4 NPU:2.3TOPS 2GB 8GB USB3.0, LANx2, HDMI, (WLAN), GPIO/UART/SPI/I2C, etc ファンレス省電力 エッジAIゲートウェイ G3 i.MX7 Dual LTE Cat.4 Cortex-A7 1GHz×2 1GB 4GB USB2.0, LAN, (WLAN), (Add-on) Add-On拡張可能 柔軟ゲートウェイ G3L i.MX7 Dual LTE Cat.1 Cortex-A7 1GHz×2 512M/1GB 4GB USB2.0, LAN, RS485, (WLAN), (Wi-SUN) シンプル機能 小型ゲートウェイ A6 i.MX6ULL LTE Cat.M1 Cortex-A7 528MHz 512MB 4GB USB2.0, LAN, GPIO/UART/SPI/I2C 間欠動作可能な 省電力ゲートウェイ