AWS IoT, 스케일업하는 IoT의 빠른 전개를 가능하게 한다

0

미국 Amazon Web Services(AWS)가 2015년 10월 ‘AWS re:Invent 2015’에서 발표한 ‘AWS IoT’는 디바이스와 서비스 간의 분리를 특징으로 한다. IoT 디바이스는 가능한 한 간단한 메시지를 주고받도록 하고 AWS의 관련 서비스 활용으로 클라우드측에서 각종 애플리케이션을 신속하게 개발할 수 있도록 하는 구조다. AWS IoT는 IoT 디바이스와 앱 (서비스) 개발자 모두에게 큰 의미로 다가온다.

AWS IoT…

미국 Amazon Web Services(AWS)가 지난 2015년 10월 개최한 동사의 연차 이벤트 ‘AWS re:Invent 2015’에서 ‘AWS QuickSight’와 함께 주요 발표 내용이 된 것은 ‘AWS IoT’의 베타 제공 개시다. 서비스 제공 개시 지역에는 아시아의 경우 일본 동경만 포함된다.

이 심플한 네이밍의 서비스는 IoT 디바이스를 AWS나 다른 IoT 디바이스에 접속해 정보를 주고받을 수 있도록 하는 서비스다. IoT 디바이스측에서의 AWS IoT로의 대응을 실현하는 ‘AWS IoT Device SDK’와 사물로부터의 접속을 관리하고, 그 메시지를 AWS의 각종 서비스나 다른 사물에 보내는 것과 함께, 경우에 따라서는 서비스측으로부터 명령을 보내기 위한 AWS측 각종 서비스로 구성되어 있다.

[그림 1] re:Invent 2015에서 배포된 ‘AWS IoT Button’

re:Invent 2015에서 배포된 ‘AWS IoT Button’

AWS는 re:Invent 2015에서 온실 내의 센서가 취득한 정보에 기초해 이 온실의 팬의 전원을 자동으로 온/오프하는 등의 적용 사례를 전시했다.

재미있는 것은 ‘AWS IoT Button’이다. 이것은 AWS가 re:Invent 2015에서 제한 배포한 버튼으로, 아마존의 ‘Dash Button’ 하드웨어를 사용하고 AWS IoT를 활용하여 간단한 IoT 애플리케이션의 개발을 체험할 수 있도록 했다. 예를 들어 이 버튼으로 동영상 배포 서비스 ‘Netflix’가 배포하는 비디오의 원격 조작이나 피자 주문, 가족에게 긴급연락, 필립스의 ‘Hue Light’의 점멸 등 상상하기 나름의 여러 가지를 실현할 수 있다고 한다.

AWS IoT Button의 동작 구조는 AWS IoT의 아키텍처를 잘 나타내고 있다. 이 버튼을 누르면 버튼이 눌린 것을 알게 하는 간단한 메시지가 AWS에 전달된다. AWS측에서는 이 메시지를 받아 유저에 의한 사전설정에 기초해 AWS의 서비스를 불러낸다. 이에 의해 피자 주문부터 라이트 점멸까지 유저가 AWS 상에서 만들어둔 애플리케이션을 실행할 수 있다.

AWS IoT를 구성하는 요소

AWS IoT를 구성하는 요소는 다음과 같다. 우선 ‘AWS IoT Device SDK’다. AWS IoT를 구성하는 IoT 디바이스측의 요소는 ‘AWS IoT Device SDK(Software Development Kit)’로, 이에 의해 IoT 디바이스가 ‘HTTP(Hypertext Transfer Protocol) 1:1’ 혹은 ‘MQTT(Message Queue Telemetry Transfer)’로 메시지를 보낼 수 있도록 된다. 범용 프로토콜밖에 사용하지 않고 벤더 락인이 없다는 점을 AWS에서는 강조하고 있다. MQTT는 사물의 접속에 자주 사용되고 있는데, 쓰루풋, 적은 배터리 소비량, 적은 네트워크 부하 등에서 HTTP를 대폭 상회한다는 것이 선택의 이유다.

AWS IoT의 발표와 동시에 스타터킷이 각사로부터 제공 개시되고 있다. 구체적으로는 인텔, 르네상스, BeagleBone, MediaTek, TI, Arrow, Arduino, Avnet, Marvel, Microchip, Seeduino와 같은 기업이나 조직이 임베드 개발 보드에서 AWS IoT Device SDK를 작동되도록 하고 이것에 센서나 액추에이터를 조합하여 판매하고 있다. 따라서, 용도에 따라서는 사물로의 SDK 실장 작업 없이도 이들 보드를 사용해 AWS IoT를 사용하기 위한 IoT 디바이스측의 개발을 단기간에 실행할 수 있다.

두 번째는 ‘Device Gateway’다. AWS측에서는 HTTP 혹은 MQTT에서 IoT 디바이스로부터 보내진 메시지를 받는 게이트웨이 서비스가 움직이고 있다. 반대로 이 게이트웨이로부터 제어신호 등의 메시지를 디바이스에 보내는 것도 가능하다. 엄청난 수의 IoT 디바이스와 접속했다고 해도 자동 스케일링에 의해 항상 필요충분한 처리 능력을 제공할 수 있다고 한다.

관련해서, IoT 디바이스는 ‘AWS Management Console’를 통해 관리할 수 있다. 각 디바이스는 ‘IoT Registry’에 등록되고 개개의 정보에 기초하는 디바이스 관리가 가능하게 되고 있다. ‘X.509증명서’도 발행할 수 있고 디폴트로 디바이스 인증과 통신의 암호화가 실행된다.

세 번째는 ‘Rules Engine’이다. ‘Device Gateway’에 도달한 메시지는 그 다음에 ‘Rules Engine’의 대상이 된다. 여기에서는 심플한 SQL(Structured Query Language : 구조화 쿼리 언어) 기술에 의해 유저가 룰을 설정하고 메시지의 필터링이나 문자열의 조작, 간단한 연산 처리를 적용한 후 적절한 AWS 서비스에 대한 액션을 실행할 수 있다. 직접 대상이 될 수 있는 것은 ‘DynamoDB’ ‘Kinesis’ ‘S3’ ‘SNS’ Lambda이다. 구체적으로는 S3 패킷으로의 오브젝트 저장, Lambda 함수 호출, ‘DynamoDB 테이블’의 갱신이나 읽어내기, ‘Kinesis 스트림’으로의 발행, ‘SNS 토픽’ 혹은 ‘엔드 포인트’로의 발행, ‘Kinesis Firehose’의 이용, AWS IoT로의 재발행이 가능하다.

이들 중 하나를 경유해서 다른 AWS 서비스나 외부 서비스/애플리케이션을 불러낼 수 있다.

네 번째는 ‘Thing Shadow’다. Thing Shadow는 문자대로 ‘사물의 그늘’이다. 어느 IoT 디바이스가 어떠한 이유로 통신할 수 없는 상태에 있을 때 AWS IoT의 서비스로부터는 이 디바이스가 마치 연결되어 있는듯이 메시지를 보내는 상태를 갱신하는 것과 같은 처리를 실행할 수 있다. 즉 Thing Shadow는 개개의 IoT 디바이스를 가상으로 표현한 것이다. 연결되어 있지 않았던 IoT 디바이스는 다음 재접속시에 버퍼링되어 있던 메시지를 정리해 받아들일 수 있다.

IoT 중소기업과 앱 개발자에게 큰 의미일지도…

미국 AWS에서 모바일과 IoT를 통괄하는 모바일 담당부사장 말코 알젠티 씨가 얘기했듯이 ‘AWS IoT는 디바이스와 서비스 간의 분리’를 특징으로 한다. IoT 디바이스는 가능한 한 심플한 메시지를 주고받는 데 주력한다. 그리고 Rules Engine 및 AWS의 관련 서비스 활용에 의해 클라우드측에서 각종 애플리케이션을 신속하게 개발할 수 있도록 되어 있다. 이 서비스는 US East, US West, 핀란드, 동경의 4개 지역에서 베타 제공이 시작되었다. 과금은 종량제로 1백만 메시지당 5달러다.

IoT 중소기업은 스케일업 단계에서 고충을 토로하곤 한다. AWS IoT가 중소 규모 IoT 디바이스 기업 그리고 앱 개발자에게 어떤 혁신을 가져다줄 수 있을까? IoT 기업이나 앱 개발자가 주목해야 할 필요가 있다.

 

예화경_(사)한국모바일기업진흥협회 이사 joy@kmepa.or.kr

예화경_(사)한국모바일기업진흥협회 이사 joy@kmepa.or.kr

페이스북으로 댓글을 달아주세요!

About Author

국내 모바일 산업과 창업 생태계를 응원합니다. 모바일 트렌드에 대한 전문 컬럼을 기고하거나 유망한 스타트업을 소개하고 싶으시면 연락바랍니다. 적극 수용하겠습니다~♥

댓글 남기기