AWS IoT Core는 디바이스를 AWS 서비스 및 다른 디바이스에 연결하고, 데이터 및 상호 작용을 보안하며, 디바이스 데이터를 처리하고 이를 기반으로 운영하고, 디바이스가 오프라인일 때도 애플리케이션이 디바이스와 상호 작용할 수 있도록 해주는 플랫폼입니다.

주요 기능

AWS IoT 디바이스 SDK

AWS IoT 디바이스 SDK는 하드웨어 디바이스 또는 모바일 애플리케이션을 AWS IoT Core에 쉽고 빠르게 연결하는 데 도움이 됩니다. AWS IoT 디바이스 SDK를 사용하면 디바이스에서 MQTT, HTTP 또는 WebSockets 프로토콜을 사용하여 AWS IoT Core와 연결하고, 인증하고, 메시지를 교환할 수 있습니다. AWS IoT 디바이스 SDK는 C, JavaScript 및 Arduino를 지원하며, 클라이언트 라이브러리, 개발자 안내서 및 제조업체용 포팅 안내서가 포함되어 있습니다. 또한, 이를 대체하는 오픈 소스를 사용하거나 자체 SDK를 작성할 수도 있습니다.

자세한 내용은 AWS IoT 디바이스 SDK 설명서를 참조하거나 SDK를 다운로드하여 시작하십시오.

디바이스 게이트웨이

디바이스 게이트웨이는 AWS에 연결하는 IoT 디바이스를 위한 진입점의 역할을 합니다. 디바이스 게이트웨이는 모든 활성 디바이스 연결을 관리하고 여러 프로토콜의 시맨틱을 구현하여 디바이스가 AWS IoT Core와 안전하고 효율적으로 통신할 수 있도록 지원합니다. 현재 디바이스 게이트웨이에서는 MQTT, WebSockets 및 HTTP 1.1 프로토콜을 지원합니다. MQTT 또는 WebSockets을 통해 연결하는 디바이스의 경우, 디바이스 게이트웨이에서 장기간 양방향 연결을 유지하므로 이러한 디바이스가 언제든 짧은 지연 시간으로 메시지를 주고받을 수 있습니다. 디바이스 게이트웨이는 완전관리형 서비스로, 사용자가 인프라를 관리할 필요 없이 수십억 개의 디바이스를 지원하도록 자동 확장됩니다.

자세한 내용은 AWS IoT Core 사용 설명서의 프로토콜 섹션을 참조하십시오.

메시지 브로커

메시지 브로커는 모든 IoT 디바이스와 애플리케이션에서 짧은 지연 시간으로 안전하게 메시지를 송수신하며 처리량이 높은 게시/구독 메시지 브로커입니다. 메시지 브로커의 주제 구조가 유연하므로 원하는 수의 디바이스에서 메시지를 송신 또는 수신할 수 있습니다. 1 대 1 명령 및 제어 메시징부터 1 대 1백만(또는 그 이상!) 브로드캐스트 알림 시스템까지, 그리고 그 사이에 있는 모든 것을 비롯하여 다양한 메시징 패턴을 지원합니다. 또한, 세분화된 액세스 제어를 설정하여 주제 수준에서 개별 연결의 권한을 관리할 수 있으므로, 디바이스와 애플리케이션은 사용자가 원하는 데이터만 송수신하게 됩니다. 메시지 브로커는 완전관리형 서비스이므로, 사용자가 어떻게 사용하든 관계없이 메시지 볼륨에 맞춰 자동으로 확장 또는 축소되며 사용자는 인프라를 전혀 운영할 필요가 없습니다.

자세한 내용은 AWS IoT Core 사용 설명서의 메시지 브로커 섹션을 참조하십시오.

인증 및 권한 부여

AWS IoT Core는 모든 연결 지점에서 상호 인증 및 암호화를 제공하므로 디바이스와 AWS IoT Core 간에 입증된 자격 증명 없이는 데이터가 교환되지 않습니다. AWS IoT Core는 AWS 인증 메서드('SigV4'), X.509 인증서 기반 인증, 고객 생성 토큰 기반 인증(사용자 지정 권한 부여자를 통해)을 지원합니다. HTTP를 통해 연결하면 이러한 메서드를 모두 사용할 수 있고, MQTT를 통해 연결하면 인증서 기반 인증을 사용할 수 있으며, WebSockets를 통해 연결하면 SigV4 또는 사용자 지정 권한 부여자를 사용할 수 있습니다. AWS IoT Core에서는 AWS IoT Core에서 생성한 인증서뿐만 아니라 선호하는 인증 기관(CA)에서 서명한 인증서도 사용할 수 있습니다. 원하는 정책을 각 인증서에 매핑하여 디바이스 또는 애플리케이션에 액세스 권한을 부여하거나, 마음이 바뀐 경우 디바이스를 직접 조작하지 않고도 액세스 권한을 모두 취소할 수 있습니다.

콘솔이나 API를 사용해 디바이스에 대한 인증서와 정책을 생성, 배포 및 관리할 수 있습니다. 이러한 디바이스 인증서는 AWS IoT Core를 사용해 구성된 관련 IoT 정책으로 프로비저닝 및 활성화하고 해당 정책과 연결할 수 있습니다. 이를 통해 원하는 경우, 개별 디바이스에 대한 액세스를 즉시 취소할 수 있습니다. 또한, AWS IoT Core는 앱 사용자에 대한 고유 식별자를 생성하고 제한적인 임시 AWS 자격 증명을 가져오는 데 필요한 모든 단계를 처리하는 Amazon Cognito를 사용하여 사용자 모바일 앱으로부터의 연결도 지원합니다. 디바이스가 X.509 인증서를 통해 인증된 후에는 AWS IoT Core에서 임시 AWS 자격 증명을 제공하므로 해당 디바이스에서 DynamoDB 또는 S3와 같은 다른 AWS 서비스에 좀 더 쉽게 액세스할 수 있습니다.

자세한 내용은 AWS IoT Core 사용 설명서의 보안 및 인증 섹션을 참조하십시오.

레지스트리

레지스트리는 디바이스에 대한 자격 증명을 설정하고 디바이스의 속성 및 기능 같은 메타데이터를 추적합니다. 레지스트리는 디바이스 유형이나 연결 방식과 관계없이 지속적으로 형식이 지정되는 각 디바이스에 고유 자격 증명을 지정합니다. 또한, 예를 들어 센서가 온도를 보고하는지 그리고 데이터가 화씨인지 섭씨인지와 같은 디바이스의 기능을 설명하는 메타데이터를 지원합니다.

레지스트리를 사용하면 추가 비용 없이 디바이스에 관한 메타데이터를 저장할 수 있으며, 최소 7일에 한 번 이상 레지스트리 항목을 액세스 또는 업데이트하기만 하면 레지스트리에 저장된 메타데이터가 계속 유지됩니다.

자세한 내용은 AWS IoT Core 사용 설명서의 레지스트리 섹션을 참조하십시오.

디바이스 섀도

AWS IoT Core에서는 사용자가 디바이스의 최신 상태가 포함된 각 디바이스의 영구 가상 버전 또는 디바이스 섀도를 생성할 수 있으므로, 애플리케이션이나 다른 디바이스가 메시지를 읽고 해당 디바이스와 상호 작용할 수 있습니다. 디바이스 섀도는 디바이스가 오프라인이더라도 각 디바이스의 최종 보고된 상태와 원하는 이후 상태를 유지합니다. API 또는 규칙 엔진을 사용하여 디바이스의 최종 보고된 상태를 가져오거나 원하는 이후 상태를 설정할 수 있습니다.

디바이스 섀도는 상시 가용 REST API를 제공하므로 디바이스와 상호 작용하는 애플리케이션을 손쉽게 구축할 수 있습니다. 또한, 애플리케이션은 디바이스의 현재 상태를 확인하지 않고도 디바이스의 원하는 이후 상태를 설정할 수 있습니다. AWS IoT Core는 원하는 상태와 최종 보고된 상태의 차이를 비교하여 디바이스에 차이를 없애도록 명령합니다.

AWS IoT 디바이스 SDK를 사용하면 디바이스에서 손쉽게 디바이스 섀도와 상태를 동기화하고, 디바이스 섀도에서 설정한 원하는 이후 상태를 처리할 수 있습니다.

디바이스 섀도에서는 최대 1년까지 무료로 디바이스 상태를 저장할 수 있습니다. 디바이스 섀도는 최소한 1년에 한 번 이상 업데이트하면 영구적으로 유지되며 그렇지 않은 경우 종료됩니다.

자세한 내용은 AWS IoT Core 사용 설명서의 디바이스 섀도 섹션을 참조하십시오.

규칙 엔진

규칙 엔진을 사용하면 인프라를 관리할 필요 없이 글로벌 규모로 연결된 디바이스에서 생성된 데이터를 수집, 처리, 분석하고 이를 기반으로 조치를 취할 수 있습니다. 규칙 엔진은 AWS IoT Core에 게시된 수신 메시지를 평가하고, 정의한 비즈니스 규칙에 따라 다른 디바이스나 클라우드 서비스로 이를 변환 및 전송합니다. 규칙은 하나 이상의 디바이스의 데이터에 적용할 수 있으며 하나 이상의 작업을 동시에 수행할 수 있습니다.

또한, 규칙 엔진은 메시지를 AWS 엔드포인트(AWS Lambda, Amazon Kinesis, Amazon S3, Amazon Machine Learning, Amazon DynamoDB, Amazon CloudWatch, Amazon Simple Notification Service(SNS), Amazon Simple Queue Service(SQS), AWS IoT Analytics, Kibana와 기본적으로 통합된 Amazon Elasticsearch Service 및 AWS Step Functions 포함)로 라우팅할 수 있습니다. 외부 엔드포인트에는 AWS Lambda, Amazon Kinesis, Amazon SNS 및 AWS Step Functions를 사용하여 도달할 수 있습니다.  

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

규칙 엔진은 데이터 변환에 사용할 수 있는 수십 개의 함수를 제공하고, AWS Lambda를 사용해 원하는 만큼 추가로 함수를 생성할 수 있습니다. 예를 들어, 다양한 값을 처리해야 하는 경우 수신되는 숫자의 평균을 사용할 수 있습니다. 또한, 규칙은 AWS Lambda에서 Java, Node.js 또는 Python 코드가 실행되도록 트리거할 수 있으므로 디바이스 데이터 처리를 위한 최고의 유연성 및 기능을 제공합니다.

자세한 내용은 AWS IoT Core 사용 설명서의 규칙 엔진 섹션을 참조하십시오.

AWS IoT Core 요금에 대해 자세히 알아보기

요금 페이지로 이동하기
시작할 준비가 되셨습니까?
가입
질문이 있으십니까?
문의처