AWS IoT 란 무엇입니까?
AWS IoT (Amazon Web Service IoT)는 연결된 장치가 클라우드 응용 프로그램 및 기타 장치와 쉽고 안전하게 상호 작용할 수있게 해주는 관리 형 클라우드 플랫폼입니다. AWS IoT는 수십억 개의 장치 및 수조의 메시지를 지원할 수 있으며 이러한 메시지를 처리하고 AWS 끝점 및 기타 장치로 안정적이고 안전하게 라우팅 할 수 있습니다. AWS IoT를 통해 TimeTec 스마트 커뮤니티 시스템은 모든 TimeTec IoT 스마트 홈 보안 장치를 항상 연결되어 있지 않아도 추적하고 통신 할 수 있습니다.

AWS IoT를 사용하면 AWS Lambda, Amazon Kinesis, Amazon S3, Amazon Machine Learning, Amazon DynamoDB, Amazon CloudWatch, AWS CloudTrail 및 Amazon Elasticsearch Service와 같은 AWS 서비스를 사용하여 Kibana 통합을 내장하여 IoT 애플리케이션을 구축하고, 인프라를 관리하지 않고도 연결된 장치에서 생성 된 데이터를 처리, 분석 및 처리 할 수 ​​있습니다.
AWS IOT의 이점
AWS IoT Device SDK
AWS IoT는 TimeTec 용 SDK를 제공하여 TimeTec IoT 하드웨어 장치와 모바일 응용 프로그램을 쉽고 빠르게 연결할 수 있습니다. AWS IoT Device SDK를 통해 TimeTec 장치는 MQTT, HTTP 또는 WebSockets 프로토콜을 사용하여 AWS IoT와 메시지를 연결, 인증 및 교환 할 수 있습니다. 장치 SDK는 C, JavaScript 및 Arduino를 지원하며 클라이언트 라이브러리, 개발자 가이드 및 제조업체 용 포팅 가이드를 포함합니다.
장치 게이트웨이
AWS IoT Device Gateway를 사용하면 TimTec IoT 장치가 AWS IoT와 안전하고 효율적으로 통신 할 수 있습니다. Device Gateway는 일대일 및 일대 다 통신을 가능하게하는 게시 / 구독 모델을 사용하여 메시지를 교환 할 수 있습니다. 이 일대 다 통신 패턴을 사용하면 AWT IoT를 통해 TimeTec 연결 장치가 주어진 주제에 대해 여러 가입자에게 데이터를 브로드 캐스트 할 수 있습니다. Device Gateway는 MQTT, WebSockets 및 HTTP 1.1 프로토콜을 지원하며 TimeTec은 독점 또는 레거시 프로토콜에 대한 지원을 쉽게 구현할 수 있습니다. Device Gateway는 프로비저닝 인프라없이 10 억 개 이상의 장치를 지원하도록 자동으로 확장됩니다.
인증 및 권한 부여
AWS IoT는 모든 연결 지점에서 상호 인증 및 암호화 기능을 제공하므로 입증 된 신원없이 장치와 AWS IoT간에 데이터가 교환되지 않습니다. AWS IoT는 AWS 인증 방법 ( 'SigV4')과 X.509 인증서 기반 인증을 지원합니다.

HTTP를 사용하는 연결은이 두 가지 방법 중 하나를 사용할 수 있으며 MQTT를 사용하는 연결은 인증서 기반 인증을 사용하고 WebSockets을 사용하는 연결은 SigV4를 사용할 수 있습니다. AWS IoT TimeTec은 AWS IoT 생성 인증서뿐만 아니라 선호하는 인증 기관 (CA)이 서명 한 인증서도 사용할 수 있습니다. 우리는 우리가 선택한 역할이나 정책을 각 인증서에 매핑 할 수 있기 때문에 장치 나 애플리케이션에 액세스 할 권한을 부여하거나 장치를 건드리지 않고 마음을 바꿔 액세스를 완전히 취소 할 수 있습니다.

TimeTec은 콘솔 또는 API를 사용하여 IoT 장치에 대한 인증서 및 정책을 생성, 배포 및 관리 할 수 ​​있습니다. 이러한 장치 인증서는 AWS IAM을 사용하여 구성된 관련 정책과 함께 제공, 활성화 및 연결될 수 있습니다. 이를 통해 고객은 개별 장치에 대한 액세스를 즉시 취소 할 수 있습니다. 또한 AWS IoT는 Amazon Cognito를 사용하여 사용자의 모바일 앱 연결을 지원합니다. Amazon Cognito는 앱 사용자의 고유 식별자를 생성하고 임시의 제한된 권한의 AWS 자격증 명을 검색하는 데 필요한 모든 단계를 처리합니다.
기재
레지스트리는 장치에 대한 ID를 설정하고 장치의 특성 및 기능과 같은 메타 데이터를 추적합니다. 레지스트리는 장치의 유형이나 연결 방법에 관계없이 일관되게 형식이 지정된 각 장치에 고유 한 ID를 할당합니다. 또한 장치의 기능을 설명하는 메타 데이터 (예 : 센서가 온도를보고하는지, 데이터가 화씨 또는 섭씨인지 여부)를 지원합니다.

레지스트리를 통해 고객은 추가 비용없이 장치에 대한 메타 데이터를 저장할 수 있으며 최소한 7 년에 한 번씩 레지스트리 항목에 액세스하거나 업데이트하면 레지스트리의 메타 데이터는 만료되지 않습니다.
장치 그림자
AWS IoT를 사용하면 응용 프로그램이나 다른 장치가 메시지를 읽고 장치와 상호 작용할 수 있도록 장치의 최신 상태가 포함 된 영구적 인 가상 버전 또는 각 장치의 "그림자"를 만들 수 있습니다. 장치 그림자는 장치가 오프라인 일 때도 각 장치의 마지막보고 된 상태 및 원하는 미래 상태를 유지합니다. TimeTec은 API를 사용하거나 규칙 엔진을 사용하여 장치의 마지막보고 상태를 검색하거나 원하는 미래 상태를 설정할 수 있습니다.

Device Shadows를 사용하면 항상 사용할 수있는 REST API를 제공하여 TimeTec 장치와 상호 작용하는 응용 프로그램을보다 쉽게 ​​만들 수 있습니다. 또한 응용 프로그램은 장치의 현재 상태를 고려하지 않고 장치의 원하는 미래 상태를 설정할 수 있습니다. AWS IoT는 원하는 상태와 마지막보고 된 상태의 차이를 비교하고 차이를 보완하도록 장치에 명령합니다.

AWS IoT Device SDK를 사용하면 TimeTec 장치가 섀도우와 상태를 동기화하고 섀도우를 통해 설정된 원하는 미래 상태에 쉽게 응답 할 수 있습니다.

기기 그림자는 고객이 무료로 최대 1 년 동안 기기의 상태를 저장할 수있게합니다. 장치 그림자는 적어도 일년에 한 번 업데이트하면 영원히 유지됩니다. 그렇지 않으면 수명이 만료됩니다.
규칙 엔진
규칙 엔진을 사용하면 인프라를 관리하지 않고도 글로벌 규모로 연결된 장치에서 생성 된 데이터를 수집, 처리 및 분석하고 작동하는 IoT 응용 프로그램을 구축 할 수 있습니다. 규칙 엔진은 AWS IoT에 게시 된 인바운드 메시지를 평가하고 정의한 비즈니스 규칙에 따라 다른 장치 또는 클라우드 서비스로 변환하여 전달합니다. 하나 또는 여러 장치의 데이터에 규칙을 적용 할 수 있으며 하나 이상의 작업을 병렬로 수행 할 수 있습니다.

또한 룰 엔진은 AWS Lambda, Amazon Kinesis, Amazon S3, Amazon Machine Learning, Amazon DynamoDB, Amazon CloudWatch 및 내장 된 Kibana 통합 기능이있는 Amazon Elasticsearch Service를 포함하여 AWS 엔드 포인트로 메시지를 라우팅 할 수 있습니다. AWS Lambda, Amazon Kinesis 및 Amazon Simple Notification Service (SNS)를 사용하여 외부 엔드 포인트에 연결할 수 있습니다.

관리 콘솔에서 규칙을 작성하거나 SQL과 유사한 구문을 사용하여 규칙을 작성하는 것은 쉽습니다. 메시지의 내용에 따라 다르게 동작하도록 규칙을 작성할 수 있습니다. 예를 들어, 온도 판독 값이 특정 임계 값을 초과하면 데이터를 AWS Lambda로 전송하는 규칙을 트리거 할 수 있습니다. 규칙은 다른 장치의 데이터와 같이 클라우드의 다른 데이터도 고려하여 작성할 수 있습니다. 예를 들어,이 온도가 다른 5 개의 장치의 평균 온도보다 15 % 이상 높으면 조치를 취할 수 있습니다.

Rules Engine은 데이터를 변환하는 데 사용할 수있는 수십 가지의 사용 가능한 기능을 제공하며 AWS Lambda를 통해 무한히 많은 것을 만들 수 있습니다. 예를 들어, 넓은 범위의 값을 다루는 경우 들어오는 숫자의 평균을 취할 수 있습니다. 규칙은 또한 AWS Lambda에서 Java, Node.js 또는 Python 코드의 실행을 트리거하여 장치 데이터를 처리 할 수있는 최대한의 유연성과 성능을 제공합니다.