Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

AWS로 연결하는 사물인터넷의 세계 :: 이경수 :: AWS Summit Seoul 2016

2,952 views

Published on

5월 17일 서울COEX에서 열린 AWS Summit Seoul 2016에서 이경수 솔루션즈 아키텍트님이 발표하신 "AWS로 연결하는 사물인터넷의 세계" 발표자료입니다.

Published in: Technology
  • Be the first to comment

AWS로 연결하는 사물인터넷의 세계 :: 이경수 :: AWS Summit Seoul 2016

  1. 1. © 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 이경수 | 솔루션즈 아키텍트 2016년 05월 17일 AWS로 연결하는 사물인터넷의 세계 AWS IoT
  2. 2. 사물과 클라우드의 연결은 전 산업분야의 화두 헬스케어 및 생명과학 공공 및 인프라 스마트홈 유통 생산, 물류, 공급사슬 농업 교육 자동차
  3. 3. 사물을 연결하기 위한 필요 요건들 다양한 SDK 및 도구 프로토콜 확장성 & 노이즈/신호 보안 & 관리 클라우드, 모바일 앱 또는 분석 기반의 통합
  4. 4. …and more 기존 AWS 서비스 기반 IoT 구현 사례 AWS Lambda 이벤트에 대한 응답으로 코드실행 Amazon DynamoDB 관리형 NoSQL 데이타베이스 Amazon Kinesis 실시간 스트리밍 데이타 작업 Amazon API Gateway API 구축, 배포, 관리 Amazon SNS 푸쉬 알람 서비스 Amazon Redshift 빠르고 간단하며 비용 효과적인 데이터웨어하우스 Amazon Cognito 사용자 자격 증명 및 앱 데이타 동기화
  5. 5. AWS IoT는 IoT구현을 쉽고 빠르게 가속화합니다 AWS IoT 디바이스를 클라우드에 연결 …and more AWS Lambda 이벤트에 대한 응답으로 코드실행 Amazon DynamoDB 관리형 NoSQL 데이타베이스 Amazon Kinesis 실시간 스트리밍 데이타 작업 Amazon API Gateway API 구축, 배포, 관리 Amazon SNS 푸쉬 알람 서비스 Amazon Redshift 빠르고 간단하며 비용 효과적인 데이터웨어하우스 Amazon Cognito 사용자 자격 증명 및 앱 데이타 동기화
  6. 6. AWS IoT “하나 또는 수백억개의 사물을 안전하게 연결하여 어플리케이션과 사물간에 상호작용할 수 있게 합니다”
  7. 7. AWS IoT 디바이스 게이트웨이 인증 및 보안 정책 룰 엔진 섀도(shadow) 레지스트리 완전 관리형 서비스 Seamless한 AWS 서비스들과 연결
  8. 8. 디바이스 SDK 연결, 인증, 메시지 통신을 위한 클라이언트 라이브러리 세트 디바이스 게이트웨이 MQTT 및 HTTP를 통해 디바이스와 통신 룰 엔진 룰 기반으로 메시지를 변형하고 AWS 서비스로 라우팅 AWS 서비스 모든 AWS서비스에 메시지 전달 가능 디바이스 섀도 간혈적 통신에서도 사물의 상태 확보 애플리케이션 애플리케이션은 제공된 api를 통해서 언제든지 쉐도우에 연결 가능 레지스트리 사물에 대한 ID관리 인증 및 인가 상호 인증 및 암호화로 보안 강화 AWS IoT
  9. 9. 디바이스 메시징
  10. 10. AWS IoT 디바이스 게이트웨이 디바이스 게이트웨이 MQTT 및 HTTP를 통해 디바이스와 통신
  11. 11. Publish / Subscribe 라우팅 표준 프로토콜 지원 MQTT, HTTP, WebSockets 토픽 / 채널 기반 계층적 메시지 라우팅 보안성 인증서와 TLS 1.2 기반 상호 인증 메시지 형식 (JSON) 사용자 정의 JSON 포맷
  12. 12. 고확장성의 관리형 서비스 고확장성을 지닌 Device Gateway 수백만의 디바이스가 수십억의 메시지를 전송 Subscribers Publishers
  13. 13. 보안
  14. 14. AWS IoT 보안 : 인증 및 인가 AUTHENTICATION Secure with mutual authentication and encryption AUTHENTICATION AUTHORIZATION Secure with mutual authentication and encryption 인증 및 인가 상호 인증 및 암호화로 보안 강화
  15. 15. AWS IoT 보안 : 인증/인가의 대상
  16. 16. AWS IoT 보안 : 사물의 인증
  17. 17. 사물의 인증 - 안전한 통신 채널 - 익명 사용자 - 안전한 통신 채널 - 익명 사물?
  18. 18. 사물의 인증: TLS기반 상호 인증 - 안전한 통신 채널 - 상호 자격 증명 - 안전한 통신 채널 - 익명 사용자
  19. 19. 사물의 인증/인가 * 사설 CA인증서 지원 기능 추가 (4/11) + Certificate Policy
  20. 20. AWS IoT 정책(policy) 예제 "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:topic/foo" ] }, { "Effect": "Deny", "Action": [ ”iot:Subscribe" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:topic/bar" ] topic/foo 토픽으로 메시지 배포 허용 topic/bar 토픽 메시지 수신 불가
  21. 21. AWS IoT 보안 : 사용자/서비스리소스 인증/인가 IAM - Role IAM Cognito - Identity Pool WebSockets - Signature Ver 4
  22. 22. 의미있는 신호 찾기
  23. 23. AWS IoT 룰 엔진 RULES ENGINE Transform messages based on rules and route to AWS Services 룰 엔진 룰 기반으로 메시지를 변형하고 AWS 서비스로 라우팅
  24. 24. AWS IoT 룰 엔진 – SQL기반 필터 SELECT DATA FROM TOPIC WHERE FILTER • 친숙함! : 데이타베이스 테이블 조회와 유사 (SUB SELECT 가능) • MQTT 토픽을 데이타 소스로 적용 • 시그널 처리를 위한 기능들 : 노이즈 제거 - 문자열 수정 (regex support) - 산술 계산 - Context 기반 Helper 기능 - 암호화 지원 - UUID, Timestamp, rand, 등. • 조회 후 연속적인 action 수행
  25. 25. AWS IoT 룰 엔진 - 예시 SELECT *, clientId() as MQTTClientId FROM 'one/rule' WHERE startsWith(topic(2), 'IME33') AND (state = 'INIT' OR hydro_temp > surface_temp)", "actions": [{ "republish": { "topic": "controllers/${substring(topic(3), 3, 5)}", }]
  26. 26. AWS IoT 룰 엔진 - 예시
  27. 27. AWS IoT 룰 엔진 – 액션 RULES ENGINE Transform messages based on rules and route to AWS Services AWS Services - - - - - 3P Services AWS Services - - - - - 3P Services
  28. 28. AWS IoT 룰 엔진 - 액션 연계 대상 Lambda function을 인보크 S3 버킷에 오브젝트를 Put DynamoDB table 에 Insert, Update, Read SNS Topic 또는 Endpoint 에 퍼블리싱 Amazon Kinesis stream에 퍼블리싱Actions Amazon Kinesis Firehose에 퍼블리싱 AWS IoT 리퍼블리싱 룰 엔진은 AWS IoT가 받은 메시지를 평가하고 적절하게 변환 및 엔드 포인트에 정의한 룰에 따라 실행 외부 엔드포인트는 Lambda 및 Amazon Simple Notification Service (Amazon SNS)를 통해 연결 Amazon Elasticsearch Amazon CloudWatch
  29. 29. AWS IoT 룰 엔진 – 액션 구성 예시
  30. 30. 1. AWS 서비스 (직접 연결) Rules Engine Actions AWS IoT 룰 엔진 - 액션 연계 확장 LambdaSNS SQS S3 Amazon KinesisDDB RDS Amazon Redshift Amazon Glacier EC2 3. 외부 엔드포인트 (via Lambda and SNS) 2. 기타 AWS (via Amazon Kinesis, Lambda, S3 활용) 룰 엔진은 AWS IoT를 외부 접점이나 AWS 다른 서비스로 연결 … Amazon Machine Learning
  31. 31. AWS IoT 룰 엔진 & Amazon SNS Push Notifications Apple APNS Endpoint, Google GCM Endpoint, Amazon ADM Endpoint, Windows WNS Amazon SNS -> HTTP Endpoint (Or SMS or Email) SNS를 통해 HTTP 기반의 외부 엔드 포인트를 호출 SNS 2
  32. 32. AWS IoT 룰 엔진 & 머신 런닝 AWS IoT 룰 엔진에서 S3로 데이타 전송 S3 데이타를 참조하여 Amazon ML 의 model을 생성 실시간 예측을 Amazon ML에 활성화 Amazon ML을 통해 예측된 값에 대해 AWS IoT 룰이 평가하고 연계된 action을 수행 S3로 전송 S3 Train model 기준 설정 Machine Learning
  33. 33. 디바이스 섀도(shadow)
  34. 34. AWS IoT 디바이스 섀도 THING SHADOW Persistent thing state during intermittent connections APPLICATIONS 디바이스 섀도 간혈적 통신에서도 사물의 상태 확보
  35. 35. Shadow 클라우드 상에 존재하는 디바이스의 가상적 실체 (Virtual representation) AWS IoT 디바이스 섀도
  36. 36. 예시: 질량분석기의 샘플 화학 분석 연결된 질량분석기가 수시간 동안 상태와 읽은 값을 전송 해당 질량분석기는 분석사이클이 완료되면 offline 상태로 전환되나, AWS IoT의 섀도는 마지막 보고된 상태를 유지 간혈적인 연결 기술자들은 모바일 앱을 통해 새로운 상태를 요청하거나 또는 마지막 보고된 질량분석기의 상태를 조회 AWS IoT 디바이스 섀도
  37. 37. { "state" : { “desired" : { "lights": { "color": "RED" }, "engine" : "ON" }, "reported" : { "lights" : { "color": "GREEN" }, "engine" : "ON" }, "delta" : { "lights" : { "color": "RED" } } }, "version" : 10 } Thing Mobile App Shadow • 하나 또는 복수의 섀도에 현재 상태 보고 • 섀도로부터 원하는 상태를 조회 • 디바이스에 desired 상태를 셋팅 • 해당 디바이스의 최신 통지된 상태를 획득 • 해당 섀도 삭제 • 섀도가 delta 및 desired 그리고 reported 상태를 메타데이터와 버전를 붙여 관리 AWS IoT 디바이스 섀도
  38. 38. 디바이스 관리
  39. 39. AWS IoT 레지스트리 THING REGISTRY Identity and Management of your things 레지스트리 사물에 대한 ID관리
  40. 40. • 사물과 관련된 정적인 속성을 저장 • 펌웨어 버젼 • 시리얼 번호 • 디바이스 유형 • 디바이스 그룹 • 디바이스 설명 • 센서 설명 • 지원 및 유지보수 목적의 추가 속성 • 설명서의 URL • 부품 번호 등 • 외부 시스템 연계도 가능 • AWS IoT에 연결된 모든 디바이스는 레지스트리에 등록 AWS IoT 레지스트리
  41. 41. AWS IoT – 디바이스 관리 Firmware Update Stored in S3 Publish to groups of devices • 글로벌 또는 리전 내에서 업데이트 • 룰엔진은 업데이트 상황을 보유, DynamoDB 테이블에서의 프로그레스를 추적 • 레지스트리 엔트리에 버전 저장 • S3에 버전 관리 된 펌웨어를 관리 • 룰 엔진에서 토픽 패턴을 사용하여 디바이스 그룹에 통지. 통지 내용에 S3에 저장된 펌웨어 다운로드 URL 담기
  42. 42. AWS IoT 국내 사례
  43. 43. KOLON GLOBAL CORPORATION TradingDistribution & Service Construction SPOREX 코오롱글로벌㈜는 건설, 유통, 무역, 스포츠산업등 다양한 사업부문의 역량을 보유하고 있는 종합기업입니다. 특히, 건설분야에서는 한발 앞선 디자인과 기술력으로 주거문화를 선도하고 있습니다. Housing PJT 양덕 하늘채 구미강변 하늘채 은어송 하늘채 꿈의숲 하늘채
  44. 44. KOLON GLOBAL HomeIoT – Device Mobile Beacon Amazon echo Window sensorPower Plug Switch Bulb Doorlock Gateway Boiler Siren Camera
  45. 45. KOLON GLOBAL HomeIoT – Architecture Mobile Beacon API Gateway Lambda AWS IoT RDS SNS S3DynamoDB Certification Policy Shadow Rule Engine Alexa Skills Kit – KOLON Home Service Amazon echo
  46. 46. KOLON GLOBAL HomeIoT – 재실모드 Users Skill Information publishingAmazon Alexa Skill : Home IoT In Mode Alexa Skill Kit Model -intent -utterance PublishingLambda ARN TEST Skill // DEVELOPER CONSOLE Lambda RDS Device Gateway Device Shadow AWS IoT Amazon echo
  47. 47. KOLON GLOBAL HomeIoT – 외출모드 Users Lambda RDS Device Gateway Device Shadow AWS IoT Beacon SELECT * FROM '$aws/things/p100002201/shadow/update/accepted' WHERE state.reported.detail.beacon_loc> 10 Rule Engine Query Rule Engine
  48. 48. KOLON GLOBAL HomeIoT – 보안모드 Users Lambda RDS SNS S3 DynamoDB Device Gateway Device Shadow AWS IoT Mobile API Gateway PUT : ThingCtrl PUT : SecurityMode POST : SecurityMode Clear PUT : OutMode PUT : Inmode Restful API Rule Engine Door Sensor
  49. 49. WHY AWS IoT ??? ü 최소 비용으로 개발 시작 가능 • 2월 부터 현재까지 발생 비용 월 70 USD 안팎 ü Serverless 방식의 Architecture 구성 가능 • APIGateway, Lambda, RDS ü 하나의 IoT Framework에 여러 서비스 연결 쉽게 가능 • Lambda, SNS, DynamoDB, RDS, CloudWatch ü 관리 및 운영이 필요 없어서, 서비스 제공까지 단 시간 내 구현 ü Snapshot 이미지를 S3에 저장해서, 스토리지 걱정 없이 저장 가능 ü RAW 이벤트 데이터 저장에 DynamoDB 선택 ü X509 인증서 사용으로 상호 인증하고, 데이터도 보안
  50. 50. KGC1)’s Vision for Home IoT IoT Home Network Wall-Pad Type Hub Mobile App Differentiated Platform 개발 Extension of Coverage N-housing Customized Value 제공 Senior Care Baby Care Health Beauty <New Biz> <Existing Biz> Note : 1) KGC (Kolon Global Corporation)
  51. 51. KGC’s Vision for Home IoT 코오롱글로벌㈜은 AWS IoT를 기반으로 기존 Hardware 중심의 주거시장에서 Platform과 Software 중심으로의 Paradigm Shift를 통해 주거문화의 혁신을 이뤄낼 것 입니다.
  52. 52. AWS IoT 디바이스 SDK 연결, 인증, 메시지 통신을 위한 클라이언트 라이브러리 세트 디바이스 게이트웨이 MQTT 및 HTTP를 통해 디바이스와 통신 룰 엔진 룰 기반으로 메시지를 변형하고 AWS 서비스로 라우팅 AWS 서비스 모든 AWS서비스에 메시지 전달 가능 디바이스 섀도 간혈적 통신에서도 사물의 상태 확보 애플리케이션 애플리케이션은 제공된 api를 통해서 언제든지 쉐도우에 연결 가능 레지스트리 사물에 대한 ID관리 인증 및 인가 상호 인증 및 암호화로 보안 강화
  53. 53. 다수 플랫폼에서 공식 AWS IoT Start Kit 제공 Dragonboard 410c (by Arrow) Beaglebone Green (by Seeed Studio) Seeeduino Cloud (by Seeed Studio) Intel Edison (by Seeed Studio) MediaTek LinkIt One (by Seeed Studio) Broadcom BCM4343W (by Avnet) Marvell EasyConnect (By Marvell) Renesas RX63N (by Micrium) Microchip WCM (by Microchip) Ti Launchpad (By Ti)
  54. 54. AWS IoT 디바이스 SDK • Based on open standards like Eclipse Paho • C • Arduino (Yun) • iOS (Swift) • Android • WebSocket support • NodeJS • JS SDK for Statically hosted site (WebSockets)
  55. 55. Pricing • 사용한 만큼 지불. 최소 비용 없음. • 메시지(AWS IoT로 게시, AWS IoT가 전송) 1백만 개당 $5 • AWS IoT는 Lambda, DynamoDB, S3, Kinesis, SNS 및 SQS와 같은 AWS 엔드포인트로 전송되는 메시 지에 대해서는 요금을 부과하지 않습니다 • Free Tier: 12개월 동안 매월 250,000건의 메시지(게시 또는 전송)를 무료로 제공 AWS IoT
  56. 56. 여러분의 피드백을 기다립니다! https://www.awssummit.co.kr 모바일 페이지에 접속하셔서, 지금 세션 평가에 참여하시면, 행사 후 기념품을 드립니다. #AWSSummit 해시태그로 소셜 미디어에 여러분의 행사 소감을 올려주세요. 발표 자료 및 녹화 동영상은 AWS Korea 공식 소셜 채널로 곧 공유될 예정입니다.
  57. 57. 감사합니다

×