時代を見据えたiotプラットフォーム soracomのアーキテク … · 2020-04-13 ·...

Post on 19-Jul-2020

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

T O K Y O

20

19

.10

.03

-0

4

5G時代を見据えたIoTプラットフォームSORACOMのアーキテクチャへの挑戦

川上大喜 (@moznion)エンジニア株式会社ソラコム

A - 3

川上大喜

Taiki Kawakami

(@moznion / moz)

株式会社ソラコムエンジニア

世界中のヒトとモノをつなげ

共鳴する社会へ

無人コンビニのクラウドとのリアルタイム連携にSORACOM

無人コンビニ内の商品の状態管理や購買時の決済および、ソフトウェアの更新を実現

お客様事例: 600様

お客様事例: ふくや様

SORACOM Harvest やSORACOM Lagoon でサーバの準備なくデータの可視化・通知を実現

専用機器で毎日明太子の消費量を送信、なくなる前に自動でお届け※福岡限定でサービス開始

協力パートナー:メカトラックス

IoTによるビジネスの変化

視えていなかった “コト”を

視えるように視えた “コト” を

集めて活かす

• 明太子の残量

• カートリッジの状況

• 在庫状況の把握

• 注文の自動化、最適化➢ 新たな顧客価値

• 交換管理のサービス化➢ 既存ビジネスの強化

• ロスの最小化➢ 労働力の代替

IoTによるビジネスの変化

視えていなかった “コト”を

視えるように視えた “コト” を

集めて活かす

• 明太子の残量

• カートリッジの状況

• 在庫状況の把握

• 注文の自動化、最適化➢ 新たな顧客価値

• 交換管理のサービス化➢ 既存ビジネスの強化

• ロスの最小化➢ 労働力の代替

デバイス

センサー

データ

変換通信

データ

収集

可視化

通知

デバイス管理

省電力セキュリティ

クラウド

連携

遠隔管理

SORACOMは「つなぐ」

視えていなかった “コト”を

視えるように視えた “コト” を

集めて活かす

• 明太子の残量

• カートリッジの状況

• 在庫状況の把握

• 注文の自動化、最適化➢ 新たな顧客価値

• 交換管理のサービス化➢ 既存ビジネスの強化

• ロスの最小化➢ 労働力の代替

IoT 向け通信 クラウド連携

セキュリティ閉域網

あらゆる現場を繋げるコネクティビティ

IoT 向けデータ通信

SORACOM Air

セルラー LPWA

2G / 3G / LTE LTE-M LoRaWANSigfox

130を超える国と地域でつながるIoT SIM

SORACOMプラットフォーム概観

SO

RA

CO

M G

lob

al P

latf

orm

ライブラリ & SDKs

CLI(Go), Ruby, Swift

Web インターフェース

User Console

データ転送支援

SORACOM Beamクラウドアダプタ

SORACOM Funnel

データ収集・蓄積

SORACOM Harvest

プライベート接続

SORACOM Canal

IoT向けデータ通信

SORACOM Air for Cellular (2G, 3G, LTE) / LPWA (LoRaWAN, Sigfox, LTE-M)

専用線接続

SORACOM Direct仮想専用線

SORACOM Door

API

Web API

Sandbox

コネクティビティ

ネットワーク

インタフェース

SIM認証・証明

SORACOM Endorseデバイス管理

SORACOM Inventory

透過型トラフィック処理

SORACOM Junction

ダッシュボード作成/共有

SORACOM Lagoon

セキュアプロビジョニング

SORACOM Krypton

アクセス権限管理

SORACOM Access

Management

アプリケーション

デバイスLAN

SORACOM Gate

開発者サポート

Developer Support

USBドングル / セルラーモジュール / マイコンモジュール / ボタンデバイス

オンデマンドリモートアクセス

SORACOM Napter

クラウドファンクション

SORACOM Funk

エッジプロセッシング

SORACOM Mosaic

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

プラットフォームの構成要素

Dipper回線・セッション管理

認証

課金

イベント通知

API

コンソール

Polarisパケット転送

帯域制御

アクセス制御

アプリケーションサービス

Hubble監視・デプロイ

IoTDevices

CellularSessionMgmt

Authentication& Authorization

Billing

API Gateway

API

API

Polaris:分散システム上に構築

されたセルラーコアインターフェース

MNO

AWSDirect

Connect

Dipper: Polarisと連携して動作する外部向けマイクロサービス郡

HLR/HSS, SMSC

GGSN/PGW

GTP

SIGTRAN/Diameter

Amazon S3

AmazonCloudFront

DeviceMgmt

VPC

VPC

VPC

AmazonSQS

プラットフォームアーキテクチャ

AWS上にプラットフォームを構築する利点

スケールアウト・スケールアップ容易な環境アップデートも容易

かつてはハードウェアを意識した上でのアップグレードが必須だった

高可用な環境構築が容易複数のAvailability Zoneにサービス展開が可能

AWSの提供するサービスにより高速な開発が可能必要十分な部品が揃っている

マルチリージョンでのサービス構築が容易あるAWS拠点にある設備と同一の設備を他の拠点へと複製が簡単にできる

リージョン間の協調動作をさせることもできる

これによるLocal Break Out (LBO) の実現

スケールアウト容易な設計

Availability Zone

Availability Zone

スケールアウト容易な設計

Availability Zone

Availability Zone

Horizontal Scalability負荷に応じてサーバ台数を増やす

スケールアウト容易な設計

Availability Zone

Availability Zone

Horizontal Scalability負荷に応じてサーバ台数を増やす

Built-in ResilienceSPOFの無い構成

障害箇所を自動で置き換え

デバイスをクラウドになめらかにつなぐ

PublicEndpoints

SORACOM Beam

• SORACOMにデータを貯める・可視化する→ SORACOM Harvest

•クラウドサービスにデータを届ける→ SORACOM Funnel/Funk

•パブリックなエンドポイントにセキュアにつなぐ→ SORACOM Beam

SORACOM Harvest

Simple, Low overhead protocols- TCP / UDP raw socket- HTTP, MQTT- LoRaWAN, Sigfox

Secure, Full fledged protocols- TCP over TLS- HTTPS, MQTTS

Secure link

SORACOM Air enables

SORACOM Funnel/Funk

Amazon Kinesis Family

AWS IoT Core

AWS Lambda

Queue + Serverless Architecture

data

ServiceComponent

Buffer

Processor

ResourceEvent

デバイスとサーバを閉域網で接続する

The Internet

VPG IoT backend

AWS VPC

Virtual Private Gateway (VPG) peers with your IoT backend

ソラコムではお客様のAWS VPC, もしくは専用のネットワークとセルラーネットワークを閉域網で接続することができる。

デバイスからのデータを完全閉域でお客様サーバーまで伝送可能

Virtual Private Gateway (VPG)

お客様専用の仮想的なゲートウェイお客様ネットワークとセルラーネットワークを閉域網でピアリングできるコンポーネント

もちろんAWS上に構築されている

Multi-AZ構成

専用ゲートウェイをクラウドリソースを利用して構築可能

それも必要に応じて即時的に

The Internet

VPG IoT backend

AWS VPC

Virtual Private Gateway (VPG) peers with your IoT backend

IoTDevices

CellularSessionMgmt

Authentication& Authorization

Billing

API Gateway

API

API

Polaris:分散システム上に構築

されたセルラーコアインターフェース

MNO

AWSDirect

Connect

Dipper: Polarisと連携して動作する外部向けマイクロサービス郡

HLR/HSS, SMSC

GGSN/PGW

GTP

SIGTRAN/Diameter

Amazon S3

AmazonCloudFront

DeviceMgmt

VPC

VPC

VPC

AmazonSQS

プラットフォームアーキテクチャ

IoTDevices

CellularSessionMgmt

Authentication& Authorization

Billing

API Gateway

API

API

Polaris:分散システム上に構築

されたセルラーコアインターフェース

MNO

AWSDirect

Connect

Dipper: Polarisと連携して動作する外部向けマイクロサービス郡

HLR/HSS, SMSC

GGSN/PGW

GTP

SIGTRAN/Diameter

Amazon S3

AmazonCloudFront

DeviceMgmt

VPC

VPC

VPC

AmazonSQS

プラットフォームアーキテクチャ

DynamoDBをHubにしたデータフロー

ServiceComponent

DynamoDB Streamsdata produce

DynamoDB Streams

IoTDevices

CellularSessionMgmt

Authentication& Authorization

Billing

API Gateway

API

API

Polaris:分散システム上に構築

されたセルラーコアインターフェース

MNO

AWSDirect

Connect

Dipper: Polarisと連携して動作する外部向けマイクロサービス郡

HLR/HSS, SMSC

GGSN/PGW

GTP

SIGTRAN/Diameter

Amazon S3

AmazonCloudFront

DeviceMgmt

VPC

VPC

VPC

AmazonSQS

プラットフォームアーキテクチャ

SORACOMプラットフォーム概観

SO

RA

CO

M G

lob

al P

latf

orm

ライブラリ & SDKs

CLI(Go), Ruby, Swift

Web インターフェース

User Console

データ転送支援

SORACOM Beamクラウドアダプタ

SORACOM Funnel

データ収集・蓄積

SORACOM Harvest

プライベート接続

SORACOM Canal

IoT向けデータ通信

SORACOM Air for Cellular (2G, 3G, LTE) / LPWA (LoRaWAN, Sigfox, LTE-M)

専用線接続

SORACOM Direct仮想専用線

SORACOM Door

API

Web API

Sandbox

コネクティビティ

ネットワーク

インタフェース

SIM認証・証明

SORACOM Endorseデバイス管理

SORACOM Inventory

透過型トラフィック処理

SORACOM Junction

ダッシュボード作成/共有

SORACOM Lagoon

セキュアプロビジョニング

SORACOM Krypton

アクセス権限管理

SORACOM Access

Management

アプリケーション

デバイスLAN

SORACOM Gate

開発者サポート

Developer Support

USBドングル / セルラーモジュール / マイコンモジュール / ボタンデバイス

オンデマンドリモートアクセス

SORACOM Napter

クラウドファンクション

SORACOM Funk

エッジプロセッシング

SORACOM Mosaic

API Centricかつmicroservicesな設計

API Centricコンポーネント間の同期通信はOver HTTPなAPI呼び出しで行う

非同期的な通信は前述のbufferを用いたコミュニケーションを行う

外部 (ユーザ) に提供するAPIと基本的に同じものを使ってシステムを構築

microservicesサービスがコンポーネントレベルで分離している

密結合よりも疎結合を選ぶ

Conwayの法則

「システム設計は組織構造を反映したものになる」

「プライマリオーナー」という考え方

短いリリースサイクルと運用の方針

リリースサイクル開発の1イテレーションを2週間で回している

1イテレーションに最低1つのリリースを行っている

現在50+イテレーション連続でリリース継続中!

運用各コンポーネントには「プライマリオーナー」がいる

プライマリオーナーはオーナーシップを持ってコンポーネントの開発・メンテ・運用に携わる

AWSサービスの組み合わせによる "てこ" を使うことで開発・運用コストを低く

開発者は全員がDevOpsを実践している

開発はもちろん運用の責務も追う

一方で運用寄りのエンジニアもサービス運用には必要 => OpsDev

OpsDevの思想

OpsDev?DevOpsの対となるロール

DevOps: 開発を主としつつオペレーションもする

OpsDev: オペレーションを主としつつオペレーションのための開発もする

オペレーションのための開発運用作業省力化のための開発

監視の効率化

復旧作業・繰り返し作業の自動化

"開発しっぱなし => 運用でカバー" による負債を貯まらないようにする

Development squadの導入

SORACOMの組織はフラットな構造エンジニアリングチームには明確なチームが存在しない

全員がプラットフォームの開発・運用をする

とはいえタスクはある程度似通ってくる

似ているタスクに携わるエンジニアどうしでsquad (分隊) を組織

SquadのうごきSquad Leaderの方針に従ってマクロな課題の解決方針を立てる

Squadのメンバーは全員でそのタスクに手分けして取り組む

とはいえ頑固なチームとは少し違う

チームどうしで気軽にリソースを融通しあえる

結果として重要なのはエンジニアリングチームでの成果 => プラットフォームの進歩

アンドン (andon) のアプローチ

なにかおかしいと思ったら`andon` と呼ばれるSlack channelに書き込む

「XXXがおかしいんですが、もしかしたらユーザーに影響があるかも」

andonが引かれたらエンジニアは最優先で現状確認

不具合が確認されたらそのままトラブルシューティングへ移行

内製のchat botによるトラブルシューティングのサポート

もちろん機械による監視がある前提本質的にサービスのヘルスチェックは機械が行うべき

しかし取りこぼしも起きる => そういう状況に遭遇した場合は積極的に報告しようという方針

問題解決後はLSE (報告書) を用いた振り返りをする

それに従って監視や運用の改善を行い、今後に備えるという姿勢

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

ボタンデバイス

LTE-Mpush event invoke

LTE-Mpush event

SORACOM Beam

SORACOM Funnel

SORACOM Harvest SORACOM Lagoon

transfer

transfer

Visualize

任意のエンドポイント

クラウドサービス

ボタンデバイス

低消費電力なLTE-Mを用いたボタンデバイスボタンが押されるとそのイベントがLTE-M網を介してソラコムプラットフォームへ送られる

プラットフォームから先は色々な宛先い向けて転送できる

"クラウドネイティブ"なデバイスクラウド技術を前提にした新しいアプローチ

ソフトウェア先行型のハードウェア

従来の方向とは逆向きの発想

Private LTE

Private LTENetwork

Private LTE基地局

VPN

Private LTE

プライベートな基地局 (eNodeB) を所有してデバイスを接続するデバイスはコアネットワーク側の認証情報 (加入者情報) が利用できる

セキュアな認証方法を利用できる

社内Wi-Fiのオルタナティブとして使える

無線のコネクティビティが無い場所でも利用できる

すでに回線加入していればシームレスに使える

Local Break Out (LBO)

21世紀における問題意識光の速度には限界がある

神様の実装ミス

地理的な距離の隔たりがそのままレイテンシになる

どのように解決するか?距離を近づける

基地局とコアネットワーク設備を近づける

例)

日本の基地局からの通信は日本のコアネットワーク設備に向ける

アメリカの基地局からの通信はアメリカのコアネットワーク設備に向ける

CDNなどの文脈で語られることが多くなった話題

Local Break Out (LBO)

ランデブーポイントドイツ

Local Break Out (LBO)

ランデブーポイント米国

ランデブーポイント日本 日本や米国でIoT SIMを利用しても、

大きな遅延が発生しない!

ランデブーポイントドイツ

Local Break Out (LBO)

実現性AWS上にコアネットワークを構築している強み

AWSの拠点さえあれば技術的には簡単に複製が可能

AWS拠点が増えれば増えるほどうれしい!!

現在日本のリージョンとアメリカのリージョンにコアネットワークを構築

ドメスティックからのアクセスのネットワークレイテンシが低減

5G!

10年ぶりの新世代通信規格リッチなユーザー体験

広帯域

低遅延

これらの特徴を活かしたIoTの適用範囲の広がり

スマートファクトリー

コネクテッドカー

などなど……

5Gサービス状況

各国の動き日本: 2020年サービス提供開始

アメリカ: 2019年スマートフォンに対するサービス提供開始

中国: 2019年仮商用提供開始,2020年商用化

EU:

イギリス・フランス・イタリア: 2019年商用化

他諸国: 2020年商用化

2019年・2020年がターニングポイント!

既存のLTEと将来の5Gのコアネットワーク像

EPC (LTE) 5GC (5G)

LDAP, etc

Diameter

GTPv2

DiameterGTP

S1APNAS

GTPv1

PFCPNGAPNAS

GTPv1

PFCP

(出典: TS 23.501)

既存のLTEと将来の5Gのコアネットワーク像

EPC (LTE) 5GC (5G)

LDAP, etc

Diameter

GTPv2

DiameterGTP

S1APNAS

GTPv1

PFCPNGAPNAS

GTPv1

PFCP

HTTP/2(QUIC + UDP?)

(出典: TS 23.501)

既存のLTEと将来の5Gのコアネットワーク像

プロトコルLTE: 様々なプロトコルが混在

5G: プロトコルは混在しているものの大半はHTTP/2に統一

現在のSORACOMプラットフォームLTEネットワークをOver HTTP + AWS nativeに構築している

5Gネットワークのアーキテクチャを先取り!!

5Gのコアネットワークの特徴

4G (EPC) 5G (5GC)

システム構成 Monolithic Microservices

接続トポロジ メッシュ型 バス型

コンテキスト ステートフル ステートレス

5Gのコアネットワークの特徴

4G (EPC) 5G (5GC)

システム構成 Monolithic Microservices

接続トポロジ メッシュ型 バス型

コンテキスト ステートフル ステートレス

5Gの大容量通信とネットワークスライス

5Gといえば?広帯域

低遅延

*ネットワークスライス*

ネットワークスライス?回線の用途に合わせて、ネットワークを仮想的に分割し、それぞれに適したキャパシティのネットワークを効率的に提供する機能

例えば:

スマホでTwitterしたい: 既存のブロードバンドスライス

夏フェスの4K映像を配信したい: 今までよりも低遅延かつ広帯域なネットワークのスライス

IoTデバイスからのセンサデータを送信したい: 省機能ながらも高安定性のネットワークスライス

などなど

5Gの大容量通信とネットワークスライス

5Gといえば?広帯域

低遅延

*ネットワークスライス*

ネットワークスライス?回線の用途に合わせて、ネットワークを仮想的に分割し、それぞれに適したキャパシティのネットワークを効率的に提供する機能

例えば:

スマホでTwitterしたい: 既存のブロードバンドスライス

夏フェスの4K映像を配信したい: 今までよりも低遅延かつ広帯域なネットワークのスライス

IoTデバイスからのセンサデータを送信したい: 省機能ながらも高安定性のネットワークスライス

などなど

5Gの大容量通信とネットワークスライス

ネットワーク

5Gの大容量通信とネットワークスライス

ネットワーク

5Gの大容量通信とネットワークスライス

ネットワーク

5Gの大容量通信とネットワークスライス

ネットワーク

5GCのアーキテクチャへの挑戦

Well-Knownなプロトコル (HTTP/2) によるステートレスな機器間通信以下との親和性の高まり

Microservices

コンテナ

クラウド上へのシステム構築に対するアフォーダンス

事実3gppもそれを意識している様子

5GCのアーキテクチャへの挑戦

仮想化の機運の高まり機能要件 (スライス) としての仮想 (コンテナ) 化

明確な「境界づけられたコンテキスト」に基づいたアプリケーションのコンテナ化

コンテナ化によるビルド・デプロイ・開発/本番一致・廃棄容易性の著しい改善

Kubernetesに代表されるContainer Orchestrationシステムの利用可能性

宣言的設定による自律的なコンテナをベースとしたシステム運用

Amazon EKSの活用を模索

5GCのアーキテクチャへの挑戦

5GCの高機能化によるシステムの複雑性の上昇LTEネットワークの時点で十分複雑だったのだが……

5Gでは更に要求される機能は高度化・複雑化している

一方アーキテクチャやプロトコルを見るとシンプルになっているように見える

モダンなインターネット技術の転用により複雑な機能と戦える

クラウド上へセルラーネットワークを構築するのは今後普通になるとはいえセルラーの文脈から完全に抜けることは不可能

いわゆるWebアプリケーションのように作れるかというと……

セルラー仕草とクラウド仕草を兼ね備えた設計が求められる

現在までAWS上にLTEネットワークを構築してきた知見を存分に活用

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

むすび

AWS上にコアネットワークを構築してサービス提供をしてきた柔軟性・自由度の高いネットワークシステムの構築に成功

クラウド技術を活用した機能がコアコンピタンスに

AWSの提供するサービスの組み合わせによりレバレッジが効く

開発・運用の省力化に寄与

新機能・新技術の開発5GやPrivate LTEなどセルラー界における新技術は目白押し

実装すべきこと・ものは大量にある

それらは確実にクラウドの文脈に寄ってきている => やってきたことは正解

今後もAWSのパワーを使ってプラットフォームの発展を進めていく

ひいてはプラットフォームの進歩がお客様のIoTビジネスの推進力になるように

https://hello.soracom.jp

《午前》

ビジネス向けトラック• IoT 最新事例• ビジネス構築の課題と解決策

《午後》

エンジニア向けトラック• IoT システム基礎と活用方法• クラウド連携、デバイス管理、

IoT セキュリティ対策

HelloSORACOM

はじめよう、IoTの第一歩

《東京》神田明神ホール11/19 (火) 10:00 ~ 18:00

《大阪》阪急うめだホール10/24 (木) 10:30 ~ 18:00

《参加無料》

世界中のヒトとモノをつなげ

共鳴する社会へ

Thank you!

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

川上大喜 (@moznion)エンジニア株式会社ソラコム

© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

top related