Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
sakura.ioのアーキテクチャとネットワーク設計 / Architecture and ...
Search
chibiegg
November 28, 2018
Technology
0
1.1k
sakura.ioのアーキテクチャとネットワーク設計 / Architecture and network design of sakura.io
2018/11/28 Alternative Architecture DOJO Offline #1
chibiegg
November 28, 2018
Tweet
Share
More Decks by chibiegg
See All by chibiegg
コンフィデンシャルコンピューティングは本当に機密なのか?@ 2025-08-23 LOCAL Developer Day ’25 Security with 在札幌米国総領事館 / Confidential Computing Truly Confidential? @ 2025-08-23 LOCAL Developer Day ’25 Security with the U.S. Consulate General in Sapporo
chibiegg
0
11
パブリッククラウドにおける機密コンピューティング@さくらのTech Day 2024-11-12 / Confidential Computing in Public Cloud
chibiegg
0
310
tiupによるTiDBの構築 @ TiUG Meetup #3 Osaka / Building TiDB with TiUP
chibiegg
1
260
Stable Diffusionの使い方と追加学習によるLoRAの作成~GPUコンテナサービス “高火力 DOK” の活用~ @ 2024-06-29 OSC2024 Hokkaido / Stable Diffusion and Creating LoRA with Additional Training ~ with 'Koukaryoku DOK' ~
chibiegg
1
2.1k
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
3
1.7k
3年近くTiDBを使ってきた話 @ TiUG Kick Off #0 / My Journey with TiDB: Nearly Three Years On @ TiDB User Group Kick Off #0
chibiegg
4
1.3k
SDR (Software Defined Radio) を使った無線の解析 @ 2023-02-11 SECCON 電脳会議 2022 / Wireless Analyzing using SDR @ SECCON 2022
chibiegg
1
1.8k
分散DBを運用してみて〜TiDB の仕組みと実例〜 @ さくらの夕べ Tech Night #5 Online / About TiDB @ SAKURA internet Tech Nignt #5 Online
chibiegg
1
610
クラウドネイティブなデータベースTiDB の魅力@db tech showcase 2021 / PingCAP TiDB with SAKURA internet
chibiegg
1
470
Other Decks in Technology
See All in Technology
ユーザーの声とAI検証で進める、プロダクトディスカバリー
sansantech
PRO
1
130
ComposeではないコードをCompose化する case ビズリーチ / DroidKaigi 2025 koyasai
visional_engineering_and_design
0
100
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
140
Simplifying Cloud Native app testing across environments with Dapr and Microcks
salaboy
0
140
GoでもGUIアプリを作りたい!
kworkdev
PRO
0
130
[Keynote] What do you need to know about DevEx in 2025
salaboy
0
160
Uncle Bobの「プロフェッショナリズムへの期待」から学ぶプロの覚悟
nakasho
2
110
業務効率化をさらに加速させる、ノーコードツールとStep Functionsのハイブリッド化
smt7174
2
130
AWS 잘하는 개발자 되기 - AWS 시작하기: 클라우드 개념부터 IAM까지
kimjaewook
0
130
セキュアな認可付きリモートMCPサーバーをAWSマネージドサービスでつくろう! / Let's build an OAuth protected remote MCP server based on AWS managed services
kaminashi
3
290
BI ツールはもういらない?Amazon RedShift & MCP Server で試みる新しいデータ分析アプローチ
cdataj
0
100
後進育成のしくじり〜任せるスキルとリーダーシップの両立〜
matsu0228
7
3.2k
Featured
See All Featured
Designing Experiences People Love
moore
142
24k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Facilitating Awesome Meetings
lara
56
6.6k
Making Projects Easy
brettharned
119
6.4k
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Statistics for Hackers
jakevdp
799
220k
Speed Design
sergeychernyshev
32
1.2k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Transcript
sakura.ioのアーキテクチャとネットワーク設計 IoTプラットフォームにおけるマイクロサービスの事例 ©SAKURA Internet Inc. 2018/11/28 Alternative Architecture DOJO Offline
#1 @ Fukuoka Growth Next さくらインターネット株式会社 執⾏役員 技術推進統括担当 江草陽太
⾃⼰紹介 2 【所属等】 さくらインターネット株式会社 新卒⼊社4年⽬ 執⾏役員 技術推進統括担当 【開発】 • さくらのVPS
API/DB/制御システム担当 • sakura.io ハードウエア仕様、ファームウエア開発 システム設計、開発 インフラ設計、構築 • 社内システム/データセンター⾃動化 【その他】 • CSAJ U22プログラミングコンテスト審査員 • Home NOC Operatorsʼ Group (AS59105) @chibiegg
⾃⼰紹介 3 【経歴】 • ロボカップジュニア (中学・⾼校) / NHK⼤学ロボコン • ⼤阪⼤学⼯学部電⼦情報⼯学科情報通信⼯学専攻
• 個⼈事業主 • ⼤阪⼤学⼤学院⼯学研究科中退 • SECCON CTF 2014 国内4位 • ISUCON5/ISUSON7/ISUCON8本戦 • ICTSC7 ⼤⼈チーム 【専⾨】 • ソフトウエアエンジニア • NW/SC/DBスペシャリスト • 回路設計/組み込みソフトウエア 【趣味】 旅⾏/温泉/写真/電⼦⼯作/プログラミング/かわいい服 @chibiegg
さくらインターネットについて 4 商号 さくらインターネット株式会社(SAKURA Internet Inc.) 代表取締役 ⽥中 邦裕 設⽴
1999年8⽉17⽇(サービス開始︓1996年12⽉23⽇) 資本⾦ 22億5,692万円 事業内容 インターネットでのサーバの設置およびその管理業務 電気通信事業法に基づく電気通信事業 マルチメディアの企画並びに製作・販売 従業員数 495名(連結/2017年3⽉末) 所属団体 特定⾮営利活動法⼈ ⽇本データセンター協会(JDCC) 社団法⼈ コンピュータソフトウェア協会(CSAJ) 社団法⼈ ⽇本ネットワークインフォメーションセンター(JPNIC) 社団法⼈ インターネットプロバイダー協会(JAIPA) グループ会社 アイティーエム株式会社 https://www.itmanage.co.jp/ 株式会社S2i http://www.s2i.life/ ゲヒルン株式会社 https://www.gehirn.co.jp/ 株式会社Joeʼsクラウドコンピューティング https://joes.co.jp/ ビットスター株式会社 https://bitstar.jp/ 櫻花移動電信有限公司 ⼤阪本社 (梅⽥/⼤阪) 東京⽀社(⻄新宿) 福岡オフィス(⾚坂)
さくらインターネットの事業領域 5 新しい社会のインフラを⽀えながら、最先端のサービスを構築 レンタルサーバ VPS・クラウド(仮想化基盤) 専⽤サーバ・データセンター ハウジング リモートハウジング さくらのレンタルサーバ さくらのマネージドサーバ
新規サービス AI・⼈⼯知能 機械学習、データ解析、⾼精度シミュ レーション⽤途に特化したGPU搭載の 専⽤サーバサービス 通信モジュールから提供することで、セキュアな通信環境とデータの保存や処 理システムを⼀体型で提供するIoTプラットフォームサービス IoT コンテナ Dockerコンテナのマネージド サービスであり、コンテナを⼿ 軽かつシンプルに実⾏・運⽤ IoT お使いのデバイスを、SIMからさくらのクラウドのまでインターネットを経由せず、 安全に接続できるIoT向けモバイルサービス さくらのセキュアモバイルコネクト
6 さくらが考えるIoTソリューション
さくらインターネットの考えるIoTソリューション 7 1. どこでも、だれでも 2. ⾃分だけのネットワーク 3. ノーコミット&ノーリミット 4. 検証から、量産まで
5. 圧倒的コスパ
どこでも、だれでも LTEのメリット 1. ⾼いカバー率(島嶼、⼭間) 2. 移動体でも使⽤可能 3. 設定不要で繋がる 8 LTEなら最終利⽤者も⼿軽に利⽤できる
⾃分だけのネットワーク ⾃分だけのネットワーク 9 閉域網 インターネットからの 直接アクセス不可 デバイス⇔クラウド間のリスクポイントを削減 マルウェア ハッカー ボットネット
ノーコミット&ノーリミット 1 0 1. 契約期間縛り無し 2. 契約/解約⼿数料無し 3. 再登録が何度でも可能 4.
速度制限無し IoT⽤途での課題となる各種制約や上限を撤廃
さくらが提供するIoT向けサービス 1 1 プラットフォームの提供 モジュール+クラウドの⼀体提供で 開発スピードを向上、スケール対応や 運⽤保守はさくらで実施 専⽤モジュール (単体⽅式 or
ゲートウェイ⽅式) 基本機能 (つなぐ・貯める・連携する) セキュアモバイルコネクト IoT向けSIMの提供 デバイスからコンピューティング リソースにセキュアに接続できる モバイル回線 カード型SIM チップ型SIM
サービスの提供範囲 セキュアモバイルコネクト sakura.io デバイス センサ - - MCU - -
通信機構 - ◯ 回線(SIM) ◯ ◯ クラウド セキュリティ ◯ ◯ データの転送 - ◯ データの保管 - ◯ データの連携 - ◯ 1 2
さくらが提供するIoT向けサービス 1 3 プラットフォームの提供 モジュール+クラウドの⼀体提供で 開発スピードを向上、スケール対応や 運⽤保守はさくらで実施 専⽤モジュール (単体⽅式 or
ゲートウェイ⽅式) 基本機能 (つなぐ・貯める・連携する) セキュアモバイルコネクト IoT向けSIMの提供 デバイスからコンピューティング リソースにセキュアに接続できる モバイル回線 カード型SIM チップ型SIM
今⽇の話題 IoTプラットフォームであるsakura.ioを例に コンテナを使ったマイクロサービスと ネットワーク設計を紹介します 1 4
sakukra.ioプラットフォームの特徴 • エンドデバイスと外部サーバ間でのメッセージ交換が多い • 関連するネットワークがいくつかある • インターネット (The Internet) •
モバイル閉域網 • 社内ネットワーク • 細かい機能がたくさんある 1 5
サービス概要 1 6 etc… 組み込みとインターネットをつなぐサービス
sakura.ioが提供する価値 1 7 組み込み側はモノとの電気信号 / Web側はサービスとのJSONデータ のやり取りに注⼒可能
Webエンジニアの負担を軽減する設計 1 8 { "module": "XXXXXXXXX", "type": "channels", "datetime": "2016-06-01T12:21:11.628907163Z",
"payload": { "channels": [{ "channel": 1, "type": "i", "value": 1, "datetime": "2016-06- 01T10:21:11.628907163Z" }, { "channel": 2, … }] } } HTTP Request データ取出やデバイス制御はすべてJSONフォーマットで実施 既存システムや扱いに慣れたクラウドサービスとの接続も可能 リアルタイム連携 ⼀括連携 JSON形式
マイクロサービスの構成 1 9 管理システム 位置情報DB Outgoing Webhook 等 WebSocket 等
DataStore モジュールの認証等 連携先の情報 外部との接続の 認証認可 上りのメッセージ 下りのメッセージ 管理システムへのリクエスト
ネットワーク分離 2 0 管理システム 位置情報DB Outgoing Webhook 等 WebSocket 等
DataStore 社内ネットワーク 内部ネットワーク モバイル閉域網 インターネット
ネットワーク構成 2 1 端末向けコンテナ 内部処理コンテナ マスター モバイルバックボーン インターネット 社内ネットワーク
コンテナロードバランサ 2 2 /incoming/v1 /api/v1 ホスト名、パスに従ってコンテナにリバースプロキシ コンテナのバージョン更新時にはブルーグリーンデプロイやロールバックが可能 コンテナの変更通知 GSLB
コンテナロードバランサ 2 3 /api/v1 (new version) /incoming/v1 /api/v1 ホスト名、パスに従ってコンテナにリバースプロキシ コンテナのバージョン更新時にはブルーグリーンデプロイやロールバックが可能
コンテナの変更通知 GSLB
コンテナロードバランサ 2 4 /api/v1 /incoming/v1 /api/v1 (old version) ホスト名、パスに従ってコンテナにリバースプロキシ コンテナのバージョン更新時にはブルーグリーンデプロイやロールバックが可能
コンテナの変更通知 GSLB
コンテナロードバランサ 2 5 /api/v1 /incoming/v1 ホスト名、パスに従ってコンテナにリバースプロキシ コンテナのバージョン更新時にはブルーグリーンデプロイやロールバックが可能 コンテナの変更通知 GSLB
全体のまとめ • 処理機能毎にコンテナを分けマイクロサービス化 • APIやMQでコンテナ間を接続 • コンテナへのリバースプロキシを活⽤することで、ブルーグリー ンデプロイを実現 • 接続先に応じてネットワークを分離
• ⼀つのクラスタで⼀括管理 • 旧来の⽅が良いサーバは旧来⽅式でやる 2 6
よかったこと • 機能ごとに独⽴したコード、バイナリのため変更が容易 • クラスタ型のコンテナ管理に則れるため運⽤が容易 • Mesos + Marathonでもいいし •
k8sでもいい • 2年半以上前の設計だが、システム改修のネックがまだ出 てない 2 7
さくらが提供するIoT向けサービス 2 8 プラットフォームの提供 モジュール+クラウドの⼀体提供で 開発スピードを向上、スケール対応や 運⽤保守はさくらで実施 専⽤モジュール (単体⽅式 or
ゲートウェイ⽅式) 基本機能 (つなぐ・貯める・連携する) セキュアモバイルコネクト IoT向けSIMの提供 デバイスからコンピューティング リソースにセキュアに接続できる モバイル回線 カード型SIM チップ型SIM
マルチキャリア対応しました︕ 2 9 1枚のSIMで国内3キャリア同時利⽤可能︕
マルチキャリア対応しました︕ 3 0 コンパネから有効にするキャリアが選択できます