AWS を利 して IoT ビジネスを quick に ち上げる
紹介 梁川貴史 ( こやながわたかし ) パートナーソリューションアーキテクト 経歴 APN さまへの技術 援とくに IoT 向け アーキテクチャの検討 援やレビューなど 電機メーカーにて 社 Web サービスの設計から運 まで経験 AWS のユーザとして 4 年半 開発 運 を経験 好きなサービス AWS IoT Amazon Kinesis AWS Lambda
Amazonのノベーション https://www.youtube.com/watch?v=fqn6afqwbqu Amazon Robotics Amazon Echo Amazon PrimeAir Amazon Dash button
Amazon のクラウドの考え 初期投資不要完全従量課 柔軟なキャパシティ 市場投 スピードセキュアグローバル展開 柔軟なインフラリソースを いつでも 誰でも 安く に れることができる
AWS グローバルネットワーク 16 のリージョン 1. US EAST (Virginia) 2. US EAST2 (Ohaio) 3. US WEST (N. California) 4. US WEST 2 (Oregon) 5. EU WEST (Ireland) 6. Canada 7. JAPAN (Tokyo) 8. South America (Sao Paulo) 9. ASP 1 (Singapore) 10.ASP 2 (Sydney) 11.GovCloud 12.BJS 1 (Beijing China) limited 13.EU (Frankfurt) 14.London 15.Seoul(korea) 16.Mubai(India) 16 Regions ( 地域 ) 47 Availability Zones( データセンター群 ) 72 か所のエッジロケーション パリ 寧夏 ストックホルム計画中
2018 年 阪ローカルリージョン開設予定 AWS のローカルリージョンは 旧来の単 データセンターのインフラ設計とは全く異なる 耐障害性の い単 のデータセンター ローカルリージョンに適した 途 国内 DR 対策のバックアップ先 本国内で 3-AZ が必須なお客様の 3-AZ 以下のケースの場合は 従来通り海外の region をご検討頂くほうがよい海外 region へのデータ転送 / 保管に抵抗がない Tokyo region での重 障害が発 した場合でもサービス継続が必要 https://aws.amazon.com/jp/blogs/news/new-osaka-local-region-coming-in-2018/
世界中に広がる AWS の拠点 AZ 間は AWS の専 線で接続 AZ 間はほぼ 1ms 以下のレイテンシー AZ Transit 1 データセンターあたり 5 万台以上のサーバデータセンター間は AWS の専 線で接続 AZ AZ AZ AZ Transit
世界中に広がる AWS の拠点 AZ 間は AWS の専 線で接続 AZ 間はほぼ 1ms 以下のレイテンシー 収集されるデータのロケーションはお客様が選択 Transit AZ データは配置されたリージョンから許可なく他 AZ AZ AZ リージョンへコピーされない 1データセンターあたり5 万台以上のサーバデータセンター間はAWSの専 線で接続 AZ むしろ DR 的であえて 動でコピーする設定を うことも可能 Transit
Enterprise Applications Virtual Desktop Sharing & Collaboration Analytics App Services Deployment & Management Mobile Services Platform Services Hadoop Queuing & Notifications One-click web app deployment Workflow Real-time Streaming Data App streaming Dev/ops resource management Data Transcoding 90 Warehouse を超えるクラウドサービスを提供 Email Data Resource Pipelines Search Templates Identity サーバー ストレージ DB から アプリケーションまで Sync Mobile Analytics Push Notifications Administration & Security Identity Management Access Control Usage Auditing Key Storage Monitoring And Logs Core Services Compute (VMs, Auto-scaling and Load Balancing) Storage (Object, Block and Archival) CDN Databases (Relational, NoSQL, Caching) Networking (VPC, DX, DNS) Infrastructure Regions Availability Zones Points of Presence
本 のKey word Serverless IoT Security
Quick な環境構築のためにマネージド サービスを積極的に利 する
Quick に?? インフラの構築 プログラム開発時間 運 後のメンテナンスの考慮
オンプレミス EC2+ ミドルウェア マネージドサービスの 較 アプリからの利 スケーラビリティ 可 性 バックアップ ミドルウェアのパッチ ミドルウェアの導 OS のパッチ OS の導 サーバメンテナンス ラック導 管理 電源 ネットワーク アプリからの利 スケーラビリティ 可 性 バックアップ ミドルウェアのパッチ ミドルウェアの導 OS のパッチ OS の導 サーバメンテナンス ラック導 管理 電源 ネットワーク アプリからの利 スケーラビリティ 可 性 バックアップ ミドルウェアのパッチ ミドルウェアの導 OS のパッチ OS の導 サーバメンテナンス ラック導 管理 電源 ネットワーク オンプレミス ミドルウェアon EC2 AWS IoT, RDS 等 マネージドサービス 13 お客様がご担当する作業 AWS が提供するマネージド機能
サーバレス 14
サーバレス サーバについて考慮すべきことが減り アプリケーションをビルド実 していくこと 15
サーバレスユースケース 16
サーバレスの使い所 Restで定義できる トランザクションが不要 同期処理が許容できる 最 5 分の実 時間制約が許容できる 従来のアーキテクチャの考え とは違う考え 既存から移 する際に 現 アーキテクチャに引きずられずにサーバレスで考え直すことも重要 17
直列処理から並列処理へ 画像処理を 速化するため 最初は 64 コア程度のスペックのサーバーを新たに 意し 処理するスレッド数を増やすことが検討されました 1 回の処理速度を速くするよりも 処理の並列度を上げるほうが効果的だと考えたからです 18 https://aws.amazon.com/jp/solutions/case-studies/square-enix/
同時実 数 関数の平均実 時間 : 3s / exec 秒間リクエスト : 10 req/sec 1s 2s 3s 4s 5s 19 同時実 数 = 同時 に実 されているタイミング
同時実 数 - ストリームベースの場合 ストリーム シャード 1 シャード 2 同時実 数 シャード 3 20
IoT 21
AWS IoT 認証と認可 ルールエンジン AWS サービス - - - - - その他のサービス デバイス SDK デバイスゲートウェイ デバイスシャドウ アプリケーション デバイスレジストリ 22 AWS IoT API
ルールエンジン { color = red } シンプル & 慣れた構 SQL を使ったトピックのフィルタ オプションの WHERE 句で条件を記述することが可能 JSON サポート SELECT * FROM ʻthings/thing-2/colorʼ WHERE color = ʻredʼ 23 SELECT Data FROM topic WHERE 条件 メッセージ変換機能 字列操作 ( 正規表現サポート ) 算術計算 コンテキストベースのヘルパー 暗号 UUID, Timestamp, 乱数など.
便利な機能がいろいろ ルールエンジンとアクション デバイスシャドー SQL ライクな構 でルールの設定ルールに合致した場合 AWS の各種サービスとのインテグレーション デバイスが物理的に接続されてなくてもコマンドを伝達できる 24 デバイスとクラウドとの相互認証 TLS1.2 を いた相互認証証明書に対するポリシ設定も可能 デバイスレジストリ 多くのデバイスを管理 Key-Value 形式でファームバージョンなどの属性情報も管理可能
25
ローカルで処理することの価値 26 物理法則 通信速度 Latency 経済の法則 データを保管するコスト 回線敷設のコスト 法律 ( 決まり ) 期間の保管
Amazon Kinesis Streams 量でかつ連続したセンサーデータを信頼性 く格納し 低レイテンシーでデータ処理に伝送が可能 Data Sources Data Sources Data Sources AWS Endpoint データ INPUT Amazon Kinesis Availability Zone Availability Zone Shard 1 データ保持 Shard 2 Shard N Availability Zone データ OUTPUT App.1 [Aggregate & De-Duplicate] 各種処理 App.3 [Sliding Window Analysis] S3 Redshift 27 低レイテンシー 信頼性 (3AZ, 7days) 容易なインテグレーション Pluggable アーキテクチャ
Amazon S3(Simple Storage Service) センサーデータを耐久性が く低コストなクラウドストレージに格納 データ処理などのデータハブに API S3 データを 動複製 1 データを3つ以上のデータセンターに 動複製設計上のデータ耐久性は 99.999999999% 1GByteあたり 額 $0.033 - 容量は無制限 28 Tokyo リージョン
データ送受信 (Ingest) AWS IoT Amazon Kinesis Amazon S3 ペイロード 1 メッセージあたり 128KB 1 レコードあたり 1MB 1 オブジェクトあたり 5TB プロトコル MQTTS/HTTPS /Websocket HTTPS HTTPS 料 512Byte を 1 メッセージとして $8/ 百万メッセージ 1 シャード $0.0195/ 時ペイロードユニットを 25KB として $0.0215/ 百万ペイロード (Streams) $0.025/GB( 最初の 50TB, ) 認証 クライアント証明書 SigV4 SigV4 SigV4 使いどころ 29 ペイロードが さく送信頻度も低いデバイスとクラウド間の双 向通信が必要 いセキュリティを求められる ペイロードが きく 送信頻度が い メディアなどデータサイズが きい場合 ファイル単位でデータを扱う場合
Amazon S3 を中 としたデータレイクを構成 Transactional Data Data Sources Amazon Kinesis Streams & Firehose Amazon DynamoDB & ElastiCache NoSQL DB & Redis Any Open Source Tool of Choice on EC2 Amazon Aurora Relational Database Amazon S3 Data Lake Amazon Machine Learning Machine Learning Amazon Athena Clusterless SQL Query Amazon Redshift Data Warehouse Amazon EMR Hadoop / Spark 30
セキュリティ 31
AWS CloudTrail AWS 上の API 操作を記録するサービス AWS CloudTrail サポートサービス 覧 http://docs.aws.amazon.com/ja_jp/awscloudtrail/latest/userguide/w hat_is_cloud_trail_supported_services.html 32 特徴 (http://aws.amazon.com/jp/cloudtrail/ AWS マネジメントコンソール コマンドライン サードパーティ製品等 AWS API の呼び出しを記録 セキュリティの分析 リソース変更の追跡 およびコンプライアンスの監査に利 価格体系 (http://aws.amazon.com/jp/cloudfront/pricing/) AWS CloudTrail 体の料 は無料 Amazon S3 Amazon SNSの標準の使 料 が必要
すべてのレイヤーでセキュリティを確保 アクセス管理 AWS アカウント IAM ユーザーの管理 AWS リソースへのアクセス制御 ( 最 権限の原則を順守可能 ) IAM 権限管理 データ暗号化 Cloudtrail 保管するデータの暗号化 S3 や EBS RDS といったストレージサービス上のデータを暗号化 Public Segment サブネット 外部からアクセスできるサブネットと 外部からはアクセスできないサブネットの作成 Private Segment (Web) NAT NAT Public Subnet (DMZ) Public Subnet (DMZ) Web Web Web Web Private Subnet Private Subnet 操作ログ Cloudwatch リソース監視 AWS 操作ログ AWS 操作ログの取得 ( 管理コンソールや CLI 含む ) AWS サービス監視 各種 AWS サービス (ELB RDS EC2 等 ) のリソース監視 ネットワークアクセス制御 SecurityGroup 及びNetwork ACLを使ってアクセス制御を実 施 Private Segment (DB) Lo g Private Subnet Availability Zone Private Subnet Availability Zone 通知 33 詳細 : http://www.slideshare.net/amazonwebservicesjapan/awswebinar-aws-56260969
まとめ マネージドサービスを利 する意味を理解 ビジネス価値を産まない部分での利 アプリケーション開発 / 運 の速度を上げる / 楽にするための選択 開発後の運 フェーズでも楽をする 34