자습서: 구성 요소 업데이트가 지연되는 Greengrass 구성 요소 개발
이 자습서를 완료하여 무선 배포 업데이트가 지연되는 구성 요소를 개발할 수 있습니다. 디바이스에 업데이트를 배포할 때 다음과 같은 조건에 따라 업데이트를 지연시키는 것이 좋습니다.
-
디바이스의 배터리 잔량이 부족합니다.
-
중단될 수 없는 프로세스 또는 작업이 디바이스에서 실행되고 있습니다.
-
디바이스가 제한적이거나 비용이 많이 드는 인터넷에 연결되어 있습니다.
참고
구성 요소는 AWS IoT Greengrass 코어 디바이스에서 실행되는 소프트웨어 모듈입니다. 구성 요소를 사용하면 복잡한 애플리케이션을 여기저기 Greengrass 코어 디바이스에서 재사용할 수 있는 불연속 빌딩 블록으로 생성하고 관리할 수 있습니다.
이 자습서에서는 다음 작업을 수행합니다.
-
개발 컴퓨터에 Greengrass 개발 키트 CLI(GDK CLI)를 설치합니다. GDK CLI에서는 사용자 지정 Greengrass 구성 요소를 개발하는 데 도움이 되는 특성이 제공됩니다.
-
코어 디바이스의 배터리 잔량이 임계값 미만일 때 구성 요소 업데이트가 지연되는 Hello World 구성 요소를 개발합니다. 이 구성 요소에서는 SubscribeToComponentUpdates IPC 작업이 사용되는 업데이트 알림이 구독됩니다. 알림이 수신되면 배터리 잔량이 사용자 지정 가능한 임계값보다 낮은지 확인됩니다. 배터리 잔량이 임계값 미만인 경우 DeferComponentUpdate IPC 작업이 사용되어 30초 동안 업데이트가 지연됩니다. GDK CLI를 사용하여 개발 컴퓨터에서 이 구성 요소를 개발합니다.
참고
이 구성 요소에서는 코어 디바이스에서 생성하는 파일의 배터리 잔량이 읽히며 실제 배터리가 모방되므로 배터리 없이 코어 디바이스에서 이 자습서를 완료할 수 있습니다.
-
AWS IoT Greengrass 서비스에 해당 구성 요소를 게시합니다.
-
AWS 클라우드에서 Greengrass 코어 디바이스로 해당 구성 요소를 배포하여 테스트합니다. 그런 다음에 코어 디바이스에서 가상 배터리 잔량을 수정하고 추가 배포를 생성하여 배터리 잔량이 부족할 때 코어 디바이스에서 업데이트가 지연되는 방식을 참조합니다.
이 자습서의 예상 소요 시간은 20~30분입니다.
이 자습서를 완료했습니다. Hello World 구성 요소에서는 코어 디바이스의 배터리 잔량에 따라 업데이트가 지연되거나 승인됩니다. 이 자습서에서 살펴보는 주제에 대한 자세한 내용은 다음을 참조하세요.