nucleus 원격 측정 이미터 - AWS IoT Greengrass

nucleus 원격 측정 이미터

nucleus 원격 측정 이미터 구성 요소(aws.greengrass.telemetry.NucleusEmitter)는 시스템 상태 원격 측정 데이터를 수집하여 로컬 주제 및 AWS IoT Core MQTT 주제에 지속적으로 게시합니다. 이 구성 요소를 사용하면 Greengrass 코어 디바이스에서 실시간 시스템 원격 측정 데이터를 수집할 수 있습니다. Amazon EventBridge에 시스템 원격 측정 데이터를 게시하는 Greengrass 원격 측정 에이전트에 대한 자세한 내용은 AWS IoT Greengrass 코어 디바이스에서 시스템 상태 원격 측정 데이터 수집 섹션을 참조하세요.

기본적으로 nucleus 원격 측정 이미터 구성 요소는 60초마다 다음 로컬 게시/구독 주제에 원격 측정 데이터를 게시합니다.

$local/greengrass/telemetry

nucleus 원격 측정 이미터 구성 요소는 기본적으로 AWS IoT Core MQTT 주제에 게시하지 않습니다. 이 구성 요소를 배포할 때 AWS IoT Core MQTT 주제에 게시하도록 구성할 수 있습니다. MQTT 주제를 사용하여 AWS 클라우드에 데이터를 게시하는 경우에는 AWS IoT Core 요금이 적용됩니다.

AWS IoT Greengrass는 InfluxDB 및 Grafana를 사용하여 코어 디바이스에서 로컬로 원격 측정 데이터를 분석하고 시각화하는 데 도움이 되는 여러 커뮤니티 구성 요소를 제공합니다. 이러한 구성 요소는 nucleus 이미터 구성 요소의 원격 측정 데이터를 사용합니다. 자세한 내용은 InfluxDB 게시자 구성 요소에 대한 README를 참조하세요.

버전

이 구성 요소에는 다음과 같은 버전이 있습니다.

  • 1.0.x

유형

이 구성 요소는 플러그인 구성 요소(aws.greengrass.plugin)입니다. Greengrass nucleus는 이 구성 요소를 nucleus와 동일한 Java 가상 머신(JVM)에서 실행합니다. 코어 디바이스에서 이 구성 요소의 버전을 변경하면 nucleus가 다시 시작됩니다.

이 구성 요소는 Greengrass nucleus와 동일한 로그 파일을 사용합니다. 자세한 내용은 AWS IoT Greengrass 로그 모니터링 섹션을 참조하세요.

자세한 내용은 구성 요소 유형 섹션을 참조하세요.

운영 체제

이 구성 요소는 다음 운영 체제를 실행하는 코어 디바이스에 설치할 수 있습니다.

  • Linux

  • Windows

의존성

구성 요소를 배포하면 AWS IoT Greengrass에서 해당 종속성의 호환 버전도 배포합니다. 즉, 구성 요소를 성공적으로 배포하려면 구성 요소 및 모든 해당 종속성에 대한 요구 사항을 충족해야 합니다. 이 단원에는 이 구성 요소의 릴리스된 버전에 대한 종속성과 각 종속성에 대한 구성 요소 버전을 정의하는 의미 체계 버전 제약 조건이 나열되어 있습니다. AWS IoT Greengrass 콘솔에서도 각 구성 요소 버전에 대한 종속성을 볼 수 있습니다. 구성 요소 세부 정보 페이지에서 종속성 목록을 찾습니다.

1.0.9

다음 표에는 이 구성 요소의 버전 1.0.9에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.4.0 <2.14.0 하드
1.0.8

다음 표에는 이 구성 요소의 버전 1.0.8에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.4.0 <2.13.0 하드
1.0.7

다음 표에는 이 구성 요소의 버전 1.0.7에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.4.0 <2.12.0 하드
1.0.6

다음 표에는 이 구성 요소의 버전 1.0.6에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.4.0 <2.11.0 하드
1.0.5

다음 표에는 이 구성 요소의 버전 1.0.6에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.4.0 <2.10.0 하드
1.0.4

다음 표에는 이 구성 요소의 버전 1.0.4에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.4.0 <2.9.0 하드
1.0.3

다음 표에는 이 구성 요소의 버전 1.0.3에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.4.0 <2.8.0 하드
1.0.2

다음 표에는 이 구성 요소의 버전 1.0.2에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.4.0 <2.7.0 하드
1.0.1

다음 표에는 이 구성 요소의 버전 1.0.1에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.4.0 <2.6.0 하드
1.0.0

다음 표에는 이 구성 요소의 버전 1.0.0에 대한 종속성이 나열되어 있습니다.

종속성 호환 버전 종속성 유형
Greengrass nucleus >=2.4.0 <2.5.0 하드

구성 요소 종속성에 대한 자세한 내용은 구성 요소 레시피 참조를 참조하세요.

구성

이 구성 요소는 구성 요소를 배포할 때 사용자 지정할 수 있는 다음 구성 파라미터를 제공합니다.

pubSubPublish

(선택 사항) 원격 측정 데이터를 $local/greengrass/telemetry 주제에 게시할지 여부를 정의합니다. 지원되는 값은 truefalse입니다.

기본값: true

mqttTopic

(선택 사항) 이 구성 요소가 원격 측정 데이터를 게시하는 AWS IoT Core MQTT 주제입니다.

이 값을 원격 측정 데이터를 게시할 AWS IoT Core MQTT 주제로 설정합니다. 이 값이 비어 있으면 nucleus 이미터는 원격 측정 데이터를 AWS 클라우드에 게시하지 않습니다.

참고

MQTT 주제를 사용하여 AWS 클라우드에 데이터를 게시하는 경우에는 AWS IoT Core 요금이 적용됩니다.

기본값: ""

telemetryPublishIntervalMs

(선택 사항) 구성 요소가 원격 측정 데이터를 게시하는 시간 간격(밀리초)입니다. 이 값을 지원되는 최소 값보다 낮게 설정하면 구성 요소에서 대신 최소값을 사용합니다.

참고

게시 간격이 짧으면 코어 디바이스의 CPU 사용량이 늘어납니다. 기본 게시 간격으로 시작하여 디바이스의 CPU 사용량에 따라 조정하는 것이 좋습니다.

최소: 500

기본값: 60000

예: 구성 병합 업데이트

다음 예제에서는 $local/greengrass/telemetry 주제 및 greengrass/myTelemetry AWS IoT Core MQTT 주제에 5초마다 원격 측정 데이터를 게시할 수 있는 샘플 구성 병합 업데이트를 보여줍니다.

{ "pubSubPublish": "true", "mqttTopic": "greengrass/myTelemetry", "telemetryPublishIntervalMs": 5000 }

출력 데이터

이 구성 요소는 원격 측정 지표를 다음 주제에 대한 JSON 배열로 게시합니다.

로컬 주제: $local/greengrass/telemetry

필요에 따라 AWS IoT Core MQTT 주제에도 원격 측정 지표를 게시하도록 선택할 수 있습니다. 자세한 내용은 AWS IoT Core 개발자 안내서MQTT topics를 참조하세요.

예시 데이터
[ { "A": "Average", "N": "CpuUsage", "NS": "SystemMetrics", "TS": 1627597331445, "U": "Percent", "V": 26.21981271562346 }, { "A": "Count", "N": "TotalNumberOfFDs", "NS": "SystemMetrics", "TS": 1627597331445, "U": "Count", "V": 7316 }, { "A": "Count", "N": "SystemMemUsage", "NS": "SystemMetrics", "TS": 1627597331445, "U": "Megabytes", "V": 10098 }, { "A": "Count", "N": "NumberOfComponentsStarting", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsInstalled", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsStateless", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsStopping", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsBroken", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsRunning", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 7 }, { "A": "Count", "N": "NumberOfComponentsErrored", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsNew", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 0 }, { "A": "Count", "N": "NumberOfComponentsFinished", "NS": "GreengrassComponents", "TS": 1627597331446, "U": "Count", "V": 2 } ]

출력 배열에는 다음 속성을 가진 지표 목록이 포함됩니다.

A

지표에 대한 집계 유형입니다.

CpuUsage 지표의 경우 지표의 게시된 값이 마지막 게시 이벤트 이후의 평균 CPU 사용량이므로 이 속성은 Average로 설정됩니다.

다른 모든 지표의 경우 nucleus 이미터에서 지표 값을 집계하지 않으며 이 속성은 Count로 설정됩니다.

N

지표의 이름.

NS

지표 네임스페이스입니다.

TS

데이터가 수집된 시기의 타임스탬프입니다.

U

지표 값의 단위입니다.

V

지표 값.

nucleus 이미터는 다음 지표를 게시합니다.

명칭 설명

시스템

SystemMemUsage

운영 체제를 포함하여 Greengrass 코어 장치의 모든 애플리케이션에서 현재 사용 중인 메모리의 양입니다.

CpuUsage

운영 체제를 포함하여 Greengrass 코어 장치의 모든 애플리케이션에서 현재 사용 중인 CPU의 양입니다.

TotalNumberOfFDs

Greengrass 코어 장치의 운영 체제에 저장된 파일 디스크립터 수입니다. 하나의 파일 디스크립터는 열려 있는 파일 하나를 고유하게 식별합니다.

Greengrass nucleus

NumberOfComponentsRunning

Greengrass 코어 디바이스에서 실행 중인 구성 요소의 수입니다.

NumberOfComponentsErrored

Greengrass 코어 디바이스에서 오류 상태에 있는 구성 요소의 수입니다.

NumberOfComponentsInstalled

Greengrass 코어 디바이스에 설치된 구성 요소의 수입니다.

NumberOfComponentsStarting

Greengrass 코어 디바이스에서 시작하는 구성 요소의 수입니다.

NumberOfComponentsNew

Greengrass 코어 디바이스의 새로운 구성 요소의 수입니다.

NumberOfComponentsStopping

Greengrass 코어 디바이스에서 중지하는 구성 요소의 수입니다.

NumberOfComponentsFinished

Greengrass 코어 디바이스에서 완료된 구성 요소의 수입니다.

NumberOfComponentsBroken

Greengrass 코어 디바이스에서 손상된 구성 요소의 수입니다.

NumberOfComponentsStateless

Greengrass 코어 디바이스에 있는 상태 비저장 구성 요소의 수입니다.

사용량

시스템 상태 원격 측정 데이터를 사용하려면 nucleus 이미터가 원격 측정 데이터를 게시하는 주제를 구독하는 사용자 지정 구성 요소를 생성하고 필요에 따라 해당 데이터에 대응할 수 있습니다. nucleus 이미터 구성 요소에서 원격 측정 데이터를 로컬 주제에 게시하는 옵션을 제공하므로 해당 주제를 구독하고 게시된 데이터를 사용하여 코어 디바이스에서 로컬로 작업할 수 있습니다. 그러면 코어 디바이스는 클라우드에 대한 연결이 제한된 경우에도 원격 측정 데이터에 대응할 수 있습니다.

예를 들어 $local/greengrass/telemetry 주제에서 원격 측정 데이터를 수신하는 구성 요소를 구성하고 스트림 관리자 구성 요소에 데이터를 전송하여 데이터를 AWS 클라우드로 스트리밍할 수 있습니다. 이러한 구성 요소를 생성하는 방법에 대한 자세한 내용은 로컬 메시지 게시/구독스트림 관리자를 사용하는 사용자 지정 구성 요소 생성 섹션을 참조하세요.

로컬 로그 파일

이 구성 요소는 Greengrass nucleus 구성요소와 동일한 로그 파일을 사용합니다.

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
이 구성 요소의 로그를 보려면
  • 코어 디바이스에서 다음 명령을 실행하여 실시간으로 이 구성 요소의 로그 파일을 봅니다. /greengrass/v2 또는 C:\greengrass\v2를 AWS IoT Greengrass 루트 폴더의 경로로 바꿉니다.

    Linux
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait

Changelog

다음 표에는 각 구성 요소 버전의 변경 사항이 설명되어 있습니다.

버전

변경

1.0.9

Greengrass nucleus 버전 2.13.0 릴리스용으로 업데이트된 버전입니다.

1.0.8

Greengrass nucleus 버전 2.12.0 릴리스용으로 업데이트된 버전입니다.

1.0.7

Greengrass nucleus 버전 2.11.0 릴리스용으로 업데이트된 버전입니다.

1.0.6

Greengrass nucleus 버전 2.10.0 릴리스용으로 업데이트된 버전입니다.

1.0.5

Greengrass nucleus 버전 2.9.0 릴리스용으로 업데이트된 버전입니다.

1.0.4

Greengrass nucleus 버전 2.8.0 릴리스용으로 업데이트된 버전입니다.

1.0.3

Greengrass nucleus 버전 2.7.0 릴리스용으로 업데이트된 버전입니다.

1.0.2

Greengrass nucleus 버전 2.6.0 릴리스용으로 업데이트된 버전입니다.

1.0.1

Greengrass nucleus 버전 2.5.0 릴리스용으로 업데이트된 버전입니다.

1.0.0

초기 버전