AWS IoT Greengrass란 무엇인가요? - AWS IoT Greengrass

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하는 것이 좋습니다. 그러면 추가 플랫폼에 대한 중요한 새로운 기능과 지원이 추가됩니다. https://docs.aws.amazon.com/greengrass/v2/developerguide/operating-system-feature-support-matrix.html

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS IoT Greengrass란 무엇인가요?

AWS IoT Greengrass 는 클라우드 기능을 로컬 디바이스로 확장하는 소프트웨어입니다. 덕분에 장치는 정보 소스와 보다 밀접한 데이터를 수집 및 분석하고, 로컬 이벤트에 자율적으로 응답하며, 로컬 네트워크에서 서로 안전하게 통신할 수 있습니다. 또한 로컬 디바이스는와 안전하게 통신 AWS IoT Core 하고 IoT 데이터를 로 내보낼 수 있습니다 AWS 클라우드. AWS IoT Greengrass 개발자는 AWS Lambda 함수와 사전 구축된 커넥터를 사용하여 로컬 실행을 위해 디바이스에 배포되는 서버리스 애플리케이션을 생성할 수 있습니다.

다음 다이어그램은의 기본 아키텍처를 보여줍니다 AWS IoT Greengrass.

Greengrass 코어를 사용하면 Lambda, 메시징, 디바이스 섀도우 및 보안 기능을 로컬에서 실행할 수 있습니다. Greengrass 코어는와 상호 작용 AWS 클라우드 하고 간헐적인 연결로 로컬에서 작동합니다.

AWS IoT Greengrass 를 사용하면 고객이 IoT 디바이스 및 애플리케이션 로직을 구축할 수 있습니다. 특히, 디바이스에서 실행되는 애플리케이션 로직의 클라우드 기반 관리를 AWS IoT Greengrass 제공합니다. 로컬로 배포된 Lambda 함수와 커넥터는 로컬 이벤트, 클라우드의 메시지 또는 기타 소스에서 트리거됩니다.

에서 AWS IoT Greengrass디바이스는 클라우드에 연결할 필요 없이 로컬 네트워크에서 안전하게 통신하고 서로 메시지를 교환합니다.는 연결이 끊어지면 메시지를 지능적으로 버퍼링하여 클라우드에 대한 인바운드 및 아웃바운드 메시지를 보존할 수 있는 로컬 pub/sub 메시지 관리자를 AWS IoT Greengrass 제공합니다.

AWS IoT Greengrass 는 사용자 데이터를 보호합니다.

  • 보안 인증 및 장치 인증을 통해 보호합니다.

  • 로컬 네트워크에서 보안 연결을 통해 보호합니다.

  • 로컬 장치와 클라우드 간에 보호합니다.

클라우드와의 연결이 끊어져도 장치 보안 자격 증명은 해지될 때까지 하나의 그룹 내에서 작동하므로 장치가 로컬에서 계속 안전하게 통신을 실행할 수 있습니다.

AWS IoT Greengrass 는 Lambda 함수의 안전한 over-the-air 업데이트를 제공합니다.

AWS IoT Greengrass 는 다음으로 구성됩니다.

  • 소프트웨어 배포

    • AWS IoT Greengrass 코어 소프트웨어

    • AWS IoT Greengrass 코어 SDK

  • 클라우드 서비스

    • AWS IoT Greengrass API

  • Features

    • Lambda 런타임

    • 섀도우 구현

    • 메시지 관리자

    • 그룹 관리

    • 검색 서비스

    • OTA(무선) 업데이트 에이전트

    • 스트림 관리자

    • 로컬 리소스 액세스

    • 로컬 기계 학습 추론

    • 로컬 암호 관리자

    • 서비스, 프로토콜 및 소프트웨어와의 통합이 내장된 커넥터

AWS IoT Greengrass 코어 소프트웨어

AWS IoT Greengrass 코어 소프트웨어는 다음 기능을 제공합니다.

  • 커넥터 및 Lambda 함수의 배포 및 로컬 실행.

  • 로 자동 내보내기를 사용하여 로컬에서 데이터 스트림을 처리합니다 AWS 클라우드.

  • 관리형 구독을 사용한 장치, 커넥터, Lambda 함수 간의 로컬 네트워크를 통한 MQTT 메시징.

  • 관리형 구독을 사용하는 AWS IoT 및 디바이스, 커넥터 및 Lambda 함수 간의 MQTT 메시징.

  • 디바이스 인증 및 권한 부여를 AWS 클라우드 사용하여 디바이스와 간의 연결을 보호합니다.

  • 장치의 로컬 섀도우 동기화. 섀도우는 AWS 클라우드와 동기화하도록 구성할 수 있습니다.

  • 로컬 장치 및 볼륨 리소스에 대한 액세스 제어.

  • 로컬 추론 실행을 위한 클라우드 학습 머신러닝 모델 배포.

  • 장치에서 Greengrass 코어 장치를 검색할 수 있도록 지원하는 자동 IP 주소 감지.

  • 새 그룹 또는 업데이트된 그룹 구성의 중앙 배포. 구성 데이터를 다운로드한 후 코어 장치가 자동으로 다시 시작합니다.

  • 사용자 정의 Lambda 함수의 보안 무선(OTA) 소프트웨어 업데이트.

  • 로컬 보안 암호의 안전하고 암호화된 저장 및 커넥터 및 Lambda 함수의 액세스 제어.

AWS IoT Greengrass 코어 인스턴스는 클라우드에 저장된 AWS IoT Greengrass 그룹 정의를 생성하고 업데이트하는 AWS IoT Greengrass APIs를 통해 구성됩니다.

AWS IoT Greengrass 코어 소프트웨어 버전

AWS IoT Greengrass 는 tar.gz 다운로드 파일, 빠른 시작 스크립트, 지원되는 Debian 플랫폼 설치 등 AWS IoT Greengrass 코어 소프트웨어 apt 설치를 위한 여러 옵션을 제공합니다. 자세한 내용은 AWS IoT Greengrass 코어 소프트웨어 설치 단원을 참조하십시오.

다음 탭은 AWS IoT Greengrass 코어 소프트웨어 버전의 새로운 기능 및 변경 사항을 설명합니다.

GGC v1.11
1.11.6

버그 수정 및 개선 사항:

  • 배포 중에 갑작스러운 전력 손실이 발생할 경우 복원력이 향상되었습니다.

  • 스트림 관리자 데이터 손상으로 인해 AWS IoT Greengrass 코어 소프트웨어가 시작되지 않는 문제를 수정했습니다.

  • 특정 시나리오에서 새 클라이언트 장치를 코어에 연결할 수 없는 문제를 수정했습니다.

  • 스트림 관리자 스트림 이름이 .log를 포함할 수 없던 문제를 수정했습니다.

1.11.5

버그 수정 및 개선 사항:

  • 일반 성능 향상 및 버그 수정.

1.11.4

버그 수정 및 개선 사항:

  • 스트림 관리자에서 AWS IoT Greengrass 코어 소프트웨어 v1.11.3으로 업그레이드할 수 없는 문제를 수정했습니다. 스트림 관리자를 사용하여 데이터를 클라우드로 내보내는 경우 이제 OTA 업데이트를 사용하여 AWS IoT Greengrass 코어 소프트웨어의 이전 v1.x 버전을 v1.11.4로 업그레이드할 수 있습니다.

  • 일반 성능 향상 및 버그 수정.

1.11.3

버그 수정 및 개선 사항:

  • 디바이스에 갑자기 전원이 끊긴 후 Ubuntu 디바이스에서 AWS IoT Greengrass 코어 소프트웨어가 스냅으로 실행되어 응답이 중단되는 문제를 수정했습니다.

  • 수명이 긴 Lambda 함수에 MQTT 메시지 전송이 지연되는 문제를 수정했습니다.

  • maxWorkItemCount 값이 1024보다 큰 값으로 설정된 경우 MQTT 메시지가 제대로 전송되지 않던 문제를 수정했습니다.

  • OTA 업데이트 에이전트가 config.json에서 keepAlive 속성에 지정된 MQTT KeepAlive 기간을 무시하던 문제를 수정했습니다.

  • 일반 성능 향상 및 버그 수정.

중요

스트림 관리자를 사용하여 데이터를 클라우드로 내보내는 경우 이전 v1.x 버전에서 AWS IoT Greengrass 코어 소프트웨어 v1.11.3으로 업그레이드하지 마십시오. 스트림 관리자를 처음 활성화하는 경우 먼저 최신 버전의 AWS IoT Greengrass 코어 소프트웨어를 설치하는 것이 좋습니다.

1.11.1

버그 수정 및 개선 사항:

  • 스트림 관리자의 메모리 사용량이 증가하는 문제가 수정되었습니다.

  • Greengrass 코어 장치가 스트림 데이터의 지정된 TTL(time-to-live) 기간보다 오랫동안 꺼진 경우 스트림 관리자가 스트림의 시퀀스 번호를 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 배포가 실패하는 문제를 해결했습니다.

  • 가 symlink인 경우 AWS IoT Greengrass 코어 실패를 일으킨 문제를 수정/tmp했습니다.

  • Greengrass 배포 에이전트가 mlmodel_public 폴더에서 사용하지 않는 기계 학습 모델 아티팩트를 제거하도록 하는 문제를 수정했습니다.

  • 일반 성능 향상 및 버그 수정.

Extended life versions
1.10.5

버그 수정 및 개선 사항:

  • 일반 성능 향상 및 버그 수정.

1.10.4

버그 수정 및 개선 사항:

  • 디바이스에 갑자기 전원이 끊긴 후 Ubuntu 디바이스에서 AWS IoT Greengrass 코어 소프트웨어가 스냅으로 실행되어 응답이 중단되는 문제를 수정했습니다.

  • 수명이 긴 Lambda 함수에 MQTT 메시지 전송이 지연되는 문제를 수정했습니다.

  • maxWorkItemCount 값이 1024보다 큰 값으로 설정된 경우 MQTT 메시지가 제대로 전송되지 않던 문제를 수정했습니다.

  • OTA 업데이트 에이전트가 config.json에서 keepAlive 속성에 지정된 MQTT KeepAlive 기간을 무시하던 문제를 수정했습니다.

  • 일반 성능 향상 및 버그 수정.

1.10.3

버그 수정 및 개선 사항:

  • Greengrass 코어 IPC 인증에 대한 제한 시간을 구성하는 데 사용하는 config.json의 새 systemComponentAuthTimeout 속성입니다. 기본값은 5,000밀리초입니다.

  • 스트림 관리자의 메모리 사용량이 증가하는 문제가 수정되었습니다.

1.10.2

버그 수정 및 개선 사항:

  • MQTT 연결에서 게시, 구독 및 구독 취소 작업에 대한 제한 시간을 설정하는 데 사용하는 config.json의 새 mqttOperationTimeout 속성입니다 AWS IoT Core.

  • 일반 성능 향상 및 버그 수정.

1.10.1

버그 수정 및 개선 사항:

  • 스트림 관리자는 파일 데이터 손상에 대한 복원력이 더 뛰어납니다.

  • Linux 커널 5.1 이상을 사용하는 장치에 sysfs를 탑재하지 못하는 문제를 수정했습니다.

  • 일반 성능 향상 및 버그 수정.

1.10.0

새로운 기능:

  • 데이터 스트림을 로컬에서 처리하고 이를 AWS 클라우드 로 자동으로 내보내는 스트림 관리자. 이 기능을 사용하려면 Greengrass 코어 장치에 Java 8이 필요합니다. 자세한 내용은 AWS IoT Greengrass 코어에서 데이터 스트림 관리 단원을 참조하십시오.

  • 코어 장치에서 Docker 애플리케이션을 실행하는 새로운 Greengrass Docker 애플리케이션 배포 커넥터. 자세한 내용은 Docker 애플리케이션 배포 커넥터 단원을 참조하십시오.

  • OPC-UA 서버에서 자산 속성으로 산업 디바이스 데이터를 전송하는 새로운 IoT SiteWise 커넥터입니다 AWS IoT SiteWise. 자세한 내용은 IoT SiteWise 커넥터 단원을 참조하십시오.

  • 컨테이너화 없이 실행되는 Lambda 함수는 Greengrass 그룹의 기계 학습 리소스에 액세스할 수 있습니다. 자세한 내용은 Lambda 함수에서 기계 학습 리소스에 액세스 단원을 참조하십시오.

  • 를 사용한 MQTT 영구 세션 지원 AWS IoT. 자세한 내용은 AWS IoT Core를 사용하는 MQTT 영구 세션 단원을 참조하십시오.

  • 로컬 MQTT 트래픽은 기본 포트 8883 이외의 포트를 통해 이동할 수 있습니다. 자세한 내용은 로컬 메시징을 위한 MQTT 포트 구성 단원을 참조하십시오.

  • Lambda 함수에서 안정적인 메시지 게시를 위한 AWS IoT Greengrass 코어 SDK의 새로운 queueFullPolicy 옵션.

  • 코어에서 Node.js 12.x Lambda 함수를 실행하기 위한 지원.

  • 하드웨어 보안이 통합된 무선(OTA) 업데이트는 OpenSSL 1.1로 구성할 수 있습니다.

  • 일반 성능 향상 및 버그 수정.

1.9.4

버그 수정 및 개선 사항:

  • 일반 성능 향상 및 버그 수정.

1.9.3

새로운 기능:

  • Armv6l. AWS IoT Greengrass Core 소프트웨어 v1.9.3 이상에 대한 지원은 Armv6l 아키텍처의 Raspbian 배포판(예: Raspberry Pi Zero 디바이스)에 설치할 수 있습니다.

  • ALPN을 통한 포트 443의 OTA 업데이트. MQTT 트래픽에 포트 443을 사용하는 Greengrass 코어는 이제 over-the-air(OTA) 소프트웨어 업데이트를 지원합니다.는 Application Layer Protocol Network(ALPN) TLS 확장을 AWS IoT Greengrass 사용하여 이러한 연결을 활성화합니다. 자세한 내용은 AWS IoT Greengrass 코어 소프트웨어의 OTA 업데이트포트 443에서 또는 네트워크 프록시를 통해 연결 단원을 참조하세요.

버그 수정 및 개선 사항:

  • v1.9.0에서 Python 2.7 Lambda 함수가 다른 Lambda 함수로 이진 페이로드를 보낼 수 없었던 버그를 수정했습니다.

  • 일반 성능 향상 및 버그 수정.

1.9.2

새로운 기능:

  • OpenWrt. AWS IoT Greengrass Core 소프트웨어 v1.9.2 이상에 대한 지원은 Armv8(AArch64) 및 Armv7l 아키텍처를 사용하는 OpenWrt 배포에 설치할 수 있습니다. 현재 OpenWrt는 ML 추론을 지원하지 않습니다.

1.9.1

버그 수정 및 개선 사항:

  • 주제에 와일드카드 문자가 포함된 cloud의 메시지를 삭제하는 v1.9.0의 버그를 수정합니다.

1.9.0

새로운 기능:

  • Python 3.7 및 Node.js 8.10 Lambda 런타임을 지원합니다. 이제 Python 3.7 및 Node.js 8.10 런타임을 사용하는 Lambda 함수를 AWS IoT Greengrass 코어에서 실행할 수 있습니다(AWS IoT Greengrass Python 2.7 및 Node.js 6.10 런타임을 지원하려면 계속).

  • 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을 통한 이동을 위해 구성됩니다. 이렇게 하면 Application Layer Protocol Network(ALPN) TLS 확장에 대한 AWS IoT Greengrass 지원이 보완되고 MQTT 및 HTTPS의 모든 Greengrass 메시징 트래픽이 포트 443을 사용할 수 있습니다. 자세한 내용은 포트 443에서 또는 네트워크 프록시를 통해 연결 단원을 참조하십시오.

  • AWS IoT 연결을 위해 예측 가능한 명명된 클라이언트 IDs. 이 변경에 따라 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 에서를 실행할 수 있습니다. 자세한 내용은 Docker 컨테이너 AWS IoT Greengrass 에서 실행 단원을 참조하십시오.

  • ALPN(Application Layer Protocol Negotiation) 또는 네트워크 프록시 경유 연결을 통한 포트 443의 MQTT 메시징. 자세한 내용은 포트 443에서 또는 네트워크 프록시를 통해 연결 단원을 참조하십시오.

  • SageMaker AI Neo 딥 러닝 컴파일러에 의해 최적화된 기계 학습 모델을 지원하는 SageMaker AI Neo 딥 러닝 런타임입니다. Neo 딥 러닝 런타임에 관해 자세한 내용은 ML 추론을 위한 런타임 및 라이브러리 섹션을 참조하십시오.

  • Raspberry Pi 코어 장치에서 Raspbian Stretch(2018-06-27)에 대한 지원.

버그 수정 및 개선 사항:

  • 일반 성능 향상 및 버그 수정.

그에 더해 이 릴리스로는 다음 기능을 사용할 수 있습니다.

  • CPU 아키텍처 AWS IoT Greengrass, 커널 구성 및 드라이버가 작동하는지 확인하는 데 사용할 수 있는 AWS IoT 디바이스 테스터입니다 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 실행 파일입니다. 새로운 C용 AWS IoT Greengrass 코어 SDK를 사용하여 C 및 C++로 Lambda 실행 파일을 작성합니다. 자세한 내용은 Lambda 실행 파일 단원을 참조하십시오.

  • 재시작 시에도 계속 유지되는 로컬 스토리지 메시지 캐시(선택 사항)입니다. 처리를 위해 대기 중인 MQTT 메시지에 대한 스토리지 설정을 구성할 수 있습니다. 자세한 내용은 클라우드 대상을 위한 MQTT 메시지 대기열 단원을 참조하십시오.

  • 코어 장치 연결이 해제될 때 구성할 수 있는 최대 재연결 시도 간격입니다. 자세한 내용은 mqttMaxConnectionRetryIntervalAWS IoT Greengrass 코어 구성 파일 속성을 참조하십시오.

  • 호스트/proc 디렉터리에 대한 로컬 리소스 액세스입니다. 자세한 내용은 Lambda 함수와 커넥터를 사용하여 로컬 리소스에 액세스 단원을 참조하십시오.

  • 구성 가능한 쓰기 디렉터리입니다. AWS IoT Greengrass 코어 소프트웨어는 읽기 전용 및 읽기-쓰기 위치에 배포할 수 있습니다. 자세한 내용은 에 대한 쓰기 디렉터리 구성 AWS IoT Greengrass 단원을 참조하십시오.

버그 수정 및 개선 사항:

  • Greengrass 코어 내에서, 그리고 장치와 코어 사이에서 메시지 게시 성능이 향상되었습니다.

  • 사용자 정의 Lambda 함수에 의해 생성된 로그를 처리하기 위해 필요한 컴퓨팅 리소스가 감소되었습니다.

1.5.0

새로운 기능:

  • AWS IoT Greengrass Machine Learning(ML) 추론은 일반적으로 사용할 수 있습니다. 클라우드에서 빌드 및 교육된 모델을 사용하여 AWS IoT Greengrass 장치에서 로컬 방식으로 ML 추론을 수행할 수 있습니다. 자세한 내용은 기계 학습 추론 수행 단원을 참조하십시오.

  • Greengrass Lambda 함수는 이제 JSON 외에도 이진 데이터를 입력 페이로드로 지원합니다. 이 기능을 사용하려면 AWS IoT Greengrass 코어 SDK 다운로드 페이지에서 다운로드할 수 있는 AWS IoT Greengrass 코어 SDK 버전 1.1.0으로 업그레이드해야 합니다.

버그 수정 및 개선 사항:

  • 전체 메모리 공간을 줄였습니다.

  • 클라우드 메시지 전송 성능이 개선되었습니다.

  • 다운로드 에이전트, 장치 인증서 관리자(DCM) 및 OTA 업데이트 에이전트의 성능과 안정성이 개선되었습니다.

  • 사소한 버그가 수정됨.

1.3.0

새로운 기능:

1.1.0

새로운 기능:

  • 배포된 AWS IoT Greengrass 그룹은 Lambda 함수, 구독 및 구성을 삭제하여 재설정할 수 있습니다. 자세한 내용은 배포 재설정 단원을 참조하십시오.

  • 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 그룹을 구성할 수 있는 구성 요소를 보여줍니다.

상호 연결된 코어, 설정, Lambda 함수, 구독, 커넥터, 디바이스, 리소스 요소를 포함한AWS IoT Core, Greengrass 및 Lambda 구성 요소입니다.

앞서 제시한 다이어그램에서

A: Greengrass 그룹 정의

그룹 설정 및 구성 요소에 대한 정보.

B: Greengrass 그룹 설정

다음이 포함됩니다.

C: Greengrass 코어

Greengrass 코어를 나타내는 AWS IoT 사물(디바이스)입니다. 자세한 내용은 AWS IoT Greengrass 코어 구성 단원을 참조하십시오.

D: Lambda 함수 정의

관련 구성 데이터를 포함하여 코어에서 로컬로 실행되는 Lambda 함수의 목록입니다. 자세한 내용은 AWS IoT Greengrass 코어에서 Lambda 함수 실행 단원을 참조하십시오.

E: 구독 정의

MQTT 메시지를 사용해 통신을 할 수 있게 해주는 구독 목록입니다. 구독은 다음을 정의합니다.

  • 메시지 소스 및 메시지 대상. 클라이언트 디바이스, Lambda 함수 AWS IoT Core, 커넥터 및 로컬 섀도우 서비스일 수 있습니다.

  • 메시지를 필터링하는 데 사용되는 주제 또는 제목.

자세한 내용은 MQTT 메시징 워크플우로의 관리형 구독 단원을 참조하십시오.

F: 커넥터 정의

관련 구성 데이터를 포함하여 코어에서 로컬로 실행되는 커넥터의 목록입니다. 자세한 내용은 Greengrass 커넥터를 사용하여 서비스 및 프로토콜과 통합 단원을 참조하십시오.

G: 장치 정의

Greengrass 그룹의 멤버인 AWS IoT 사물(클라이언트 디바이스 또는 디바이스라고 함)과 관련 구성 데이터의 목록입니다. 자세한 내용은 의 디바이스 AWS IoT Greengrass 단원을 참조하십시오.

H: 리소스 정의

관련 구성 데이터를 포함하여 Greengrass 코어DP 있는 로컬 리소스, 기계 학습 리소스 및 암호 리소스의 목록입니다. 자세한 내용은 Lambda 함수와 커넥터를 사용하여 로컬 리소스에 액세스, 기계 학습 추론 수행, AWS IoT Greengrass 코어에 보안 암호 배포 섹션을 참조하세요.

배포 시 Greengrass 그룹 정의, Lambda 함수, 커넥터, 리소스 및 구독 테이블이 코어 장치에 복사됩니다. 자세한 내용은 AWS IoT Greengrass 코어에 AWS IoT Greengrass 그룹 배포 단원을 참조하십시오.

의 디바이스 AWS IoT Greengrass

Greengrass 그룹에는 두 가지 유형의 AWS IoT 디바이스가 포함될 수 있습니다.

Greengrass 코어

Greengrass 코어는 AWS IoT Greengrass 코어 소프트웨어를 실행하는 디바이스로, 및 AWS IoT Greengrass 서비스와 직접 통신할 AWS IoT Core 수 있습니다. 코어에는 인증에 사용되는 자체 디바이스 인증서가 있습니다 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 생성하고 구성하는 방법을 보여주는 예제는 AWS CLI 명령 AWS IoT Greengrass참조의 create-device-definition을 참조하세요.

Greengrass 그룹에서 클라이언트 디바이스가 MQTT를 통해 그룹의 Lambda 함수, 커넥터 및 기타 클라이언트 디바이스와 또는 AWS IoT Core 로컬 섀도우 서비스와 통신할 수 있도록 허용하는 구독을 생성할 수 있습니다. MQTT 메시지는 코어를 통해 라우팅됩니다. 코어 장치와 클라우드의 연결이 끊어지면 클라이언트 장치는 로컬 네트워크를 통해 계속 통신할 수 있습니다. 클라이언트 장치는 마이크로 컨트롤러 기반 소형 장치부터 대형 어플라이언스까지 다양한 크기일 수 있습니다. 현재 Greengrass 그룹은 최대 2,500개의 클라이언트 장치를 포함할 수 있습니다. 한 클라이언트 장치는 최대 10개 그룹의 멤버일 수 있습니다.

참고

OPC-UA는 산업 통신을 위한 정보 교환 표준입니다. Greengrass 코어에서 OPC-UA에 대한 지원을 구현하려면 IoT SiteWise 커넥터를 사용하면 됩니다. 커넥터는 OPC-UA 서버에서의 자산 속성으로 산업용 디바이스 데이터를 전송합니다 AWS IoT SiteWise.

다음 테이블은 이러한 장치 유형들이 어떤 관계가 있는지를 보여줍니다.

AWS IoT Core 및 디바이스 기능 매트릭스는 인증서, IoT 정책, 코어 및 디바이스 측에서 지원되는 IoT 사물, 디바이스 게이트웨이, 센서/액추에이터 소프트웨어, Greengrass 그룹 권한 외부의 함수와 같은 구성을 보여줍니다.

AWS IoT Greengrass 코어 디바이스는 두 위치에 인증서를 저장합니다.

  • /greengrass-root/certs의 코어 장치 인증서. 일반적으로 코어 장치 인증서의 이름은 hash.cert.pem(예: 86c84488a5.cert.pem)입니다. 이 인증서는 코어가 및 AWS IoT Greengrass 서비스에 연결할 때 AWS IoT 클라이언트가 AWS IoT Core 상호 인증에 사용합니다.

  • /greengrass-root/ggc/var/state/server의 MQTT 서버 인증서. MQTT 서버 인증서의 이름이 server.crt로 지정됩니다. 이 인증서는 로컬 MQTT 서버(Greengrass 코어에 있음) 사이의 상호 인증에 사용됩니다.

    참고

    greengrass-root는 AWS IoT Greengrass 코어 소프트웨어가 디바이스에 설치된 경로를 나타냅니다. 일반적으로 이는 /greengrass 디렉터리입니다.

SDK

다음과 같이 AWS제공되는 SDKs는에서 사용할 수 있습니다. AWS IoT Greengrass

AWS SDK

AWS SDK를 사용하여 Amazon S3, Amazon DynamoDB AWS IoT AWS IoT Greengrass등을 포함한 모든 AWS 서비스와 상호 작용하는 애플리케이션을 빌드합니다. 의 맥락에서 배포된 Lambda 함수에서 AWS SDK를 사용하여 모든 AWS 서비스에 직접 호출할 AWS IoT Greengrass수 있습니다. 자세한 내용은 AWS SDK 단원을 참조하십시오.

참고

AWS SDKs에서 사용할 수 있는 Greengrass 관련 작업은 AWS IoT Greengrass API 및 에서도 사용할 수 있습니다AWS CLI.

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 디바이스 SDKs의 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 Machine Learning SDK 단원을 참조하십시오.

지원되는 플랫폼 및 요구 사항

다음 탭에는 AWS IoT Greengrass 코어 소프트웨어에 지원되는 플랫폼 및 요구 사항이 나열되어 있습니다.

참고

AWS IoT Greengrass 코어 소프트웨어 다운로드에서 AWS IoT Greengrass 코어 소프트웨어를 다운로드할 수 있습니다.

GGC v1.11

지원되는 플랫폼:

  • 아키텍처: ARMv7l

    • OS: Linux

    • 운영 체제: Linux(OpenWrt)

  • 아키텍처: Armv8(AArch64)

    • OS: Linux

    • 운영 체제: Linux(OpenWrt)

  • 아키텍처: ARMv6l

    • OS: Linux

  • 아키텍처: x86_64

    • OS: Linux

  • Windows, macOS 및 Linux 플랫폼은 Docker 컨테이너 AWS IoT Greengrass 에서 실행할 수 있습니다. 자세한 내용은 Docker 컨테이너 AWS IoT Greengrass 에서 실행 단원을 참조하십시오.

요구 사항:

  • AWS IoT Greengrass 코어 소프트웨어에 사용할 수 있는 최소 디스크 공간은 128MB입니다. OTA 업데이트 에이전트를 사용하는 경우 최소 용량은 400MB입니다.

  • AWS IoT Greengrass 코어 소프트웨어에 할당된 최소 128MB RAM. 스트림 관리자가 활성화된 경우 최소 크기는 198MB RAM입니다.

    참고

    AWS IoT 콘솔에서 기본 그룹 생성 옵션을 사용하여 Greengrass 그룹을 생성하는 경우 스트림 관리자가 기본적으로 활성화됩니다.

  • Linux 커널 버전:

    • 컨테이너 AWS IoT Greengrass 를 사용한 실행을 지원하려면 Linux 커널 버전 4.4 이상이 필요합니다.

    • 컨테이너 AWS IoT Greengrass 없이 실행을 지원하려면 Linux 커널 버전 3.17 이상이 필요합니다. 이 구성에서 Greengrass 그룹에 대한 기본 Lambda 함수 컨테이너화는 컨테이너 없음으로 설정해야 합니다. 지침은 그룹 내 Lambda 함수의 기본 컨테이너화 설정 섹션을 참조하세요.

  • GNU C Library(glibc) 버전 2.14 이상. OpenWrt 배포에는 musl C Library 버전 1.1.16 이상이 필요합니다.

  • /var/run 디렉터리가 장치에 있어야 합니다.

  • /dev/stdin, /dev/stdout/dev/stderr 파일이 사용 가능해야 합니다.

  • 하드링크 및 소프트링크 보호를 활성화해야 합니다. 그렇지 않으면 -i 플래그를 사용하여 안전하지 않은 모드에서 AWS IoT Greengrass 만 실행할 수 있습니다.

  • 장치에서 다음 Linux 커널 구성을 활성화해야 합니다.

    • 네임스페이스:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Cgroups:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      커널에서 cgroups를 지원해야 합니다. 컨테이너 AWS IoT Greengrass 로를 실행할 때 다음 요구 사항이 적용됩니다.

      • AWS IoT Greengrass 가 Lambda 함수의 메모리 제한을 설정하도록 하려면 메모리 cgroup을 활성화하고 마운트해야 합니다.

      • 로컬 리소스 액세스 권한이 있는 Lambda 함수를 사용하여 AWS IoT Greengrass 코어 디바이스에서 파일을 여는 경우 디바이스 cgroup을 활성화하고 마운트해야 합니다.

    • 기타:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • Amazon S3 및에 대한 루트 인증서는 시스템 트러스트 스토어에 있어야 AWS IoT 합니다.

  • 스트림 관리자에는 기본 AWS IoT Greengrass 코어 소프트웨어 메모리 요구 사항 외에도 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 실행은 공식적으로 지원되지 않습니다. 그러나 Java가 지원되는 OpenWrt 빌드라면 Java로 작성한 Lambda 함수를 OpenWrt 장치에서 실행할 수 있을 것입니다.

      Lambda 런타임 AWS IoT Greengrass 지원에 대한 자세한 내용은 섹션을 참조하세요AWS IoT Greengrass 코어에서 Lambda 함수 실행.

  • OTA(무선) 업데이트 에이전트에는 (BusyBox 변형이 아닌) 다음 셸 명령이 필요합니다.

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

    • /bin/bash

GGC v1.10

지원되는 플랫폼:

  • 아키텍처: ARMv7l

    • OS: Linux

    • 운영 체제: Linux(OpenWrt)

  • 아키텍처: Armv8(AArch64)

    • OS: Linux

    • 운영 체제: Linux(OpenWrt)

  • 아키텍처: ARMv6l

    • OS: Linux

  • 아키텍처: x86_64

    • OS: Linux

  • Windows, macOS 및 Linux 플랫폼은 Docker 컨테이너 AWS IoT Greengrass 에서 실행할 수 있습니다. 자세한 내용은 Docker 컨테이너 AWS IoT Greengrass 에서 실행 단원을 참조하십시오.

요구 사항:

  • AWS IoT Greengrass 코어 소프트웨어에 사용할 수 있는 최소 디스크 공간은 128MB입니다. OTA 업데이트 에이전트를 사용하는 경우 최소 용량은 400MB입니다.

  • AWS IoT Greengrass 코어 소프트웨어에 할당된 최소 128MB RAM. 스트림 관리자가 활성화된 경우 최소 크기는 198MB RAM입니다.

    참고

    AWS IoT 콘솔에서 기본 그룹 생성 옵션을 사용하여 Greengrass 그룹을 생성하는 경우 스트림 관리자가 기본적으로 활성화됩니다.

  • Linux 커널 버전:

    • 컨테이너 AWS IoT Greengrass 로 실행을 지원하려면 Linux 커널 버전 4.4 이상이 필요합니다.

    • 컨테이너 AWS IoT Greengrass 없이 실행을 지원하려면 Linux 커널 버전 3.17 이상이 필요합니다. 이 구성에서 Greengrass 그룹에 대한 기본 Lambda 함수 컨테이너화는 컨테이너 없음으로 설정해야 합니다. 지침은 그룹 내 Lambda 함수의 기본 컨테이너화 설정 섹션을 참조하세요.

  • GNU C Library(glibc) 버전 2.14 이상. OpenWrt 배포에는 musl C Library 버전 1.1.16 이상이 필요합니다.

  • /var/run 디렉터리가 장치에 있어야 합니다.

  • /dev/stdin, /dev/stdout/dev/stderr 파일이 사용 가능해야 합니다.

  • 하드링크 및 소프트링크 보호를 활성화해야 합니다. 그렇지 않으면 -i 플래그를 사용하여 안전하지 않은 모드에서 AWS IoT Greengrass 만 실행할 수 있습니다.

  • 장치에서 다음 Linux 커널 구성을 활성화해야 합니다.

    • 네임스페이스:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Cgroups:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      커널에서 cgroups를 지원해야 합니다. 컨테이너 AWS IoT Greengrass 로를 실행할 때는 다음 요구 사항이 적용됩니다.

      • AWS IoT Greengrass 가 Lambda 함수의 메모리 제한을 설정하도록 하려면 메모리 cgroup을 활성화하고 마운트해야 합니다.

      • 로컬 리소스 액세스 권한이 있는 Lambda 함수를 사용하여 AWS IoT Greengrass 코어 디바이스에서 파일을 여는 경우 디바이스 cgroup을 활성화하고 마운트해야 합니다.

    • 기타:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • Amazon S3 및에 대한 루트 인증서는 시스템 트러스트 스토어에 있어야 AWS IoT 합니다.

  • 스트림 관리자에는 기본 AWS IoT Greengrass 코어 소프트웨어 메모리 요구 사항 외에도 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 실행은 공식적으로 지원되지 않습니다. 그러나 Java가 지원되는 OpenWrt 빌드라면 Java로 작성한 Lambda 함수를 OpenWrt 장치에서 실행할 수 있을 것입니다.

      Lambda 런타임 AWS IoT Greengrass 지원에 대한 자세한 내용은 섹션을 참조하세요AWS IoT Greengrass 코어에서 Lambda 함수 실행.

  • OTA(무선) 업데이트 에이전트에는 (BusyBox 변형이 아닌) 다음 셸 명령이 필요합니다.

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

    • /bin/bash

GGC v1.9

지원되는 플랫폼:

  • 아키텍처: ARMv7l

    • OS: Linux

    • 운영 체제: Linux(OpenWrt)

  • 아키텍처: Armv8(AArch64)

    • OS: Linux

    • 운영 체제: Linux(OpenWrt)

  • 아키텍처: ARMv6l

    • OS: Linux

  • 아키텍처: x86_64

    • OS: Linux

  • Windows, macOS 및 Linux 플랫폼은 Docker 컨테이너 AWS IoT Greengrass 에서 실행할 수 있습니다. 자세한 내용은 Docker 컨테이너 AWS IoT Greengrass 에서 실행 단원을 참조하십시오.

요구 사항:

  • 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 이상. OpenWrt 배포에는 musl C Library 버전 1.1.16 이상이 필요합니다.

  • /var/run 디렉터리가 장치에 있어야 합니다.

  • /dev/stdin, /dev/stdout/dev/stderr 파일이 사용 가능해야 합니다.

  • 하드링크 및 소프트링크 보호를 활성화해야 합니다. 그렇지 않으면 -i 플래그를 사용하여 안전하지 않은 모드에서 AWS IoT Greengrass 만 실행할 수 있습니다.

  • 장치에서 다음 Linux 커널 구성을 활성화해야 합니다.

    • 네임스페이스:

      • CONFIG_IPC_NS

      • CONFIG_UTS_NS

      • CONFIG_USER_NS

      • CONFIG_PID_NS

    • Cgroups:

      • CONFIG_CGROUP_DEVICE

      • CONFIG_CGROUPS

      • CONFIG_MEMCG

      커널에서 cgroups를 지원해야 합니다. 컨테이너 AWS IoT Greengrass 로를 실행할 때는 다음 요구 사항이 적용됩니다.

      • AWS IoT Greengrass 가 Lambda 함수의 메모리 제한을 설정하도록 하려면 메모리 cgroup을 활성화하고 마운트해야 합니다.

      • 로컬 리소스 액세스 권한이 있는 Lambda 함수를 사용하여 AWS IoT Greengrass 코어 디바이스에서 파일을 여는 경우 디바이스 cgroup을 활성화하고 마운트해야 합니다.

    • 기타:

      • CONFIG_POSIX_MQUEUE

      • CONFIG_OVERLAY_FS

      • CONFIG_HAVE_ARCH_SECCOMP_FILTER

      • CONFIG_SECCOMP_FILTER

      • CONFIG_KEYS

      • CONFIG_SECCOMP

      • CONFIG_SHMEM

  • 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 실행은 공식적으로 지원되지 않습니다. 그러나 Java가 지원되는 OpenWrt 빌드라면 Java로 작성한 Lambda 함수를 OpenWrt 장치에서 실행할 수 있을 것입니다.

      Lambda 런타임 AWS IoT Greengrass 지원에 대한 자세한 내용은 섹션을 참조하세요AWS IoT Greengrass 코어에서 Lambda 함수 실행.

  • OTA(무선) 업데이트 에이전트에는 (BusyBox 변형이 아닌) 다음 셸 명령이 필요합니다.

    • wget

    • realpath

    • tar

    • readlink

    • basename

    • dirname

    • pidof

    • df

    • grep

    • umount

    • mv

    • gzip

    • mkdir

    • rm

    • ln

    • cut

    • cat

GGC v1.8
  • 지원되는 플랫폼:

    • 아키텍처: Armv7l; OS: Linux

    • 아키텍처: x86_64; OS: Linux

    • 아키텍처: Armv8(AArch64); OS: Linux

    • Windows, macOS 및 Linux 플랫폼은 Docker 컨테이너 AWS IoT Greengrass 에서 실행할 수 있습니다. 자세한 내용은 Docker 컨테이너 AWS IoT Greengrass 에서 실행 단원을 참조하십시오.

    • Linux 플랫폼은 Snapcraft를 통해 사용할 수 있는 Greengrass 스냅을 사용하여 AWS IoT Greengrass 제한된 기능으로 버전을 실행할 수 있습니다. 자세한 내용은 AWS IoT Greengrass 스냅 소프트웨어 단원을 참조하십시오.

  • 다음과 같은 항목이 필요합니다.

    • 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 파일이 사용 가능해야 합니다.

    • 하드링크 및 소프트링크 보호를 활성화해야 합니다. 그렇지 않으면 -i 플래그를 사용하여 안전하지 않은 모드에서 AWS IoT Greengrass 만 실행할 수 있습니다.

    • 장치에서 다음 Linux 커널 구성을 활성화해야 합니다.

      • 네임스페이스:

        • CONFIG_IPC_NS

        • CONFIG_UTS_NS

        • CONFIG_USER_NS

        • CONFIG_PID_NS

      • Cgroups:

        • CONFIG_CGROUP_DEVICE

        • CONFIG_CGROUPS

        • CONFIG_MEMCG

        커널에서 cgroups를 지원해야 합니다. 컨테이너 AWS IoT Greengrass 로를 실행할 때는 다음 요구 사항이 적용됩니다.

        • AWS IoT Greengrass 가 Lambda 함수의 메모리 제한을 설정하도록 하려면 메모리 cgroup을 활성화하고 마운트해야 합니다.

        • 로컬 리소스 액세스 권한이 있는 Lambda 함수를 사용하여 AWS IoT Greengrass 코어 디바이스에서 파일을 여는 경우 디바이스 cgroup을 활성화하고 마운트해야 합니다.

      • 기타:

        • CONFIG_POSIX_MQUEUE

        • CONFIG_OVERLAY_FS

        • CONFIG_HAVE_ARCH_SECCOMP_FILTER

        • CONFIG_SECCOMP_FILTER

        • CONFIG_KEYS

        • CONFIG_SECCOMP

        • CONFIG_SHMEM

    • Amazon S3 및에 대한 루트 인증서는 시스템 트러스트 스토어에 있어야 AWS IoT 합니다.

  • 조건에 따라 다음 항목이 필요합니다.

    • 로컬로 실행할 Lambda 함수에 필요한 AWS Lambda 런타임을 지원하는 라이브러리. 필수 라이브러리를 코어에 설치하고 PATH 환경 변수에 추가해야 합니다. 동일한 코어에 여러 라이브러리를 설치할 수 있습니다.

      • Python 2.7 실행 시간을 사용하는 기능의 경우 Python 버전 2.7.

      • Node.js 6.10 실행 시간을 사용하는 기능의 경우 Node.js 버전 6.10 이상.

      • Java 8 런타임을 사용하는 함수의 경우 Java 버전 8 이상

    • OTA(무선) 업데이트 에이전트에는 (BusyBox 변형이 아닌) 다음 셸 명령이 필요합니다.

      • wget

      • realpath

      • tar

      • readlink

      • basename

      • dirname

      • pidof

      • df

      • grep

      • umount

      • mv

      • gzip

      • mkdir

      • rm

      • ln

      • cut

      • cat

AWS IoT Greengrass 할당량(한도)에 대한 자세한 내용은의 Service 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 코어 소프트웨어가 시작되지 않는 문제를 수정했습니다.

  • 특정 시나리오에서 새 클라이언트 장치를 코어에 연결할 수 없는 문제를 수정했습니다.

  • 스트림 관리자 스트림 이름이 .log를 포함할 수 없던 문제를 수정했습니다.

1.11.5

버그 수정 및 개선 사항:

  • 일반 성능 향상 및 버그 수정.

1.11.4

버그 수정 및 개선 사항:

  • 스트림 관리자로 인해 AWS IoT Greengrass 코어 소프트웨어 v1.11.3으로 업그레이드할 수 없는 문제를 수정했습니다. 스트림 관리자를 사용하여 데이터를 클라우드로 내보내는 경우 이제 OTA 업데이트를 사용하여 AWS IoT Greengrass 코어 소프트웨어의 이전 v1.x 버전을 v1.11.4로 업그레이드할 수 있습니다.

  • 일반 성능 향상 및 버그 수정.

1.11.3

버그 수정 및 개선 사항:

  • 디바이스에 갑작스러운 전원이 손실된 후 Ubuntu 디바이스의 스냅에서 실행되는 AWS IoT Greengrass 코어 소프트웨어가 응답하지 않는 문제를 수정했습니다.

  • 수명이 긴 Lambda 함수에 MQTT 메시지 전송이 지연되는 문제를 수정했습니다.

  • maxWorkItemCount 값이 1024보다 큰 값으로 설정된 경우 MQTT 메시지가 제대로 전송되지 않던 문제를 수정했습니다.

  • OTA 업데이트 에이전트가 config.json에서 keepAlive 속성에 지정된 MQTT KeepAlive 기간을 무시하던 문제를 수정했습니다.

  • 일반 성능 향상 및 버그 수정.

중요

스트림 관리자를 사용하여 데이터를 클라우드로 내보내는 경우 이전 v1.x 버전에서 AWS IoT Greengrass 코어 소프트웨어 v1.11.3으로 업그레이드하지 마십시오. 스트림 관리자를 처음 활성화하는 경우 먼저 최신 버전의 AWS IoT Greengrass 코어 소프트웨어를 설치하는 것이 좋습니다.

1.11.1

버그 수정 및 개선 사항:

  • 스트림 관리자의 메모리 사용량이 증가하는 문제가 수정되었습니다.

  • Greengrass 코어 장치가 스트림 데이터의 지정된 TTL(time-to-live) 기간보다 오랫동안 꺼진 경우 스트림 관리자가 스트림의 시퀀스 번호를 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 배포가 실패하는 문제를 해결했습니다.

  • 가 symlink인 경우 AWS IoT Greengrass 코어 실패를 일으킨 문제를 수정/tmp했습니다.

  • Greengrass 배포 에이전트가 mlmodel_public 폴더에서 사용하지 않는 기계 학습 모델 아티팩트를 제거하도록 하는 문제를 수정했습니다.

  • 일반 성능 향상 및 버그 수정.

AWS IoT Greengrass 코어 디바이스에 코어 소프트웨어를 설치하려면 아키텍처 및 운영 체제(OS)용 패키지를 다운로드한 다음 시작 안내서의 단계를 따릅니다.

작은 정보

AWS IoT Greengrass 는 AWS IoT Greengrass 코어 소프트웨어 설치를 위한 다른 옵션도 제공합니다. 예를 들어 Greengrass 디바이스 설정을 사용하여 환경을 구성하고 최신 버전의 AWS IoT Greengrass 코어 소프트웨어를 설치할 수 있습니다. 또는 지원되는 Debian 플랫폼에서 APT 패키지 관리자를 사용하여 AWS IoT Greengrass 코어 소프트웨어를 설치하거나 업그레이드할 수 있습니다. 자세한 내용은 AWS IoT Greengrass 코어 소프트웨어 설치 단원을 참조하십시오.

아키텍처

운영 체제

링크

ARMv8(AArch64)

Linux

다운로드

ARMv8(AArch64)

Linux(OpenWrt)

다운로드

Armv7l

Linux

다운로드

Armv7l

Linux(OpenWrt)

다운로드

Armv6l

Linux

다운로드

x86_64

Linux

다운로드

Extended life versions
1.10.5

v1.10의 새로운 기능:

  • 데이터 스트림을 로컬에서 처리하고 이를 AWS 클라우드 로 자동으로 내보내는 스트림 관리자. 이 기능을 사용하려면 Greengrass 코어 장치에 Java 8이 필요합니다. 자세한 내용은 AWS IoT Greengrass 코어에서 데이터 스트림 관리 단원을 참조하십시오.

  • 코어 장치에서 Docker 애플리케이션을 실행하는 새로운 Greengrass Docker 애플리케이션 배포 커넥터. 자세한 내용은 Docker 애플리케이션 배포 커넥터 단원을 참조하십시오.

  • OPC-UA 서버에서 자산 속성으로 산업 디바이스 데이터를 전송하는 새로운 IoT SiteWise 커넥터입니다 AWS IoT SiteWise. 자세한 내용은 IoT SiteWise 커넥터 단원을 참조하십시오.

  • 컨테이너화 없이 실행되는 Lambda 함수는 Greengrass 그룹의 기계 학습 리소스에 액세스할 수 있습니다. 자세한 내용은 Lambda 함수에서 기계 학습 리소스에 액세스 단원을 참조하십시오.

  • 를 사용한 MQTT 영구 세션 지원 AWS IoT. 자세한 내용은 AWS IoT Core를 사용하는 MQTT 영구 세션 단원을 참조하십시오.

  • 로컬 MQTT 트래픽은 기본 포트 8883 이외의 포트를 통해 이동할 수 있습니다. 자세한 내용은 로컬 메시징을 위한 MQTT 포트 구성 단원을 참조하십시오.

  • Lambda 함수에서 안정적인 메시지 게시를 위한 AWS IoT Greengrass 코어 SDK의 새로운 queueFullPolicy 옵션.

  • 코어에서 Node.js 12.x Lambda 함수를 실행하기 위한 지원.

버그 수정 및 개선 사항:

  • 하드웨어 보안이 통합된 무선(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 코어 소프트웨어가 응답하지 않는 문제를 수정했습니다.

  • 일반 성능 향상 및 버그 수정.

AWS IoT Greengrass 코어 디바이스에 코어 소프트웨어를 설치하려면 아키텍처 및 운영 체제(OS)용 패키지를 다운로드한 다음 시작 안내서의 단계를 따릅니다.

아키텍처

운영 체제

링크

ARMv8(AArch64)

Linux

다운로드

ARMv8(AArch64)

Linux(OpenWrt)

다운로드

Armv7l

Linux

다운로드

Armv7l

Linux(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 코어에서 실행할 수 있습니다(AWS IoT Greengrass Python 2.7 및 Node.js 6.10 런타임을 지원하려면 계속).

  • MQTT 연결을 최적화했습니다. Greengrass 코어는 AWS IoT Core와의 더 적은 수의 연결을 설정합니다. 이 변경에 따라 연결 수를 기반으로 부과되는 요금의 운영 비용을 절감할 수 있습니다.

  • 로컬 MQTT 서버에 EC(Elliptic Curve) 키를 사용할 수 있습니다. 로컬 MQTT 서버는 RSA 키 외에도 EC 키를 지원합니다. 키 유형과 상관없이 MQTT 서버 인증서에는 SHA-256 RSA 서명이 있습니다. 자세한 내용은 AWS IoT Greengrass 코어 보안 주체 단원을 참조하십시오.

  • OpenWrt. AWS IoT Greengrass Core 소프트웨어 v1.9.2 이상에 대한 지원은 Armv8(AArch64) 및 Armv7l 아키텍처를 사용하는 OpenWrt 배포에 설치할 수 있습니다. 현재 OpenWrt는 ML 추론을 지원하지 않습니다.

  • Armv6l. AWS IoT Greengrass Core 소프트웨어 v1.9.3 이상에 대한 지원은 Armv6l 아키텍처의 Raspbian 배포판(예: Raspberry Pi Zero 디바이스)에 설치할 수 있습니다.

  • ALPN을 통한 포트 443의 OTA 업데이트. MQTT 트래픽에 포트 443을 사용하는 Greengrass 코어는 이제 over-the-air(OTA) 소프트웨어 업데이트를 지원합니다.는 Application Layer Protocol Network(ALPN) TLS 확장을 AWS IoT Greengrass 사용하여 이러한 연결을 활성화합니다. 자세한 내용은 AWS IoT Greengrass 코어 소프트웨어의 OTA 업데이트포트 443에서 또는 네트워크 프록시를 통해 연결 단원을 참조하세요.

AWS IoT Greengrass 코어 디바이스에 코어 소프트웨어를 설치하려면 아키텍처 및 운영 체제(OS)용 패키지를 다운로드한 다음 시작 안내서의 단계를 따릅니다.

아키텍처

운영 체제

링크

ARMv8(AArch64)

Linux

다운로드

ARMv8(AArch64)

Linux(OpenWrt)

다운로드

Armv7l

Linux

다운로드

Armv7l

Linux(OpenWrt)

다운로드

Armv6l

Linux

다운로드

x86_64

Linux

다운로드

1.8.4
  • 새로운 기능:

    • 그룹의 Lambda 함수에 대해 구성 가능한 기본 액세스 자격 증명. 이 그룹 레벨 설정은 Lambda 함수를 실행하는 데 사용된 기본 권한을 결정합니다. 사용자 ID, 그룹 ID 또는 둘 다 설정할 수 있습니다. 개별 Lambda 함수는 해당 그룹의 기본 액세스 자격 증명을 재정의할 수 있습니다. 자세한 내용은 그룹에 있는 Lambda 함수의 기본 액세스 자격 증명 설정 단원을 참조하십시오.

    • 포트 443을 통한 HTTPS 트래픽 HTTPS 통신은 기본 포트 8443 대신에 포트 443을 통한 이동을 위해 구성됩니다. 이렇게 하면 Application Layer Protocol Network(ALPN) TLS 확장에 대한 AWS IoT Greengrass 지원이 보완되고 MQTT 및 HTTPS의 모든 Greengrass 메시징 트래픽이 포트 443을 사용할 수 있습니다. 자세한 내용은 포트 443에서 또는 네트워크 프록시를 통해 연결 단원을 참조하십시오.

    • AWS IoT 연결을 위해 예측 가능한 명명된 클라이언트 IDs. 이 변경에 따라 AWS IoT Device Defender 및 AWS IoT 수명 주기 이벤트가 지원되므로 연결, 연결 끊기, 구독 및 구독 해제 이벤트에 대한 알림을 받을 수 있습니다. 또한 예상 가능한 이름을 지정하면 연결 ID를 중심으로 논리를 쉽게 만들 수 있습니다(예: 인증서 속성을 기준으로 구독 정책 템플릿을 만드는 경우). 자세한 내용은 AWS IoT를 통한 MQTT 연결용 클라이언트 ID 단원을 참조하십시오.

    버그 수정 및 개선 사항:

    • 섀도우 동기화 및 장치 인증서 관리자 재연결 문제를 수정했습니다.

    • 일반 성능 향상 및 버그 수정.

AWS IoT Greengrass 코어 디바이스에 코어 소프트웨어를 설치하려면 아키텍처 및 운영 체제(OS)용 패키지를 다운로드한 다음 시작 안내서의 단계를 따릅니다.

아키텍처

운영 체제

링크

ARMv8(AArch64)

Linux

다운로드

Armv7l

Linux

다운로드

x86_64

Linux

다운로드

이 소프트웨어를 다운로드하면 Greengrass 코어 소프트웨어 라이선스 계약에 동의하는 것입니다.

디바이스에 AWS IoT Greengrass 코어 소프트웨어를 설치하는 다른 옵션에 대한 자세한 내용은 섹션을 참조하세요AWS IoT Greengrass 코어 소프트웨어 설치.

 

AWS IoT Greengrass 스냅 소프트웨어

AWS IoT Greengrass 스냅 1.11.x를 사용하면 컨테이너화된 환경에서 필요한 모든 종속성과 함께 편리한 소프트웨어 패키지를 AWS IoT Greengrass 통해 제한된 버전의를 실행할 수 있습니다.

참고

AWS IoT Greengrass 스냅은 AWS IoT Greengrass 코어 소프트웨어 v1.11.x. AWS IoT Greengrass doesn에서 사용할 수 있으며 v1.10.x에 대한 스냅을 제공하지 않습니다. 지원되지 않는 버전에는 버그 수정 또는 업데이트가 제공되지 않습니다.

AWS IoT Greengrass 스냅은 커넥터 및 기계 학습(ML) 추론을 지원하지 않습니다.

자세한 내용은 스냅 AWS IoT Greengrass 으로 실행 단원을 참조하십시오.

 

AWS IoT Greengrass Docker 소프트웨어

AWS 는 Docker 컨테이너 AWS IoT Greengrass 에서 더 쉽게 실행할 수 있는 Dockerfile 및 Docker 이미지를 제공합니다.

Dockerfile

Dockerfiles에는 사용자 지정 AWS IoT Greengrass 컨테이너 이미지를 빌드하기 위한 소스 코드가 포함되어 있습니다. 다른 플랫폼 아키텍처에서 실행하거나 이미지 크기를 줄이기 위해 이미지를 수정할 수 있습니다. 지침은 README 파일을 참조하십시오.

대상 AWS IoT Greengrass 코어 소프트웨어 버전을 다운로드합니다.

v1.11
Extended life versions

 

도커 이미지

도커 이미지에는 Amazon Linux 2(x86_64) 및 Alpine Linux(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 이미지를 계속 다운로드할 수 있습니다. 그러나 AWS IoT Greengrass 코어 소프트웨어 v1.x Docker 이미지는 2022년 6월 30일에 유지 관리가 종료된 후 더 이상 보안 패치 또는 버그 수정을 받지 않습니다. 이러한 Docker 이미지에 의존하는 프로덕션 워크로드를 실행하는 경우에서 AWS IoT Greengrass 제공하는 Dockerfiles를 사용하여 자체 Docker 이미지를 빌드하는 것이 좋습니다. 자세한 내용은 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에서 이미지를 다운로드하는 방법에 대한 자세한 내용은 Docker 컨테이너 AWS IoT Greengrass 에서 실행 섹션을 참조하세요.

주의

AWS IoT Greengrass 코어 소프트웨어의 v1.11.6부터는 Python 2.7이 2020년 end-of-life에 도달하여 더 이상 보안 업데이트를 받지 못하므로 Greengrass Docker 이미지에 Python 2.7이 더 이상 포함되지 않습니다. 이러한 Docker 이미지로 업데이트하기로 선택한 경우, 업데이트를 프로덕션 장치에 배포하기 전에 애플리케이션이 새 Docker 이미지와 호환되는지 확인하는 것을 권장합니다. Greengrass Docker 이미지를 사용하는 애플리케이션에 Python 2.7이 필요한 경우, Python 2.7을 애플리케이션에 포함하도록 Greengrass Dockerfile을 수정할 수 있습니다.

AWS IoT Greengrass 는 AWS IoT Greengrass 코어 소프트웨어 v1.11.1용 Docker 이미지를 제공하지 않습니다.

참고

기본적으로 alpine-aarch64alpine-armv7l 이미지는 Arm 기반 호스트에서만 실행할 수 있습니다. x86 호스트에서 이러한 이미지를 실행하려면 QEMU를 설치하고 호스트에 QEMU 라이브러리를 탑재할 수 있습니다. 예시:

docker run --rm --privileged multiarch/qemu-user-static --reset -p yes

 

AWS IoT Greengrass 코어 SDK

Lambda 함수는 AWS IoT Greengrass 코어 SDK를 사용하여 로컬에서 AWS IoT Greengrass 코어와 상호 작용합니다. 이를 통해 배포된 Lambda 함수로 다음 작업이 가능합니다.

  • 로 MQTT 메시지를 교환합니다 AWS IoT Core.

  • MQTT 메시지를 Greengrass 그룹의 커넥터, 장치, 기타 Lambda 함수와 교환합니다.

  • 로컬 섀도우 서비스와 상호 작용합니다.

  • 다른 로컬 Lambda 함수를 간접적으로 호출합니다.

  • 암호 리소스에 액세스합니다.

  • 스트림 관리자와 상호 작용합니다.

GitHub에서 언어 또는 플랫폼용 AWS IoT Greengrass 코어 SDK를 다운로드합니다.

자세한 내용은 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 Machine Learning SDK을 사용하면 사용자가 작성하는 Lambda 함수가 로컬 기계 학습 모델을 사용하고 업로드 및 게시를 위해 ML 피드백 커넥터로 데이터를 전송할 수 있습니다.

v1.1.0
v1.0.0

연락을 기다리겠습니다.

우리는 여러분의 의견을 환영합니다. 문의하려면 AWS re:Post를 방문하여AWS IoT Greengrass 태그를 사용하십시오.