스트림 관리자
스트림 관리자 구성 요소(aws.greengrass.StreamManager
)를 사용하면 Greengrass 코어 디바이스에서 AWS 클라우드로 전송할 데이터 스트림을 처리할 수 있습니다.
사용자 지정 구성 요소에서 스트림 관리자를 구성하고 사용하는 방법에 대한 자세한 내용은 Greengrass 코어 디바이스에서 데이터 스트림 관리 섹션을 참조하세요.
버전
이 구성 요소에는 다음과 같은 버전이 있습니다.
-
2.1.x
-
2.0.x
참고
스트림 관리자를 사용하여 클라우드로 데이터를 내보내는 경우에는 스트림 관리자 구성 요소의 버전 2.0.7을 v2.0.8과 v2.0.11 사이의 버전으로 업그레이드할 수 없습니다. 스트림 관리자를 처음 배포하는 경우 최신 버전의 스트림 관리자 구성 요소를 배포하는 것이 좋습니다.
유형
이 구성 요소는 일반 구성 요소(aws.greengrass.generic
)입니다. Greengrass nucleus는 구성 요소의 수명 주기 스크립트를 실행합니다.
자세한 내용은 구성 요소 유형 단원을 참조하십시오.
운영 체제
이 구성 요소는 다음 운영 체제를 실행하는 코어 디바이스에 설치할 수 있습니다.
Linux
Windows
요구 사항
이 구성 요소에는 다음과 같은 요구 사항이 있습니다.
-
토큰 교환 역할은 스트림 관리자와 함께 사용하는 AWS 클라우드 대상에 대한 액세스를 허용해야 합니다. 자세한 내용은 다음을 참조하세요.
-
스트림 관리자 구성 요소는 VPC에서 실행할 수 있습니다. 이 구성 요소를 VPC에 배포하려면 다음이 필요합니다.
-
스트림 관리자 구성 요소에는 데이터를 게시하는 AWS 서비스에 연결되어 있어야 합니다.
-
Amazon S3:
com.amazonaws.
region
.s3 -
Amazon Kinesis Data Streams:
com.amazonaws.
region
.kinesis-streams -
AWS IoT SiteWise:
com.amazonaws.
region
.iotsitewise.data
-
-
us-east-1
리전의 Amazon S3에 데이터를 게시하는 경우 이 구성 요소는 기본적으로 S3 전역 엔드포인트를 사용하려고 시도하지만 이 엔드포인트는 Amazon S3 VPC 인터페이스 엔드포인트를 통해서는 사용할 수 없습니다. 자세한 내용은 Amazon S3용 AWS PrivateLink에 대한 규제 및 제한을 참조하세요. 이 문제를 해결하려면 다음 옵션 중에서 선택할 수 있습니다.-
JVM_ARGS
에서-Daws.s3UseUsEast1RegionalEndpoint=regional
을 설정하여us-east-1
리전의 지역 S3 엔드포인트를 사용하도록 스트림 관리자 구성 요소를 구성합니다. -
Amazon S3 인터페이스 VPC 엔드포인트 대신 Amazon S3 게이트웨이 VPC 엔드포인트를 생성합니다. S3 게이트웨이 엔드포인트는 S3 전역 엔드포인트에 대한 액세스를 지원합니다. 자세한 내용은 게이트웨이 엔드포인트 생성을 참조하세요.
-
-
엔드포인트 및 포트
이 구성 요소는 기본 작업에 필요한 엔드포인트 및 포트 외에 다음 엔드포인트 및 포트에 대한 아웃바운드 요청도 수행할 수 있어야 합니다. 자세한 내용은 프록시 또는 방화벽을 통해 디바이스 트래픽 허용 단원을 참조하십시오.
엔드포인트 | 포트 | 필수 | 설명 |
---|---|---|---|
|
443 | 아니요 |
AWS IoT Analytics에 데이터를 게시하는 경우 필요합니다. |
|
443 | 아니요 |
Firehose에 데이터를 게시하는 경우 필요합니다. |
|
443 | 아니요 |
AWS IoT SiteWise에 데이터를 게시하는 경우 필요합니다. |
|
443 | 아니요 |
S3 버킷에 데이터를 게시하는 경우 필요합니다.
|
의존성
구성 요소를 배포하면 AWS IoT Greengrass에서 해당 종속성의 호환 버전도 배포합니다. 즉, 구성 요소를 성공적으로 배포하려면 구성 요소 및 모든 해당 종속성에 대한 요구 사항을 충족해야 합니다. 이 섹션에는 이 구성 요소의 릴리스된 버전에 대한 종속성과 각 종속성에 대한 구성 요소 버전을 정의하는 의미 체계 버전 제약 조건이 나열되어 있습니다. AWS IoT Greengrass 콘솔
구성 요소 종속성에 대한 자세한 내용은 구성 요소 레시피 참조를 참조하세요.
구성
이 구성 요소는 구성 요소를 배포할 때 사용자 지정할 수 있는 다음 구성 파라미터를 제공합니다.
STREAM_MANAGER_STORE_ROOT_DIR
-
(선택 사항) 스트림을 저장하는 데 사용되는 로컬 디렉터리의 절대 경로. 이 값은 슬래시로 시작해야 합니다(예:
/data
).기존 폴더를 지정해야 하며 스트림 관리자 구성 요소를 실행하는 시스템 사용자에게 이 폴더를 읽고 쓸 권한이 있어야 합니다. 예를 들어 다음 명령을 실행하여 스트림 관리자 루트 폴더로 지정하는 폴더(
/var/greengrass/streams
)를 생성하고 구성할 수 있습니다. 이러한 명령을 사용하면 기본 시스템 사용자(ggc_user
)가 이 폴더를 읽고 쓸 수 있습니다.sudo mkdir /var/greengrass/streams sudo chown ggc_user /var/greengrass/streams sudo chmod 700 /var/greengrass/streams
기본값:
/work/aws.greengrass.StreamManager/greengrass/v2
STREAM_MANAGER_SERVER_PORT
-
(선택 사항) 스트림 관리자와 통신하는 데 사용하는 로컬 포트 번호.
임의의 사용 가능한 포트를 사용하도록
0
을 지정할 수 있습니다.기본값:
8088
STREAM_MANAGER_AUTHENTICATE_CLIENT
-
(선택 사항) 클라이언트가 스트림 관리자와 상호 작용하기 전에 의무적으로 인증하도록 할 수 있습니다. 스트림 관리자 SDK는 클라이언트와 스트림 관리자 간의 상호 작용을 제어합니다. 이 파라미터는 스트림 관리자 SDK를 직접 호출하여 스트림 작업을 수행할 수 있는 클라이언트를 결정합니다. 자세한 내용은 스트림 관리자 클라이언트 인증을 참조하세요.
true
를 지정하는 경우 스트림 관리자 SDK는 Greengrass 구성 요소만 클라이언트로 허용합니다.false
를 지정하는 경우 스트림 관리자 SDK는 코어 디바이스의 모든 프로세스를 클라이언트로 허용합니다.기본값:
true
STREAM_MANAGER_EXPORTER_MAX_BANDWIDTH
-
(선택 사항) 스트림 관리자가 데이터를 내보내는 데 사용할 수 있는 평균 최대 대역폭(초당 킬로비트).
기본값: 제한 없음
STREAM_MANAGER_EXPORTER_THREAD_POOL_SIZE
-
(선택 사항) 스트림 관리자가 데이터를 내보내는 데 사용할 수 있는 최대 활성 스레드 수.
최적의 크기는 하드웨어, 스트림 볼륨 및 계획된 내보내기 스트림 수에 따라 다릅니다. 내보내기 속도가 느린 경우 이 설정을 조정하여 하드웨어 및 비즈니스 사례에 가장 적합한 크기를 찾을 수 있습니다. 코어 장치 하드웨어의 CPU 및 메모리는 제한적인 요소입니다. 시작을 위해 이 값을 장치의 프로세서 코어 수와 동일하게 설정해 볼 수 있습니다.
하드웨어가 지원할 수 있는 크기 보다 크게 설정하지 않도록 주의하십시오. 각 스트림은 하드웨어 리소스를 사용하므로 제한된 디바이스에서는 내보내기 스트림 수를 제한하세요.
기본값: 스레드 5개
STREAM_MANAGER_EXPORTER_S3_DESTINATION_MULTIPART_UPLOAD_MIN_PART_SIZE_BYTES
-
(선택 사항) Amazon S3에 대한 멀티파트 업로드의 최소 부분 크기(바이트). 스트림 관리자는 이 설정과 입력 파일의 크기를 사용하여 멀티파트 PUT 요청에서 데이터를 일괄 처리하는 방법을 결정합니다.
참고
스트림 관리자는 스트림
sizeThresholdForMultipartUploadBytes
속성을 사용하여 Amazon S3로 단일 또는 멀티파트 업로드로 내보낼지 여부를 결정합니다. AWS IoT Greengrass 구성 요소는 Amazon S3로 내보내는 스트림을 생성할 때 이 임계값을 설정할 수 있습니다.기본값:
5242880
(5MB) 이는 또한 최소값입니다. LOG_LEVEL
-
(선택 사항) 구성 요소의 로깅 수준. 여기에 수준 순서대로 나열된 다음 로그 수준 중에서 선택합니다.
-
TRACE
-
DEBUG
-
INFO
-
WARN
-
ERROR
기본값:
INFO
-
JVM_ARGS
-
(선택 사항) 시작 시 스트림 관리자에게 전달할 사용자 지정 Java 가상 머신 인수. 여러 인수는 공백으로 구분합니다.
JVM에서 사용하는 기본 설정을 재정의해야 하는 경우에만 이 파라미터를 사용합니다. 예를 들어 많은 수의 스트림을 내보낼 계획이 있다면 기본 힙 크기를 늘려야 할 수 있습니다.
예: 구성 병합 업데이트
다음 예제 구성은 기본 포트가 아닌 포트를 사용하도록 지정합니다.
{ "STREAM_MANAGER_SERVER_PORT": "18088" }
로컬 로그 파일
이 구성 요소는 다음 로그 파일을 사용합니다.
이 구성 요소의 로그를 보려면
-
코어 디바이스에서 다음 명령을 실행하여 실시간으로 이 구성 요소의 로그 파일을 봅니다.
또는/greengrass/v2
C:\greengrass\v2
를 AWS IoT Greengrass 루트 폴더의 경로로 바꿉니다.
Changelog
다음 표에는 각 구성 요소 버전의 변경 사항이 설명되어 있습니다.
버전 |
변경 |
---|---|
2.1.13 |
|
2.1.12 |
|
2.1.11 |
Greengrass nucleus 버전 2.12.0 릴리스용으로 업데이트된 버전입니다. |
2.1.10 |
|
2.1.9 |
Greengrass nucleus 버전 2.11.0 릴리스용으로 업데이트된 버전입니다. |
2.1.8 |
|
2.1.7 |
|
2.1.6 |
|
2.1.5 |
Greengrass nucleus 버전 2.10.0 릴리스용으로 업데이트된 버전입니다. |
2.1.4 |
|
2.1.3 |
|
2.1.2 |
|
2.1.1 |
Greengrass nucleus 버전 2.8.0 릴리스용으로 업데이트된 버전입니다. |
2.1.0 |
|
2.0.15 |
Greengrass nucleus 버전 2.6.0 릴리스용으로 업데이트된 버전입니다. |
2.0.14 |
이 버전에는 버그 수정과 개선 사항이 포함되어 있습니다. |
2.0.13 |
Greengrass nucleus 버전 2.5.0 릴리스용으로 업데이트된 버전입니다. |
2.0.12 |
|
2.0.11 |
Greengrass nucleus 버전 2.4.0 릴리스용으로 업데이트된 버전입니다. |
2.0.10 |
Greengrass nucleus 버전 2.3.0 릴리스용으로 업데이트된 버전입니다. |
2.0.9 |
Greengrass nucleus 버전 2.2.0 릴리스용으로 업데이트된 버전입니다. |
2.0.8 |
Greengrass nucleus 버전 2.1.0 릴리스용으로 업데이트된 버전입니다. |
2.0.7 |
초기 버전 |