AWS IoT Greengrass Version 1 2023년 6월 30일에 수명 연장 단계에 들어갔습니다. AWS IoT Greengrass V1 관리형 정책에 대한 자세한 정보는 섹션을 참조하세요. 이 날짜 이후에는 기능, 개선 사항, 버그 수정 또는 보안 패치를 제공하는 업데이트가 AWS IoT Greengrass V1 릴리스되지 않습니다. 에서 실행되는 기기는 AWS IoT Greengrass V1 중단되지 않으며 계속 작동하고 클라우드에 연결됩니다. 새로운 기능이 크게 추가되고 추가 플랫폼에 대한 지원이 추가되는 으로 마이그레이션하는 AWS IoT Greengrass Version 2 것이 좋습니다.
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
무엇입니까 AWS IoT Greengrass?
AWS IoT Greengrass 클라우드 기능을 로컬 장치로 확장하는 소프트웨어입니다. 덕분에 장치는 정보 소스와 보다 밀접한 데이터를 수집 및 분석하고, 로컬 이벤트에 자율적으로 응답하며, 로컬 네트워크에서 서로 안전하게 통신할 수 있습니다. 또한 로컬 장치는 IoT 데이터와 안전하게 AWS IoT Core 통신하고 IoT 데이터를 로 내보낼 수 AWS 클라우드있습니다. AWS IoT Greengrass 개발자는 AWS Lambda 함수와 사전 구축된 커넥터를 사용하여 로컬 실행을 위해 장치에 배포되는 서버리스 애플리케이션을 만들 수 있습니다.
다음 다이어그램은 의 기본 아키텍처를 보여줍니다. AWS IoT Greengrass
AWS IoT Greengrass 이를 통해 고객은 IoT 장치 및 애플리케이션 로직을 구축할 수 있습니다. 특히, 디바이스에서 실행되는 애플리케이션 로직의 클라우드 기반 관리를 AWS IoT Greengrass 제공합니다. 로컬로 배포된 Lambda 함수와 커넥터는 로컬 이벤트, 클라우드의 메시지 또는 기타 소스에서 트리거됩니다.
AWS IoT Greengrass에서는 디바이스가 로컬 네트워크에서 안전하게 통신하고 클라우드에 연결할 필요 없이 서로 메시지를 교환합니다. AWS IoT Greengrass 연결이 끊긴 경우 클라우드로의 인바운드 및 아웃바운드 메시지가 보존되도록 메시지를 지능적으로 버퍼링할 수 있는 로컬 게시/구독 메시지 관리자를 제공합니다.
AWS IoT Greengrass 사용자 데이터 보호:
클라우드와의 연결이 끊어져도 장치 보안 자격 증명은 해지될 때까지 하나의 그룹 내에서 작동하므로 장치가 로컬에서 계속 안전하게 통신을 실행할 수 있습니다.
AWS IoT Greengrass Lambda 함수의 안전한 over-the-air 업데이트를 제공합니다.
AWS IoT Greengrass 다음과 같이 구성됩니다.
AWS IoT Greengrass 코어 소프트웨어
AWS IoT Greengrass Core 소프트웨어는 다음과 같은 기능을 제공합니다.
-
커넥터 및 Lambda 함수의 배포 및 로컬 실행.
-
로 자동 내보내기를 사용하여 로컬에서 데이터 스트림을 처리합니다 AWS 클라우드.
-
관리형 구독을 사용한 장치, 커넥터, Lambda 함수 간의 로컬 네트워크를 통한 MQTT 메시징.
-
관리형 구독을 사용하는 디바이스, 커넥터 AWS IoT 및 Lambda 함수 간 MQTT 메시징.
-
디바이스 간 보안 연결과 디바이스 인증 및 AWS 클라우드 권한 사용.
-
장치의 로컬 섀도우 동기화. 섀도우는 AWS 클라우드와 동기화하도록 구성할 수 있습니다.
-
로컬 장치 및 볼륨 리소스에 대한 액세스 제어.
-
로컬 추론 실행을 위한 클라우드 학습 머신러닝 모델 배포.
-
장치에서 Greengrass 코어 장치를 검색할 수 있도록 지원하는 자동 IP 주소 감지.
-
새 그룹 또는 업데이트된 그룹 구성의 중앙 배포. 구성 데이터를 다운로드한 후 코어 장치가 자동으로 다시 시작합니다.
-
사용자 정의 Lambda 함수의 안전한 over-the-air (OTA) 소프트웨어 업데이트.
-
로컬 보안 암호의 안전하고 암호화된 저장 및 커넥터 및 Lambda 함수의 액세스 제어.
AWS IoT Greengrass 코어 인스턴스는 클라우드에 저장된 AWS IoT Greengrass 그룹 정의를 생성하고 업데이트하는 AWS IoT Greengrass API를 통해 구성됩니다.
AWS IoT Greengrass 코어 소프트웨어 버전
AWS IoT Greengrass tar.gz 다운로드 파일, 퀵 스타트 스크립트, 지원되는 데비안 플랫폼에서의 설치 등 AWS IoT Greengrass 코어 소프트웨어 apt
설치를 위한 여러 옵션을 제공합니다. 자세한 정보는 AWS IoT Greengrass 코어 소프트웨어 설치을 참조하세요.
다음 탭은 AWS IoT Greengrass Core 소프트웨어 버전의 새로운 기능 및 변경된 사항에 대해 설명합니다.
- GGC v1.11
-
- 1.11.6
-
버그 수정 및 개선 사항:
-
배포 중에 갑작스러운 전력 손실이 발생할 경우 복원력이 향상되었습니다.
-
스트림 관리자 데이터 손상으로 인해 AWS IoT Greengrass Core 소프트웨어가 시작되지 않는 문제가 수정되었습니다.
-
특정 시나리오에서 새 클라이언트 장치를 코어에 연결할 수 없는 문제를 수정했습니다.
-
스트림 관리자 스트림 이름이 .log
를 포함할 수 없던 문제를 수정했습니다.
- 1.11.5
-
버그 수정 및 개선 사항:
- 1.11.4
-
버그 수정 및 개선 사항:
- 1.11.3
-
버그 수정 및 개선 사항:
-
Ubuntu 디바이스에서 AWS IoT Greengrass Core 소프트웨어를 순식간에 실행하던 중 디바이스의 전원이 갑자기 끊긴 후 응답하지 않던 문제를 수정했습니다.
-
수명이 긴 Lambda 함수에 MQTT 메시지 전송이 지연되는 문제를 수정했습니다.
-
maxWorkItemCount
값이 1024
보다 큰 값으로 설정된 경우 MQTT 메시지가 제대로 전송되지 않던 문제를 수정했습니다.
-
OTA 업데이트 에이전트가 config.json에서 keepAlive
속성에 지정된 MQTT KeepAlive
기간을 무시하던 문제를 수정했습니다.
-
일반 성능 향상 및 버그 수정.
스트림 관리자를 사용하여 데이터를 클라우드로 내보내는 경우 이전 v1.x 버전에서 AWS IoT Greengrass Core 소프트웨어 v1.11.3으로 업그레이드하지 마십시오. 스트림 관리자를 처음으로 활성화하는 경우 먼저 최신 버전의 Core 소프트웨어를 설치하는 것이 좋습니다. AWS IoT Greengrass
- 1.11.1
-
버그 수정 및 개선 사항:
-
스트림 관리자의 메모리 사용량이 증가하는 문제가 수정되었습니다.
-
스트림 데이터의 지정된 기간 time-to-live (TTL) 보다 오랫동안 Greengrass 코어 디바이스의 전원이 꺼진 0
경우 스트림 관리자가 스트림의 시퀀스 번호를 재설정하던 문제를 수정했습니다.
-
스트림 관리자가 AWS 클라우드로 데이터를 내보내려는 재시도를 제대로 중단하지 못하던 문제를 수정했습니다.
- 1.11.0
-
새로운 기능:
-
Greengrass 코어의 텔레메트리 에이전트는 로컬 텔레메트리 데이터를 수집하여 게시합니다. AWS 클라우드추가 처리를 위해 원격 분석 데이터를 검색하려는 고객은 Amazon EventBridge 규칙을 생성하고 대상을 구독할 수 있습니다. 자세한 내용은 AWS IoT Greengrass 코어 디바이스에서 시스템 상태 원격 측정 데이터 수집을 참조하십시오.
-
로컬 HTTP API는 에서 시작한 로컬 작업자 프로세스의 현재 상태를 스냅샷으로 AWS IoT Greengrass반환합니다. 자세한 내용은 로컬 상태 확인 API 호출을 참조하십시오.
-
스트림 관리자는 Amazon S3 및 로 데이터를 자동으로 내보냅니다 AWS IoT SiteWise.
새 스트림 관리자 파라미터를 사용하면 기존 스트림을 업데이트하고 데이터 내보내기를 일시 중지하거나 재개할 수 있습니다.
-
코어에서 Python 3.8.x Lambda 함수를 실행하기 위한 지원.
-
Greengrass 코어 IPC 포트 번호를 구성하는 데 사용하는 config.json의 새 ggDaemonPort
속성입니다. 기본 포트 번호는 8000입니다.
Greengrass 코어 IPC 인증에 대한 제한 시간을 구성하는 데 사용하는 config.json의 새 systemComponentAuthTimeout
속성입니다. 기본값은 5,000밀리초입니다.
-
AWS IoT Greengrass 그룹당 최대 AWS IoT 디바이스 수를 200개에서 2500개로 늘렸습니다.
그룹당 최대 구독 수를 1000개에서 10000개로 늘렸습니다.
자세한 내용은 AWS IoT Greengrass
엔드포인트 및 할당량을 참조하세요.
버그 수정 및 개선 사항:
-
Greengrass 서비스 프로세스의 메모리 사용률을 줄일 수 있는 일반 최적화.
-
새로운 런타임 구성 파라미터(mountAllBlockDevices
)를 사용하면 Greengrass가 OverlayFS를 설정한 후 바인드 마운트를 사용하여 모든 블록 장치를 컨테이너에 마운트할 수 있습니다. 이 기능은 /usr
이(가) /
계층 구조 아래에 있지 않을 경우 Greengrass 배포가 실패하는 문제를 해결했습니다.
-
심볼릭 /tmp
링크인 경우 AWS IoT Greengrass 코어 장애가 발생하는 문제를 수정했습니다.
-
Greengrass 배포 에이전트가 mlmodel_public
폴더에서 사용하지 않는 기계 학습 모델 아티팩트를 제거하도록 하는 문제를 수정했습니다.
-
일반 성능 향상 및 버그 수정.
- Extended life versions
-
- 1.10.5
-
버그 수정 및 개선 사항:
- 1.10.4
-
버그 수정 및 개선 사항:
-
Ubuntu 디바이스에서 AWS IoT Greengrass Core 소프트웨어를 순식간에 실행하던 중 디바이스의 전원이 갑자기 끊긴 후 응답하지 않던 문제를 수정했습니다.
-
수명이 긴 Lambda 함수에 MQTT 메시지 전송이 지연되는 문제를 수정했습니다.
-
maxWorkItemCount
값이 1024
보다 큰 값으로 설정된 경우 MQTT 메시지가 제대로 전송되지 않던 문제를 수정했습니다.
-
OTA 업데이트 에이전트가 config.json에서 keepAlive
속성에 지정된 MQTT KeepAlive
기간을 무시하던 문제를 수정했습니다.
-
일반 성능 향상 및 버그 수정.
- 1.10.3
-
버그 수정 및 개선 사항:
-
Greengrass 코어 IPC 인증에 대한 제한 시간을 구성하는 데 사용하는 config.json의 새 systemComponentAuthTimeout
속성입니다. 기본값은 5,000밀리초입니다.
-
스트림 관리자의 메모리 사용량이 증가하는 문제가 수정되었습니다.
- 1.10.2
-
버그 수정 및 개선 사항:
- 1.10.1
-
버그 수정 및 개선 사항:
- 1.10.0
-
새로운 기능:
- 1.9.4
-
버그 수정 및 개선 사항:
- 1.9.3
-
새로운 기능:
-
ARMv6L을 지원합니다. AWS IoT Greengrass 코어 소프트웨어 v1.9.3 이상은 ARMv6L 아키텍처의 라즈비안 배포판 (예: 라즈베리 파이 제로 디바이스) 에 설치할 수 있습니다.
-
ALPN을 통한 포트 443의 OTA 업데이트. MQTT 트래픽에 포트 443을 사용하는 Greengrass 코어는 이제 over-the-air (OTA) 소프트웨어 업데이트를 지원합니다. AWS IoT Greengrass 애플리케이션 계층 프로토콜 네트워크 (ALPN) TLS 확장을 사용하여 이러한 연결을 활성화합니다. 자세한 내용은 AWS IoT Greengrass 코어 소프트웨어의 OTA 업데이트 및 포트 443에서 또는 네트워크 프록시를 통해 연결 섹션을 참조하세요.
버그 수정 및 개선 사항:
- 1.9.2
-
새로운 기능:
- 1.9.1
-
버그 수정 및 개선 사항:
- 1.9.0
-
새로운 기능:
-
Python 3.7 및 Node.js 8.10 Lambda 런타임을 지원합니다. Python 3.7 및 Node.js 8.10 런타임을 사용하는 Lambda 함수는 이제 코어에서 실행할 수 있습니다. AWS IoT Greengrass (Python 2.7 및 Node.js 6.10 런타임을AWS IoT Greengrass 계속 지원합니다.)
-
MQTT 연결을 최적화했습니다. Greengrass 코어는 AWS IoT Core와의 더 적은 수의 연결을 설정합니다. 이 변경에 따라 연결 수를 기반으로 부과되는 요금의 운영 비용을 절감할 수 있습니다.
-
로컬 MQTT 서버에 EC(Elliptic Curve) 키를 사용할 수 있습니다. 로컬 MQTT 서버는 RSA 키 외에도 EC 키를 지원합니다. 키 유형과 상관없이 MQTT 서버 인증서에는 SHA-256 RSA 서명이 있습니다. 자세한 정보는 AWS IoT Greengrass 핵심 보안 원칙을 참조하세요.
버그 수정 및 개선 사항:
- 1.8.4
-
섀도우 동기화 및 장치 인증서 관리자 재연결 문제를 수정했습니다.
일반 성능 향상 및 버그 수정.
- 1.8.3
-
일반 성능 향상 및 버그 수정
- 1.8.2
-
일반 성능 향상 및 버그 수정
- 1.8.1
-
일반 성능 향상 및 버그 수정.
- 1.8.0
-
새로운 기능:
-
그룹의 Lambda 함수에 대해 구성 가능한 기본 액세스 자격 증명. 이 그룹 레벨 설정은 Lambda 함수를 실행하는 데 사용된 기본 권한을 결정합니다. 사용자 ID, 그룹 ID 또는 둘 다 설정할 수 있습니다. 개별 Lambda 함수는 해당 그룹의 기본 액세스 자격 증명을 재정의할 수 있습니다. 자세한 정보는 그룹에 있는 Lambda 함수의 기본 액세스 자격 증명 설정을 참조하세요.
-
포트 443을 통한 HTTPS 트래픽 HTTPS 통신은 기본 포트 8443 대신에 포트 443을 통한 이동을 위해 구성됩니다. 이는 애플리케이션 계층 프로토콜 네트워크 (ALPN) TLS 확장에 대한 AWS IoT Greengrass 지원을 보완하고 모든 Greengrass 메시징 트래픽 (MQTT 및 HTTPS 모두) 이 포트 443을 사용할 수 있도록 합니다. 자세한 정보는 포트 443에서 또는 네트워크 프록시를 통해 연결을 참조하세요.
-
AWS IoT 연결에 사용할 예상 가능한 이름의 클라이언트 ID. 이 변경에 따라 AWS IoT Device Defender 및 AWS IoT 수명 주기 이벤트가 지원되므로 연결, 연결 끊기, 구독 및 구독 해제 이벤트에 대한 알림을 받을 수 있습니다. 또한 예상 가능한 이름을 지정하면 연결 ID를 중심으로 논리를 쉽게 만들 수 있습니다(예: 인증서 속성을 기준으로 구독 정책 템플릿을 만드는 경우). 자세한 정보는 AWS IoT를 통한 MQTT 연결용 클라이언트 ID을 참조하세요.
버그 수정 및 개선 사항:
- 1.7.1
-
새로운 기능:
-
Greengrass 커넥터는 로컬 인프라, 장치 프로토콜 및 기타 클라우드 서비스와의 내장된 통합을 제공합니다. AWS자세한 정보는 Greengrass 커넥터를 사용하여 서비스 및 프로토콜과 통합을 참조하세요.
-
AWS IoT Greengrass 코어 AWS Secrets Manager 디바이스까지 확장되므로 커넥터와 Lambda 함수에서 암호, 토큰 및 기타 암호를 사용할 수 있습니다. 암호는 전송 및 저장 상태에서 암호화됩니다. 자세한 정보는 AWS IoT Greengrass 코어에 암호 배포을 참조하세요.
-
신뢰 보안 옵션의 하드웨어 루트에 대한 지원. 자세한 정보는 하드웨어 보안 통합을 참조하세요.
-
Lambda 함수가 Greengrass 컨테이너 없이 실행되고 지정된 사용자 및 그룹의 권한을 사용할 수 있도록 허용하는 격리 및 권한 설정. 자세한 정보는 그룹별 구성을 사용한 Lambda 함수 실행 제어을 참조하세요.
-
Greengrass 그룹이 컨테이너화 없이 실행되도록 구성하여 Docker 컨테이너 (Windows, macOS 또는 Linux) AWS IoT Greengrass 에서 실행할 수 있습니다. 자세한 정보는 도커 컨테이너에서의 AWS IoT Greengrass 실행을 참조하세요.
-
ALPN(Application Layer Protocol Negotiation) 또는 네트워크 프록시 경유 연결을 통한 포트 443의 MQTT 메시징. 자세한 정보는 포트 443에서 또는 네트워크 프록시를 통해 연결을 참조하세요.
-
SageMaker Neo 딥러닝 런타임은 Neo 딥러닝 컴파일러로 최적화된 머신 러닝 모델을 지원합니다. SageMaker Neo 딥 러닝 런타임에 관해 자세한 내용은 ML 추론을 위한 런타임 및 라이브러리 섹션을 참조하십시오.
-
Raspberry Pi 코어 장치에서 Raspbian Stretch(2018-06-27)에 대한 지원.
버그 수정 및 개선 사항:
그에 더해 이 릴리스로는 다음 기능을 사용할 수 있습니다.
-
AWS IoT 디바이스 테스터: CPU 아키텍처 AWS IoT Greengrass, 커널 구성 및 드라이버가 제대로 작동하는지 확인하는 데 사용할 수 있습니다. AWS IoT Greengrass자세한 정보는 AWS IoT Greengrass V1용 AWS IoT 디바이스 테스터 사용을 참조하세요.
-
AWS IoT Greengrass 코어 소프트웨어, AWS IoT Greengrass 코어 SDK 및 AWS IoT Greengrass Machine Learning SDK 패키지는 Amazon을 통해 다운로드할 수 있습니다. CloudFront 자세한 정보는 AWS IoT Greengrass 다운로드을 참조하세요.
- 1.6.1
-
새로운 기능:
버그 수정 및 개선 사항:
-
Greengrass 코어 내에서, 그리고 장치와 코어 사이에서 메시지 게시 성능이 향상되었습니다.
-
사용자 정의 Lambda 함수에 의해 생성된 로그를 처리하기 위해 필요한 컴퓨팅 리소스가 감소되었습니다.
- 1.5.0
-
새로운 기능:
버그 수정 및 개선 사항:
- 1.3.0
-
새로운 기능:
- 1.1.0
-
새로운 기능:
-
Lambda 함수, 구독 및 구성을 삭제하여 배포된 AWS IoT Greengrass 그룹을 재설정할 수 있습니다. 자세한 정보는 배포 재설정을 참조하세요.
-
Python 2.7 외에 Node.js 6.10 및 Java 8 Lambda 런타임 지원
이전 버전의 코어에서 마이그레이션하려면: AWS IoT Greengrass
-
/greengrass/configuration/certs
폴더에서 /greengrass/certs
로 인증서를 복사합니다.
-
/greengrass/configuration/config.json
를 /greengrass/config/config.json
에 복사합니다.
-
/greengrass/greengrassd
대신 /greengrass/ggc/core/greengrassd
를 실행합니다.
-
새 코어에 그룹을 배포합니다.
- 1.0.0
-
초기 버전
AWS IoT Greengrass 그룹
Greengrass 그룹은 Greengrass 코어, 장치 및 구독과 같은 설정 및 구성 요소의 모음입니다. 그룹은 상호 작용의 범위를 정의하는 데 사용됩니다. 예를 들어, 그룹은 건물의 한 층, 트럭 한 대 또는 전체 채광 현장을 나타낼 수 있습니다. 다음 다이어그램은 Greengrass 그룹을 구성할 수 있는 구성 요소를 보여줍니다.
앞서 제시한 다이어그램에서
배포 시 Greengrass 그룹 정의, Lambda 함수, 커넥터, 리소스 및 구독 테이블이 코어 장치에 복사됩니다. 자세한 정보는 AWS IoT Greengrass 코어에 AWS IoT Greengrass 그룹 배포을 참조하세요.
에 있는 기기 AWS IoT Greengrass
Greengrass 그룹에는 두 가지 유형의 AWS IoT 장치가 포함될 수 있습니다.
- Greengrass 코어
-
Greengrass 코어는 AWS IoT Greengrass Core 소프트웨어를 실행하는 장치로, 이를 통해 서비스와 직접 통신할 수 있습니다. AWS IoT Core AWS IoT Greengrass 코어에는 인증에 사용되는 자체 장치 인증서가 있습니다. AWS IoT Core디바이스 섀도우와 AWS IoT Core 레지스트리 항목이 있습니다. Greengrass 코어는 로컬 Lambda 런타임, 배포 에이전트 및 IP 주소 추적기를 실행하여 IP 주소 정보를 AWS IoT Greengrass 서비스에 전송하여 클라이언트 디바이스가 그룹 및 코어 연결 정보를 자동으로 검색할 수 있도록 합니다. 자세한 정보는 AWS IoT Greengrass 코어 구성을 참조하세요.
Greengrass 그룹은 정확히 하나의 코어를 포함해야 합니다.
- 클라이언트 장치
-
클라이언트 장치(연결된 장치, Greengrass 장치 또는 장치라고도 함)는 MQTT를 통해 Greengrass 코어에 연결하는 장치입니다. 이들은 AWS IoT Core 인증을 위한 자체 디바이스 인증서, 디바이스 섀도 및 레지스트리 항목을 보유하고 있습니다. AWS IoT Core Greengrass 장치는 를 실행하거나 장치 SDKAWS IoT
또는 AWS IoT Greengrass 검색 API를 사용하여 동일한 Greengrass 그룹의 코어에 연결하고 인증하는 데 사용되는 검색 정보를 가져올 수 있습니다. AWS IoT 콘솔을 사용하여 클라이언트 장치를 만들고 구성하는 방법을 AWS IoT Greengrass알아보려면 을 참조하십시오모듈 4: AWS IoT Greengrass 그룹에서 클라이언트 디바이스와 상호 작용. 또는 를 사용하여 클라이언트 장치를 만들고 구성하는 방법을 보여주는 예제는 AWS CLI 명령 create-device-definition참조의 내용을 참조하십시오. AWS CLI AWS IoT Greengrass
Greengrass 그룹에서는 클라이언트 디바이스가 MQTT를 통해 Lambda 함수, 커넥터 및 그룹 내 다른 클라이언트 디바이스와 통신하고 로컬 섀도우 서비스와 통신할 수 있도록 하는 구독을 생성할 수 있습니다. AWS IoT Core MQTT 메시지는 코어를 통해 라우팅됩니다. 코어 장치와 클라우드의 연결이 끊어지면 클라이언트 장치는 로컬 네트워크를 통해 계속 통신할 수 있습니다. 클라이언트 장치는 마이크로 컨트롤러 기반 소형 장치부터 대형 어플라이언스까지 다양한 크기일 수 있습니다. 현재 Greengrass 그룹은 최대 2,500개의 클라이언트 장치를 포함할 수 있습니다. 한 클라이언트 장치는 최대 10개 그룹의 멤버일 수 있습니다.
다음 테이블은 이러한 장치 유형들이 어떤 관계가 있는지를 보여줍니다.
AWS IoT Greengrass 코어 디바이스는 다음 두 위치에 인증서를 저장합니다.
-
/greengrass-root
/certs
의 코어 장치 인증서. 일반적으로 코어 장치 인증서의 이름은 hash
.cert.pem
(예: 86c84488a5.cert.pem
)입니다. 이 인증서는 코어가 AWS IoT Core
및 AWS IoT Greengrass 서비스에 연결될 때 AWS IoT 클라이언트가 상호 인증에 사용합니다.
-
/greengrass-root
/ggc/var/state/server
의 MQTT 서버 인증서. MQTT 서버 인증서의 이름이 server.crt
로 지정됩니다. 이 인증서는 로컬 MQTT 서버(Greengrass 코어에 있음) 사이의 상호 인증에 사용됩니다.
그린그래스-루트는
디바이스에 AWS IoT Greengrass 코어 소프트웨어가 설치된 경로를 나타냅니다. 일반적으로 이는 /greengrass
디렉터리입니다.
SDK
AWS제공된 SDK는 다음과 같은 작업에 사용됩니다. AWS IoT Greengrass
- AWS SDK
-
AWS SDK를 사용하여 Amazon S3, Amazon AWS IoT DynamoDB AWS IoT Greengrass등을 비롯한 모든 AWS 서비스와 상호 작용하는 애플리케이션을 구축할 수 있습니다. 와 관련하여 배포된 Lambda 함수에서 AWS SDK를 사용하여 모든 서비스를 직접 호출할 수 있습니다. AWS IoT Greengrass AWS 자세한 정보는 AWS SDK을 참조하세요.
- AWS IoT 디바이스 SDK
-
AWS IoT 기기 SDK는 기기를 및 에 AWS IoT Core 연결하는 데 도움이 됩니다. AWS IoT Greengrass자세한 내용은 AWS IoT 개발자 안내서의 AWS IoT 장치 SDK 섹션을 참조하세요.
클라이언트 디바이스는 모든 AWS IoT 디바이스 SDK v2 플랫폼을 사용하여 Greengrass 코어의 연결 정보를 검색할 수 있습니다. 연결 정보에는 다음이 포함됩니다.
-
클라이언트 장치가 속한 Greengrass 그룹의 ID.
-
각 그룹에 있는 Greengrass 코어의 IP 주소. 이를 코어 엔드포인트라고도 합니다.
-
장치가 코어와의 상호 인증에 사용하는 그룹 CA 인증서. 자세한 정보는 장치 연결 워크플로을 참조하세요.
AWS IoT 기기 SDK v1에서는 C++ 및 Python 플랫폼만이 내장된 검색 지원을 제공합니다.
- AWS IoT Greengrass 코어 SDK
-
AWS IoT Greengrass 코어 SDK를 사용하면 Lambda 함수가 Greengrass 코어와 상호 작용하고, 메시지를 게시하고, 로컬 섀도우 서비스와 상호 AWS IoT작용하고, 배포된 다른 Lambda 함수를 호출하고, 비밀 리소스에 액세스할 수 있습니다. 이 SDK는 AWS IoT Greengrass 코어에서 실행되는 Lambda 함수가 사용합니다. 자세한 정보는 AWS IoT Greengrass 코어 SDK을 참조하세요.
- AWS IoT Greengrass Machine Learning SDK
-
AWS IoT Greengrass Machine Learning SDK를 사용하면 Lambda 함수가 Greengrass 코어에 배포된 기계 학습 모델을 기계 학습 리소스로 사용할 수 있습니다. 이 SDK는 코어에서 실행되고 로컬 추론 AWS IoT Greengrass 서비스와 상호 작용하는 Lambda 함수에서 사용됩니다. 자세한 정보는 AWS IoT Greengrass기계 학습 SDK을 참조하세요.
다음 탭에는 Core 소프트웨어에 지원되는 플랫폼 및 요구 사항이 나열되어 있습니다. AWS IoT Greengrass
- GGC v1.11
-
지원되는 플랫폼:
요구 사항:
-
AWS IoT Greengrass 코어 소프트웨어에 사용할 수 있는 최소 128MB의 디스크 공간. OTA 업데이트 에이전트를 사용하는 경우 최소 용량은 400MB입니다.
-
AWS IoT Greengrass 코어 소프트웨어에는 최소 128MB RAM이 할당되어 있습니다. 스트림 관리자가 활성화된 경우 최소 크기는 198MB RAM입니다.
AWS IoT 콘솔의 기본 그룹 생성 옵션을 사용하여 Greengrass 그룹을 생성하는 경우 스트림 관리자가 기본적으로 활성화됩니다.
-
Linux 커널 버전:
-
GNU C 라이브러리 (glibc) 버전 2.14 이상 OpenWrt 배포판에는 musl C 라이브러리 버전 1.1.16 이상이 필요합니다.
-
/var/run
디렉터리가 장치에 있어야 합니다.
-
/dev/stdin
, /dev/stdout
및 /dev/stderr
파일이 사용 가능해야 합니다.
-
하드링크 및 소프트링크 보호를 활성화해야 합니다. 그렇지 않으면 AWS IoT Greengrass 플래그를 사용하여 비보안 모드에서만 실행할 수 있습니다. -i
-
장치에서 다음 Linux 커널 구성을 활성화해야 합니다.
-
Amazon S3의 루트 인증서이며 시스템 신뢰 저장소에 AWS IoT 있어야 합니다.
-
스트림 관리자를 사용하려면 기본 AWS IoT Greengrass Core 소프트웨어 메모리 요구 사항 외에도 Java 8 런타임과 최소 70MB RAM이 필요합니다. AWS IoT 콘솔에서 기본 그룹 생성 옵션을 사용하면 스트림 관리자가 기본적으로 활성화됩니다. OpenWrt 배포에서는 스트림 관리자가 지원되지 않습니다.
-
로컬로 실행할 Lambda 함수에 필요한 AWS Lambda 런타임을 지원하는 라이브러리. 필수 라이브러리를 코어에 설치하고 PATH
환경 변수에 추가해야 합니다. 동일한 코어에 여러 라이브러리를 설치할 수 있습니다.
-
Python 3.8 런타임을 사용하는 기능의 경우 Python 버전 3.8.
-
Python 3.7 실행 시간을 사용하는 기능의 경우 Python 버전 3.7.
-
Python 2.7 실행 시간을 사용하는 기능의 경우 Python 버전 2.7.
-
Node.js 12.x 런타임을 사용하는 함수의 경우 Node.js 버전 12.x.
-
Java 8 런타임을 사용하는 함수의 경우 Java 버전 8 이상
OpenWrt 배포판에서 Java를 실행하는 것은 공식적으로 지원되지 않습니다. 하지만 OpenWrt 빌드에서 Java를 지원하는 경우 Java로 작성된 Lambda 함수를 디바이스에서 실행할 수 있습니다. OpenWrt
Lambda AWS IoT Greengrass 런타임 지원에 대한 자세한 내용은 을 참조하십시오. AWS IoT Greengrass 코어에서 Lambda 함수 실행
-
(OTA) 업데이트 에이전트에는 다음과 같은 셸 명령 over-the-air ( BusyBox 변형 제외) 이 필요합니다.
-
wget
-
realpath
-
tar
-
readlink
-
basename
-
dirname
-
pidof
-
df
-
grep
-
umount
-
mv
-
gzip
-
mkdir
-
rm
-
ln
-
cut
-
cat
-
/bin/bash
- GGC v1.10
-
지원되는 플랫폼:
요구 사항:
-
AWS IoT Greengrass 코어 소프트웨어에 사용할 수 있는 최소 128MB의 디스크 공간. OTA 업데이트 에이전트를 사용하는 경우 최소 용량은 400MB입니다.
-
AWS IoT Greengrass 코어 소프트웨어에는 최소 128MB RAM이 할당되어 있습니다. 스트림 관리자가 활성화된 경우 최소 크기는 198MB RAM입니다.
AWS IoT 콘솔의 기본 그룹 생성 옵션을 사용하여 Greengrass 그룹을 생성하는 경우 스트림 관리자가 기본적으로 활성화됩니다.
-
Linux 커널 버전:
-
GNU C 라이브러리 (glibc) 버전 2.14 이상 OpenWrt 배포판에는 musl C 라이브러리 버전 1.1.16 이상이 필요합니다.
-
/var/run
디렉터리가 장치에 있어야 합니다.
-
/dev/stdin
, /dev/stdout
및 /dev/stderr
파일이 사용 가능해야 합니다.
-
하드링크 및 소프트링크 보호를 활성화해야 합니다. 그렇지 않으면 AWS IoT Greengrass 플래그를 사용하여 비보안 모드에서만 실행할 수 있습니다. -i
-
장치에서 다음 Linux 커널 구성을 활성화해야 합니다.
-
Amazon S3의 루트 인증서이며 시스템 신뢰 저장소에 AWS IoT 있어야 합니다.
-
스트림 관리자를 사용하려면 기본 AWS IoT Greengrass Core 소프트웨어 메모리 요구 사항 외에도 Java 8 런타임과 최소 70MB RAM이 필요합니다. AWS IoT 콘솔에서 기본 그룹 생성 옵션을 사용하면 스트림 관리자가 기본적으로 활성화됩니다. OpenWrt 배포에서는 스트림 관리자가 지원되지 않습니다.
-
로컬로 실행할 Lambda 함수에 필요한 AWS Lambda 런타임을 지원하는 라이브러리. 필수 라이브러리를 코어에 설치하고 PATH
환경 변수에 추가해야 합니다. 동일한 코어에 여러 라이브러리를 설치할 수 있습니다.
-
Python 3.7 실행 시간을 사용하는 기능의 경우 Python 버전 3.7.
-
Python 2.7 실행 시간을 사용하는 기능의 경우 Python 버전 2.7.
-
Node.js 12.x 런타임을 사용하는 함수의 경우 Node.js 버전 12.x.
-
Java 8 런타임을 사용하는 함수의 경우 Java 버전 8 이상
OpenWrt 배포판에서 Java를 실행하는 것은 공식적으로 지원되지 않습니다. 하지만 OpenWrt 빌드에서 Java를 지원하는 경우 Java로 작성된 Lambda 함수를 디바이스에서 실행할 수 있습니다. OpenWrt
Lambda AWS IoT Greengrass 런타임 지원에 대한 자세한 내용은 을 참조하십시오. AWS IoT Greengrass 코어에서 Lambda 함수 실행
-
(OTA) 업데이트 에이전트에는 다음과 같은 셸 명령 over-the-air ( BusyBox 변형 제외) 이 필요합니다.
-
wget
-
realpath
-
tar
-
readlink
-
basename
-
dirname
-
pidof
-
df
-
grep
-
umount
-
mv
-
gzip
-
mkdir
-
rm
-
ln
-
cut
-
cat
-
/bin/bash
- GGC v1.9
-
지원되는 플랫폼:
요구 사항:
-
AWS IoT Greengrass 코어 소프트웨어에 사용할 수 있는 최소 128MB의 디스크 공간. OTA 업데이트 에이전트를 사용하는 경우 최소 용량은 400MB입니다.
-
AWS IoT Greengrass 코어 소프트웨어에는 최소 128MB RAM이 할당되어 있습니다.
-
Linux 커널 버전:
-
컨테이너 실행을 AWS IoT Greengrass 지원하려면 Linux 커널 버전 4.4 이상이 필요합니다.
-
컨테이너 AWS IoT Greengrass 없이 실행되도록 지원하려면 Linux 커널 버전 3.17 이상이 필요합니다. 이 구성에서 Greengrass 그룹에 대한 기본 Lambda 함수 컨테이너화는 컨테이너 없음으로 설정해야 합니다. 지침은 그룹 내 Lambda 함수의 기본 컨테이너화 설정 섹션을 참조하세요.
-
GNU C 라이브러리 (glibc) 버전 2.14 이상 OpenWrt 배포판에는 musl C 라이브러리 버전 1.1.16 이상이 필요합니다.
-
/var/run
디렉터리가 장치에 있어야 합니다.
-
/dev/stdin
, /dev/stdout
및 /dev/stderr
파일이 사용 가능해야 합니다.
-
하드링크 및 소프트링크 보호를 활성화해야 합니다. 그렇지 않으면 AWS IoT Greengrass 플래그를 사용하여 비보안 모드에서만 실행할 수 있습니다. -i
-
장치에서 다음 Linux 커널 구성을 활성화해야 합니다.
-
Amazon S3의 루트 인증서이며 시스템 신뢰 저장소에 AWS IoT 있어야 합니다.
-
로컬로 실행할 Lambda 함수에 필요한 AWS Lambda 런타임을 지원하는 라이브러리. 필수 라이브러리를 코어에 설치하고 PATH
환경 변수에 추가해야 합니다. 동일한 코어에 여러 라이브러리를 설치할 수 있습니다.
-
Python 2.7 실행 시간을 사용하는 기능의 경우 Python 버전 2.7.
-
Python 3.7 실행 시간을 사용하는 기능의 경우 Python 버전 3.7.
-
Node.js 6.10 실행 시간을 사용하는 기능의 경우 Node.js 버전 6.10 이상.
-
Node.js 8.10 실행 시간을 사용하는 기능의 경우 Node.js 버전 8.10 이상.
-
Java 8 런타임을 사용하는 함수의 경우 Java 버전 8 이상
OpenWrt 배포판에서 Java를 실행하는 것은 공식적으로 지원되지 않습니다. 하지만 OpenWrt 빌드에서 Java를 지원하는 경우 Java로 작성된 Lambda 함수를 디바이스에서 실행할 수 있습니다. OpenWrt
Lambda AWS IoT Greengrass 런타임 지원에 대한 자세한 내용은 을 참조하십시오. AWS IoT Greengrass 코어에서 Lambda 함수 실행
-
(OTA) 업데이트 에이전트에는 다음과 같은 셸 명령 over-the-air ( BusyBox 변형 제외) 이 필요합니다.
-
wget
-
realpath
-
tar
-
readlink
-
basename
-
dirname
-
pidof
-
df
-
grep
-
umount
-
mv
-
gzip
-
mkdir
-
rm
-
ln
-
cut
-
cat
- GGC v1.8
-
-
지원되는 플랫폼:
-
다음과 같은 항목이 필요합니다.
-
AWS IoT Greengrass 코어 소프트웨어에 사용할 수 있는 최소 128MB의 디스크 공간. OTA 업데이트 에이전트를 사용하는 경우 최소 용량은 400MB입니다.
-
AWS IoT Greengrass 코어 소프트웨어에는 최소 128MB RAM이 할당되어 있습니다.
-
Linux 커널 버전:
-
컨테이너 실행을 AWS IoT Greengrass 지원하려면 Linux 커널 버전 4.4 이상이 필요합니다.
-
컨테이너 AWS IoT Greengrass 없이 실행되도록 지원하려면 Linux 커널 버전 3.17 이상이 필요합니다. 이 구성에서 Greengrass 그룹에 대한 기본 Lambda 함수 컨테이너화는 컨테이너 없음으로 설정해야 합니다. 지침은 그룹 내 Lambda 함수의 기본 컨테이너화 설정 섹션을 참조하세요.
-
GNU C Library(glibc) 버전 2.14 이상.
-
/var/run
디렉터리가 장치에 있어야 합니다.
-
/dev/stdin
, /dev/stdout
및 /dev/stderr
파일이 사용 가능해야 합니다.
-
하드링크 및 소프트링크 보호를 활성화해야 합니다. 그렇지 않으면 AWS IoT Greengrass 플래그를 사용하여 비보안 모드에서만 실행할 수 있습니다. -i
-
장치에서 다음 Linux 커널 구성을 활성화해야 합니다.
-
Amazon S3의 루트 인증서이며 시스템 신뢰 저장소에 AWS IoT 있어야 합니다.
-
조건에 따라 다음 항목이 필요합니다.
할당량 (한도) 에 대한 자세한 내용은 의 Service AWS IoT Greengrass Quotas를 참조하십시오. Amazon Web Services 일반 참조
요금 정보는 AWS IoT Greengrass 요금 및 AWS IoT Core 요금 섹션을 참조하십시오.
AWS IoT Greengrass 다운로드
다음 정보를 사용하여 AWS IoT Greengrass에 사용할 소프트웨어를 찾아 다운로드할 수 있습니다.
AWS IoT Greengrass 코어 소프트웨어
AWS IoT Greengrass 코어 소프트웨어는 AWS 기능을 AWS IoT Greengrass 코어 장치로 확장하여 로컬 장치가 생성한 데이터에 대해 로컬에서 작업할 수 있도록 합니다.
- v1.11
-
- 1.11.6
-
버그 수정 및 개선 사항:
-
배포 중에 갑작스러운 전력 손실이 발생할 경우 복원력이 향상되었습니다.
-
스트림 관리자 데이터 손상으로 인해 AWS IoT Greengrass Core 소프트웨어가 시작되지 않는 문제가 수정되었습니다.
-
특정 시나리오에서 새 클라이언트 장치를 코어에 연결할 수 없는 문제를 수정했습니다.
-
스트림 관리자 스트림 이름이 .log
를 포함할 수 없던 문제를 수정했습니다.
- 1.11.5
-
버그 수정 및 개선 사항:
- 1.11.4
-
버그 수정 및 개선 사항:
- 1.11.3
-
버그 수정 및 개선 사항:
-
Ubuntu 디바이스에서 AWS IoT Greengrass Core 소프트웨어를 순식간에 실행하던 중 디바이스의 전원이 갑자기 끊긴 후 응답하지 않던 문제를 수정했습니다.
-
수명이 긴 Lambda 함수에 MQTT 메시지 전송이 지연되는 문제를 수정했습니다.
-
maxWorkItemCount
값이 1024
보다 큰 값으로 설정된 경우 MQTT 메시지가 제대로 전송되지 않던 문제를 수정했습니다.
-
OTA 업데이트 에이전트가 config.json에서 keepAlive
속성에 지정된 MQTT KeepAlive
기간을 무시하던 문제를 수정했습니다.
-
일반 성능 향상 및 버그 수정.
스트림 관리자를 사용하여 데이터를 클라우드로 내보내는 경우 이전 v1.x 버전에서 AWS IoT Greengrass Core 소프트웨어 v1.11.3으로 업그레이드하지 마십시오. 스트림 관리자를 처음으로 활성화하는 경우 먼저 최신 버전의 Core 소프트웨어를 설치하는 것이 좋습니다. AWS IoT Greengrass
- 1.11.1
-
버그 수정 및 개선 사항:
-
스트림 관리자의 메모리 사용량이 증가하는 문제가 수정되었습니다.
-
스트림 데이터의 지정된 기간 time-to-live (TTL) 보다 오랫동안 Greengrass 코어 디바이스의 전원이 꺼진 0
경우 스트림 관리자가 스트림의 시퀀스 번호를 재설정하던 문제를 수정했습니다.
-
스트림 관리자가 AWS 클라우드로 데이터를 내보내려는 재시도를 제대로 중단하지 못하던 문제를 수정했습니다.
- 1.11.0
-
새로운 기능:
-
Greengrass 코어의 텔레메트리 에이전트는 로컬 텔레메트리 데이터를 수집하여 게시합니다. AWS 클라우드추가 처리를 위해 원격 분석 데이터를 검색하려는 고객은 Amazon EventBridge 규칙을 생성하고 대상을 구독할 수 있습니다. 자세한 내용은 AWS IoT Greengrass 코어 디바이스에서 시스템 상태 원격 측정 데이터 수집을 참조하십시오.
-
로컬 HTTP API는 에서 시작한 로컬 작업자 프로세스의 현재 상태를 스냅샷으로 AWS IoT Greengrass반환합니다. 자세한 내용은 로컬 상태 확인 API 호출을 참조하십시오.
-
스트림 관리자는 Amazon S3 및 로 데이터를 자동으로 내보냅니다 AWS IoT SiteWise.
새 스트림 관리자 파라미터를 사용하면 기존 스트림을 업데이트하고 데이터 내보내기를 일시 중지하거나 재개할 수 있습니다.
-
코어에서 Python 3.8.x Lambda 함수를 실행하기 위한 지원.
-
Greengrass 코어 IPC 포트 번호를 구성하는 데 사용하는 config.json의 새 ggDaemonPort
속성입니다. 기본 포트 번호는 8000입니다.
Greengrass 코어 IPC 인증에 대한 제한 시간을 구성하는 데 사용하는 config.json의 새 systemComponentAuthTimeout
속성입니다. 기본값은 5,000밀리초입니다.
-
AWS IoT Greengrass 그룹당 최대 AWS IoT 디바이스 수를 200개에서 2500개로 늘렸습니다.
그룹당 최대 구독 수를 1000개에서 10000개로 늘렸습니다.
자세한 내용은 AWS IoT Greengrass
엔드포인트 및 할당량을 참조하세요.
버그 수정 및 개선 사항:
-
Greengrass 서비스 프로세스의 메모리 사용률을 줄일 수 있는 일반 최적화.
-
새로운 런타임 구성 파라미터(mountAllBlockDevices
)를 사용하면 Greengrass가 OverlayFS를 설정한 후 바인드 마운트를 사용하여 모든 블록 장치를 컨테이너에 마운트할 수 있습니다. 이 기능은 /usr
이(가) /
계층 구조 아래에 있지 않을 경우 Greengrass 배포가 실패하는 문제를 해결했습니다.
-
심볼릭 /tmp
링크인 경우 AWS IoT Greengrass 코어 장애가 발생하는 문제를 수정했습니다.
-
Greengrass 배포 에이전트가 mlmodel_public
폴더에서 사용하지 않는 기계 학습 모델 아티팩트를 제거하도록 하는 문제를 수정했습니다.
-
일반 성능 향상 및 버그 수정.
AWS IoT Greengrass 코어 디바이스에 Core 소프트웨어를 설치하려면 아키텍처 및 운영 체제 (OS) 용 패키지를 다운로드한 다음 시작 안내서의 단계를 따르십시오.
아키텍처 |
운영 체제 |
링크 |
ARMv8(AArch64) |
Linux |
다운로드 |
ARMv8(AArch64) |
Linux () OpenWrt |
다운로드 |
Armv7l |
Linux |
다운로드 |
Armv7l |
리눅스 (OpenWrt) |
다운로드 |
Armv6l |
Linux |
다운로드 |
x86_64 |
Linux |
다운로드 |
- Extended life versions
-
- 1.10.5
-
v1.10의 새로운 기능:
버그 수정 및 개선 사항:
-
하드웨어 보안 통합을 통한 O ver-the-air (OTA) 업데이트는 OpenSSL 1.1을 사용하여 구성할 수 있습니다.
-
스트림 관리자는 파일 데이터 손상에 대한 복원력이 더 뛰어납니다.
-
Linux 커널 5.1 이상을 사용하는 장치에 sysfs를 탑재하지 못하는 문제를 수정했습니다.
-
MQTT 연결에서 게시, 구독 및 구독 취소 작업에 대한 제한 시간을 설정하는 데 사용하는 config.json의 새 mqttOperationTimeout
속성입니다. AWS IoT Core
-
스트림 관리자의 메모리 사용량이 증가하는 문제가 수정되었습니다.
-
Greengrass 코어 IPC 인증에 대한 제한 시간을 구성하는 데 사용하는 config.json의 새 systemComponentAuthTimeout
속성입니다. 기본값은 5,000밀리초입니다.
-
OTA 업데이트 에이전트가 config.json에서 keepAlive
속성에 지정된 MQTT KeepAlive
기간을 무시하던 문제를 수정했습니다.
-
maxWorkItemCount
값이 1024
보다 큰 값으로 설정된 경우 MQTT 메시지가 제대로 전송되지 않던 문제를 수정했습니다.
-
수명이 긴 Lambda 함수에 MQTT 메시지 전송이 지연되는 문제를 수정했습니다.
-
Ubuntu 디바이스에서 AWS IoT Greengrass Core 소프트웨어를 순식간에 실행하던 중 디바이스의 전원이 갑자기 끊긴 후 응답하지 않던 문제를 수정했습니다.
-
일반 성능 향상 및 버그 수정.
AWS IoT Greengrass 코어 디바이스에 Core 소프트웨어를 설치하려면 사용 중인 아키텍처 및 운영 체제 (OS) 용 패키지를 다운로드한 다음 시작 안내서의 단계를 따르십시오.
아키텍처 |
운영 체제 |
링크 |
ARMv8(AArch64) |
Linux |
다운로드 |
ARMv8(AArch64) |
Linux (OpenWrt) |
다운로드 |
Armv7l |
Linux |
다운로드 |
Armv7l |
리눅스 (OpenWrt) |
다운로드 |
Armv6l |
Linux |
다운로드 |
x86_64 |
Linux |
다운로드 |
- 1.9.4
-
v1.9의 새로운 기능:
-
Python 3.7 및 Node.js 8.10 Lambda 런타임을 지원합니다. Python 3.7 및 Node.js 8.10 런타임을 사용하는 Lambda 함수는 이제 코어에서 실행할 수 있습니다. AWS IoT Greengrass (Python 2.7 및 Node.js 6.10 런타임을AWS IoT Greengrass 계속 지원합니다.)
-
MQTT 연결을 최적화했습니다. Greengrass 코어는 AWS IoT Core와의 더 적은 수의 연결을 설정합니다. 이 변경에 따라 연결 수를 기반으로 부과되는 요금의 운영 비용을 절감할 수 있습니다.
-
로컬 MQTT 서버에 EC(Elliptic Curve) 키를 사용할 수 있습니다. 로컬 MQTT 서버는 RSA 키 외에도 EC 키를 지원합니다. 키 유형과 상관없이 MQTT 서버 인증서에는 SHA-256 RSA 서명이 있습니다. 자세한 정보는 AWS IoT Greengrass 핵심 보안 원칙을 참조하세요.
-
에 대한 지원 OpenWrt. AWS IoT Greengrass Armv8 (AArch64) 및 ARMv7L 아키텍처를 사용하는 OpenWrt 배포판에 코어 소프트웨어 v1.9.2 이상을 설치할 수 있습니다. OpenWrt 현재는 ML 추론을 지원하지 않습니다.
-
ARMv6L을 지원합니다. AWS IoT Greengrass 코어 소프트웨어 v1.9.3 이상은 ARMv6L 아키텍처의 라즈비안 배포판 (예: 라즈베리 파이 제로 디바이스) 에 설치할 수 있습니다.
-
ALPN을 통한 포트 443의 OTA 업데이트. MQTT 트래픽에 포트 443을 사용하는 Greengrass 코어는 이제 over-the-air (OTA) 소프트웨어 업데이트를 지원합니다. AWS IoT Greengrass 애플리케이션 계층 프로토콜 네트워크 (ALPN) TLS 확장을 사용하여 이러한 연결을 활성화합니다. 자세한 내용은 AWS IoT Greengrass 코어 소프트웨어의 OTA 업데이트 및 포트 443에서 또는 네트워크 프록시를 통해 연결 섹션을 참조하세요.
코어 디바이스에 AWS IoT Greengrass 코어 소프트웨어를 설치하려면 아키텍처 및 운영 체제 (OS) 용 패키지를 다운로드한 다음 시작 안내서의 단계를 따르십시오.
아키텍처 |
운영 체제 |
링크 |
ARMv8(AArch64) |
Linux |
다운로드 |
ARMv8(AArch64) |
Linux (OpenWrt) |
다운로드 |
Armv7l |
Linux |
다운로드 |
Armv7l |
리눅스 (OpenWrt) |
다운로드 |
Armv6l |
Linux |
다운로드 |
x86_64 |
Linux |
다운로드 |
- 1.8.4
-
-
새로운 기능:
-
그룹의 Lambda 함수에 대해 구성 가능한 기본 액세스 자격 증명. 이 그룹 레벨 설정은 Lambda 함수를 실행하는 데 사용된 기본 권한을 결정합니다. 사용자 ID, 그룹 ID 또는 둘 다 설정할 수 있습니다. 개별 Lambda 함수는 해당 그룹의 기본 액세스 자격 증명을 재정의할 수 있습니다. 자세한 정보는 그룹에 있는 Lambda 함수의 기본 액세스 자격 증명 설정을 참조하세요.
-
포트 443을 통한 HTTPS 트래픽 HTTPS 통신은 기본 포트 8443 대신에 포트 443을 통한 이동을 위해 구성됩니다. 이는 애플리케이션 계층 프로토콜 네트워크 (ALPN) TLS 확장에 대한 AWS IoT Greengrass 지원을 보완하고 모든 Greengrass 메시징 트래픽 (MQTT 및 HTTPS 모두) 이 포트 443을 사용할 수 있도록 합니다. 자세한 정보는 포트 443에서 또는 네트워크 프록시를 통해 연결을 참조하세요.
-
AWS IoT 연결에 사용할 예상 가능한 이름의 클라이언트 ID. 이 변경에 따라 AWS IoT Device Defender 및 AWS IoT 수명 주기 이벤트가 지원되므로 연결, 연결 끊기, 구독 및 구독 해제 이벤트에 대한 알림을 받을 수 있습니다. 또한 예상 가능한 이름을 지정하면 연결 ID를 중심으로 논리를 쉽게 만들 수 있습니다(예: 인증서 속성을 기준으로 구독 정책 템플릿을 만드는 경우). 자세한 정보는 AWS IoT를 통한 MQTT 연결용 클라이언트 ID을 참조하세요.
버그 수정 및 개선 사항:
AWS IoT Greengrass 코어 장치에 Core 소프트웨어를 설치하려면 아키텍처 및 운영 체제 (OS) 용 패키지를 다운로드한 다음 시작 안내서의 단계를 따르십시오.
아키텍처 |
운영 체제 |
링크 |
ARMv8(AArch64) |
Linux |
다운로드 |
Armv7l |
Linux |
다운로드 |
x86_64 |
Linux |
다운로드 |
이 소프트웨어를 다운로드하면 Greengrass 코어 소프트웨어 라이선스 계약에 동의하는 것입니다.
장치에 AWS IoT Greengrass Core 소프트웨어를 설치하기 위한 다른 옵션에 대한 자세한 내용은 을 참조하십시오AWS IoT Greengrass 코어 소프트웨어 설치.
AWS IoT Greengrass 스냅 소프트웨어
AWS IoT Greengrass 스냅 1.11.x를 사용하면 컨테이너화된 환경에서 필요한 모든 종속성과 함께 편리한 소프트웨어 패키지를 AWS IoT Greengrass 통해 제한된 버전을 실행할 수 있습니다.
AWS IoT Greengrass 스냅은 Core 소프트웨어 v1.11.x에서 사용할 수 있습니다. AWS IoT Greengrass AWS IoT Greengrass v1.10.x에는 스냅을 제공하지 않습니다. 지원되지 않는 버전에는 버그 수정 또는 업데이트가 제공되지 않습니다.
AWS IoT Greengrass 스냅은 커넥터 및 기계 학습 (ML) 추론을 지원하지 않습니다.
자세한 정보는 스냅에서 AWS IoT Greengrass 실행을 참조하세요.
AWS IoT Greengrass Docker 소프트웨어
AWS Docker 컨테이너에서 더 쉽게 실행할 AWS IoT Greengrass 수 있도록 Dockerfile 및 Docker 이미지를 제공합니다.
- Dockerfile
-
Dockerfile에는 사용자 지정 컨테이너 이미지를 빌드하기 위한 소스 코드가 포함되어 있습니다. AWS IoT Greengrass 다른 플랫폼 아키텍처에서 실행하거나 이미지 크기를 줄이기 위해 이미지를 수정할 수 있습니다. 지침은 README 파일을 참조하십시오.
대상 AWS IoT Greengrass Core 소프트웨어 버전을 다운로드하세요.
- v1.11
-
- Extended life versions
-
- 도커 이미지
-
도커 이미지에는 아마존 리눅스 2 (x86_64) 및 알파인 리눅스 (x86_64, ARMv7l 또는 AArch64) 기반 이미지에 AWS IoT Greengrass 코어 소프트웨어 및 종속 항목이 설치되어 있습니다. 미리 빌드된 이미지를 사용하여 AWS IoT Greengrass실험을 시작할 수 있습니다.
2022년 6월 30일에 Amazon Elastic Container Registry (Amazon ECR) 및 Docker Hub에 게시된 AWS IoT Greengrass 코어 소프트웨어 v1.x Docker 이미지에 대한 유지 관리가 AWS IoT Greengrass 종료되었습니다. 유지 관리 종료 후 1년이 되는 2023년 6월 30일까지 Amazon ECR 및 Docker Hub에서 이 Docker 이미지를 계속 다운로드할 수 있습니다. 하지만 2022년 6월 30일 AWS IoT Greengrass 유지 관리가 종료된 이후에는 코어 소프트웨어 v1.x Docker 이미지에 더 이상 보안 패치나 버그 수정이 제공되지 않습니다. 이러한 Docker 이미지를 사용하는 프로덕션 워크로드를 실행하는 경우 제공되는 Dockerfile을 사용하여 자체 Docker 이미지를 빌드하는 것이 좋습니다. AWS IoT Greengrass 자세한 정보는 AWS IoT Greengrass Version 1 유지 관리 정책을 참조하세요.
Docker Hub 또는 Amazon Elastic Container Registry(Amazon ECR)에서 미리 제작된 이미지를 다운로드합니다.
-
Docker Hub의 경우 버전
태그를 사용하여 Greengrass Docker 이미지의 특정 버전을 다운로드할 수 있습니다. 사용 가능한 모든 이미지에 대한 태그를 찾으려면 Docker Hub의 태그 페이지를 확인하십시오.
-
Amazon ECR의 경우 latest
태그를 사용하여 사용 가능한 최신 버전의 Greengrass Docker 이미지를 다운로드할 수 있습니다. 사용 가능한 이미지 버전을 나열하고 Amazon ECR에서 이미지를 다운로드하는 방법에 대한 자세한 내용은 도커 컨테이너에서의 AWS IoT Greengrass 실행 섹션을 참조하세요.
AWS IoT Greengrass 코어 소프트웨어 v1.11.6부터 Greengrass Docker 이미지에는 더 이상 Python 2.7이 포함되지 않습니다. Python 2.7이 end-of-life 2020년에 출시되었고 더 이상 보안 업데이트를 받지 않았기 때문입니다. 이러한 Docker 이미지로 업데이트하기로 선택한 경우, 업데이트를 프로덕션 장치에 배포하기 전에 애플리케이션이 새 Docker 이미지와 호환되는지 확인하는 것을 권장합니다. Greengrass Docker 이미지를 사용하는 애플리케이션에 Python 2.7이 필요한 경우, Python 2.7을 애플리케이션에 포함하도록 Greengrass Dockerfile을 수정할 수 있습니다.
AWS IoT Greengrass 코어 소프트웨어 v1.11.1의 도커 이미지는 제공하지 않습니다. AWS IoT Greengrass
기본적으로 alpine-aarch64
및 alpine-armv7l
이미지는 Arm 기반 호스트에서만 실행할 수 있습니다. x86 호스트에서 이러한 이미지를 실행하려면 QEMU를 설치하고 호스트에 QEMU 라이브러리를 탑재할 수 있습니다. 예:
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
AWS IoT Greengrass 코어 SDK
Lambda 함수는 Core SDK를 사용하여 AWS IoT Greengrass 로컬에서 코어와 상호 작용합니다. AWS IoT Greengrass 이를 통해 배포된 Lambda 함수로 다음 작업이 가능합니다.
-
MQTT 메시지를 와 교환하십시오. AWS IoT Core
-
MQTT 메시지를 Greengrass 그룹의 커넥터, 장치, 기타 Lambda 함수와 교환합니다.
-
로컬 섀도우 서비스와 상호 작용합니다.
-
다른 로컬 Lambda 함수를 간접적으로 호출합니다.
-
암호 리소스에 액세스합니다.
-
스트림 관리자와 상호 작용합니다.
에서 해당 언어 또는 플랫폼에 맞는 AWS IoT Greengrass Core SDK를 다운로드하십시오. GitHub
자세한 정보는 AWS IoT Greengrass 코어 SDK을 참조하세요.
지원되는 기계 학습 런타임 및 라이브러리
Greengrass 코어에 대한 추론을 수행하려면 ML 모델 유형에 맞는 기계 학습 런타임 또는 라이브러리를 설치해야 합니다.
AWS IoT Greengrass 다음 ML 모델 유형을 지원합니다. 다음 링크에서 모델 유형 및 장치 플랫폼에 맞는 런타임 또는 라이브러리를 설치하는 방법에 대한 정보를 찾을 수 있습니다.
기계 학습 샘플
AWS IoT Greengrass 지원되는 ML 런타임 및 라이브러리와 함께 사용할 수 있는 샘플을 제공합니다. 이러한 샘플은 Greengrass 코어 소프트웨어 라이선스 계약에 따라 릴리스됩니다.
- Deep learning runtime (DLR)
-
사용 중인 장치 플랫폼에 해당하는 샘플을 다운로드합니다.
DLR 샘플을 사용하는 튜토리얼은 AWS Management Console을 사용하여 최적화된 기계 학습 추론을 구성하는 방법 섹션을 참조하십시오.
- MXNet
-
사용 중인 장치 플랫폼에 해당하는 샘플을 다운로드합니다.
MXNet 샘플을 사용하는 튜토리얼은 AWS Management Console을 사용하여 기계 학습 추론을 구성하는 방법 섹션을 참조하십시오.
- TensorFlow
-
장치 플랫폼용 TensorFlow 샘플을 다운로드하십시오. 이 샘플은 Raspberry Pi, NVIDIA Jetson TX2 및 Intel Atom과 함께 작동합니다.
AWS IoT Greengrass ML SDK 소프트웨어
AWS IoT Greengrass기계 학습 SDK을 사용하면 사용자가 작성하는 Lambda 함수가 로컬 기계 학습 모델을 사용하고 업로드 및 게시를 위해 ML 피드백 커넥터로 데이터를 전송할 수 있습니다.
- v1.1.0
-
- v1.0.0
-
우리는 여러분의 의견을 환영합니다. 문의하려면 AWS re:Post를 방문하여AWS IoT Greengrass 태그를 사용하십시오.