MQTT 지원 V3 게이트웨이를 사용하여 SiteWise Edge에 데이터 통합 - AWS IoT SiteWise

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

MQTT 지원 V3 게이트웨이를 사용하여 SiteWise Edge에 데이터 통합

이 자습서에서는 MQTT 메시징 프로토콜을 사용하는 타사 디바이스 및 센서를 AWS IoT SiteWise MQTT 지원 V3 게이트웨이와 통합하는 방법을 안내합니다. MQTT 지원 디바이스에서 데이터를 수집하고 모니터링하도록 AWS IoT SiteWise 엣지 게이트웨이를 설정하는 방법을 알아봅니다.를 AWS IoT SiteWise 사용하면 산업 장비 데이터를 수집, 처리 및 모니터링할 수 있습니다. SiteWise Edge 기능을 사용하여 산업 IoT 운영을 최적화하고 원시 데이터를 실행 가능한 인사이트로 변환합니다.

이 자습서에서는 풍력 발전소 데모의 데이터를 사용하여 주요 개념을 설명합니다. 프로세스에 익숙해지면 자체 데이터로 자습서를 반복할 수 있습니다.

이 자습서를 완료한 후 다음 항목을 수행할 수 있습니다.

  • 산업용 디바이스에서 데이터를 수신하도록 MQTT 지원 V3 게이트웨이 설정 및 구성

  • 엣지에서 장비로부터 수신되는 MQTT 메시지 처리 및 검증

  • 타사 시각화 플랫폼을 AWS IoT SiteWise 사용하여에서 디바이스 데이터 보기

  • 엣지 게이트웨이에서 로 처리된 데이터를 전송 AWS 클라우드 하여 중앙 집중식 스토리지 및 추가 분석 지원

또한 다른 AWS IoT 서비스에 연결하여 다음 작업을 수행하여 엣지 게이트웨이 기능을 활용할 수 있습니다.

  • Amazon Amazon S3 Timestream, 등의 서비스로 데이터를 라우팅하도록 AWS IoT 규칙을 구성합니다AWS Lambda.

  • AWS IoT Device Defender를 사용하여 게이트웨이 구성을 원격으로 관리하고 업데이트합니다.

  • AWS IoT 보안 기능을 사용하여 보안 디바이스 인증 및 권한 부여를 구현합니다. 자세한 내용은 AWS IoT 개발자 안내서AWS IoT 보안을 참조하세요.

  • 장비 데이터를 기반으로 자동 알림 및 알림을 생성합니다. 자세한 내용은 AWS IoT 개발자 안내서규칙을 AWS IoT 참조하세요.

참고

이 자습서에서는 타사 서비스, 도구 및 설명서를 참조합니다. AWS 는 타사 제품 또는 서비스의 공급업체 또는 공급업체가 아니며 외부 공급자의 정보의 정확성을 보장할 수 없습니다. 배포 전에 모든 타사 도구를 평가하고 검증합니다.

사전 조건

이 자습서를 완료하려면 다음이 필요합니다.

중요

이 자습서에서는 데이터 수집 자습서에서 생성된 리소스를 사용해야 합니다. 이 자습서를 진행하기 전에 완료해야 합니다.

1단계: AWS IoT 정책 생성

이 자습서에서는 데이터 수집 자습서에서 생성한 AWS IoT 정책을 사용합니다. 이 정책은 디바이스에 대한 보안 규칙을 설정하고 외부 디바이스 및 센서의 디지털 표현을 생성합니다 AWS IoT. 이 정책은 타사 디바이스가 MQTT(Message Queuing Telemetry Transport)를 AWS IoT Core 사용하여 로 데이터를 전송하도록 허용합니다. MQTT 메시지에 대한 자세한 내용은 MQTT란 무엇인가요?를 참조하세요.

Console

AWS IoT 정책이 완료되었는지 확인합니다. 자세한 지침은 데이터 수집 자습서의 1단계를 참조하세요.

활성 AWS IoT 정책이 있는지 확인하려면

  1. AWS IoT 콘솔로 이동합니다.

  2. 왼쪽 탐색 창에서 보안, 정책을 차례로 선택합니다.

  3. 생성한 정책을 선택합니다. 예를 들어 SiteWiseTutorialDevicePolicy입니다.

  4. 정책의 상태가 활성으로 나열되어 있는지 확인합니다.

AWS CLI

AWS IoT 정책이 완료되었는지 확인합니다. 자세한 지침은 데이터 수집 자습서의 1단계를 참조하세요.

AWS CLI 명령 참조의 다음 AWS CLI get-policy 명령을 사용하여 활성 AWS IoT 정책이 있는지 확인합니다.

aws iot get-policy --policy-name "SiteWiseTutorialDevicePolicy"

이 정책을 통해 AWS IoT 디바이스는 MQTT 메시지를 사용하여 연결을 설정하고 디바이스 섀도우와 통신할 수 있습니다. 디바이스 섀도우와 상호 작용하기 위해 AWS IoT 사물은 로 시작하는 주제에 대해 MQTT 메시지를 게시하고 수신합니다$aws/things/thing-name/shadow/. 이 정책은 ${iot:Connection.Thing.ThingName}이라는 사물 정책 변수를 통합합니다. 이 변수는 각 주제에서 연결된 사물의 이름을 대체합니다. iot:Connect 문은 연결할 수 있는 디바이스를 제한하므로 사물 정책 변수는 SiteWiseTutorialDevice로 시작하는 이름만 대체할 수 있습니다.

자세한 내용은 AWS IoT 개발자 가이드사물 정책 변수를 참조하세요.

참고

이 정책은 이름이 SiteWiseTutorialDevice로 시작하는 사물에 적용됩니다. 사물에 다른 이름을 사용하려면 그에 따라 정책을 업데이트해야 합니다.

2단계: AWS IoT 사물 생성 및 구성

이 단계에서는 엣지 디바이스를 AWS IoT 사물로 등록하고 AWS IoT SiteWise Edge와의 보안 통신에 필요한 사물의 인증서와 키를 생성합니다. 이 프로세스는 디바이스가 MQTT 지원 V3 게이트웨이를 통해 타사 데이터를 전송할 수 있는 기반을 설정합니다.

Console

AWS IoT 사물의 생성 및 구성 단계가 완료되었는지 확인합니다. 자세한 지침은 데이터 수집 자습서의 2단계를 참조하세요.

활성 AWS IoT 사물이 있는지 확인하려면

  1. AWS IoT 콘솔로 이동합니다.

  2. 왼쪽 탐색 창에서 모든 디바이스를 선택한 다음 사물을 선택합니다.

  3. 생성한 사물을 선택합니다. 예를 들어 SiteWiseTutorialDevice1입니다.

  4. 인증서에서 상태가 활성으로 나열되었는지 확인합니다.

AWS CLI

AWS IoT 사물의 생성 및 구성 단계가 완료되었는지 확인합니다. 자세한 지침은 데이터 수집 자습서의 2단계를 참조하세요.

다음 AWS CLI 명령을 사용하여 활성 AWS IoT 정책이 있는지 확인합니다.

aws iot describe-thing --thing-name "SiteWiseTutorialDevice1"

이 단계를 완료한 후 디바이스를 AWS IoT SiteWise Edge에 안전하게 연결할 수 있습니다. MQTT 인증을 위해 생성한 인증서와 키를 저장하는 로컬 디렉터리를 생성했습니다. 디바이스가 AWS IoT 콘솔에 AWS IoT 사물로 등록되고 디바이스가 SiteWise Edge와 데이터를 통합할 준비가 되었습니다. 산업 장비 또는 기타 디바이스를 AWS IoT 플랫폼에 연결하고 SiteWise Edge에 데이터 수집을 시작할 수 있습니다.

3단계: SiteWise Edge MQTT 지원 V3 게이트웨이 구성

이 단계에서는 AWS IoT SiteWise Edge MQTT 지원 V3 게이트웨이를 생성하고 EMQX 브로커에서 데이터를 수신하도록 구성합니다. 게이트웨이는 디바이스와 간의 브리지 역할을 합니다 AWS IoT. 이렇게 하면 로 전송하기 전에 엣지에서 로컬로 데이터를 처리할 수 있습니다 AWS 클라우드. 이 구성은 대역폭을 줄이고 클라우드 처리 지연을 줄입니다.

Console

AWS IoT SiteWise MQTT 지원 V3 게이트웨이를 생성하려면

  1. AWS Management Console 에 로그인한 다음 AWS IoT SiteWise 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 엣지 게이트웨이를 선택한 다음 게이트웨이 생성을 선택합니다.

  3. 배포 대상에서 자체 호스팅 게이트웨이를 선택합니다.

  4. 자체 호스팅 게이트웨이 옵션에서 MQTT 지원, V3 게이트웨이 - 권장을 선택합니다.

  5. 게이트웨이 구성에서:

    1. 게이트웨이 이름에 게이트웨이의 이름을 입력합니다. 예를 들어 SiteWise Tutorial Device Gateway입니다.

    2. Greengrass 디바이스 OS에서 디바이스에 적합한 옵션을 선택합니다.

  6. 고급 구성에서:

    1. 기본 설정을 선택합니다.

    2. Greengrass 코어 디바이스의 이름을 입력하거나에서 생성된 이름을 사용합니다 AWS IoT SiteWise.

  7. 게이트웨이 생성을 선택합니다.

  8. 확인 대화 상자에서 생성 및 다운로드를 선택하여 SiteWise Edge 게이트웨이에 대한 설치 관리자를 생성합니다. 자세한 내용은 자체 호스팅 SiteWise Edge 게이트웨이 생성을 참조하세요.

주의

설치 관리자 파일을 안전한 위치에 저장합니다. 이 파일은 재생성할 수 없으며 이후 단계에서 게이트웨이 설정을 완료하는 데 필요합니다.

AWS CLI

AWS CLI 를 사용하여 자체 호스팅 게이트웨이를 생성합니다. 게이트웨이의 이름을 제공하고 플랫폼 및 게이트웨이 버전을 지정해야 합니다. 자세한 내용은 API 참조의 CreateGateway를 참조하세요. AWS IoT SiteWise

이 예시를 사용하려면 사용자 입력 자리 표시자를 실제 정보로 대체하세요.

aws iotsitewise create-gateway \ --gateway-name SiteWise Tutorial Device Gateway \ --gateway-platform greengrassV2={coreDeviceThingName=your-core-device-thing-name, coreDeviceOperatingSystem=LINUX_AMD64} \ --gateway-version 3 \ [--cli-input-json your-configuration]
  • gateway-name - 게이트웨이의 고유한 이름입니다. 예: SiteWise Tutorial Device Gateway.

  • gateway-platform -를 입력합니다greengrassV2. 자세한 내용은 API 참조의 CreateGateway를 참조하세요. AWS IoT SiteWise

    • coreDeviceThingName - AWS IoT Greengrass V2 코어 디바이스에 대한 AWS IoT 사물의 이름입니다. 예를 들어 SiteWiseTutorialDevice1입니다.

    • coreDeviceOperatingSystem - 코어 디바이스의 운영 체제입니다 AWS IoT Greengrass V2. 게이트웨이 버전 3에는 운영 체제를 지정해야 합니다. 옵션에는 LINUX_AARCH64, 및 LINUX_AMD64가 포함됩니다WINDOWS_AMD64.

  • gateway-version - 게이트웨이의 버전입니다.

    • 게이트웨이 버전에 3를 사용하여 MQTT 지원 V3 게이트웨이를 생성합니다.

  • cli-input-json - 요청 파라미터가 포함된 JSON 파일입니다.

다음 AWS CLI 명령을 사용하여 게이트웨이가 성공적으로 생성되었는지 확인합니다.

aws iotsitewise describe-gateway --gateway-id your-gateway-id

4단계: SiteWise Edge 게이트웨이 소프트웨어 설치

게이트웨이 소프트웨어를 설치하려면 이전 단계에서 다운로드한 설치 관리자 패키지를 사용합니다. 설치 프로세스는 필요한 구성 요소를 구성하고, Greengrass 코어 서비스를 시작하고, 디바이스를에 등록합니다 AWS IoT Greengrass. 설치가 완료되면 게이트웨이가 AWS IoT SiteWise 콘솔엣지 게이트웨이 아래에 나타나고 Greengrass 서비스가 디바이스에서 제대로 실행되고 있는지 확인합니다.

자세한 지침은 로컬 디바이스에 AWS IoT SiteWise Edge 게이트웨이 소프트웨어 설치 섹션을 참조하세요.

5단계: 외부 애플리케이션에 연결하도록 EMQX 브로커 구성

참고

계속하기 전에 SiteWise Edge MQTT 지원 V3 게이트웨이를 배포해야 합니다. 게이트웨이는 EMQX 브로커를 구성하는 데 필요한 인프라 및 보안 설정을 제공합니다. 활성 게이트웨이 배포 없이 브로커 구성이 실패합니다.

IoT 디바이스와 외부 애플리케이션 간의 보안 통신을 활성화하도록 EMQX 브로커를 구성합니다. EMQX 브로커는 IoT 디바이스, 게이트웨이 및 애플리케이션 간에 데이터를 라우팅하는 중앙 메시징 허브 역할을 합니다. EMQX 브로커는 게이트웨이와 엣지의 연결된 애플리케이션에서 안정적인 메시지 전송을 보장합니다. 자세한 내용은 외부 애플리케이션을 EMQX 브로커에 연결 단원을 참조하십시오.

EMQX 브로커를 구성하려면

  1. EMQX 브로커를 설정합니다. 자세한 구성 지침은 인증을 위한 EMQX 배포 구성 업데이트의 1~14단계를 따릅니다.

  2. 풍력 발전소 모니터링을 위한 MQTT 주제를 설정합니다. MQTT 요구 사항에 대한 자세한 내용은 섹션을 참조하세요MQTT 주제 요구 사항.

    1. CPU 사용량: SiteWiseTutorialDevice/cpu

    2. 메모리 사용량: SiteWiseTutorialDevice/memory

    3. 타임스탬프: SiteWiseTutorialDevice/timestamp

  3. 구성을 검토하고 배포를 완료합니다.

    1. 확인을 선택하여 설정을 저장합니다.

    2. 검토 단계에 도달할 때까지 다음을 선택합니다.

    3. 검토 페이지에서 배포를 선택합니다.

    4. 계속하기 전에 배포가 성공적으로 완료될 때까지 기다립니다.

  4. 페이로드 형식을 사용하여 메시지를 준비하여 EMQX 브로커로 전송합니다. 페이로드 구조화에 대한 자세한 내용은 인증을 위한 EMQX 배포 구성 업데이트를 참조하세요.

  5. 다음 보안 조치를 구현합니다.

    1. 전송 중 데이터를 보호하려면 전송 계층 보안(TLS) 암호화(포트 8833)를 사용합니다. 자세한 내용은 Edge에서 EMQX AWS IoT SiteWise 브로커에 대한 보안 연결을 위해 TLS 구성 단원을 참조하십시오.

    2. 사용자 이름과 암호 인증을 설정하여 디바이스 ID를 확인합니다. 이 보안 조치는 데이터를 보호하는 데 도움이 되며 승인된 디바이스만 시스템에 연결할 수 있도록 합니다. 자세한 내용은 사용자 이름 및 암호 인증 활성화 단원을 참조하십시오.

EMQX를 사용하면 사용자 이름, IP 주소 또는 클라이언트 ID와 같은 식별자를 기반으로 권한 부여 규칙을 생성할 수 있습니다. 이는 데이터에 대한 액세스를 제어하는 데 유용합니다. 자세한 내용은 EMQX에서 AWS IoT SiteWise Edge에 대한 권한 부여 규칙 설정 단원을 참조하십시오.

배포에 성공하면 EMQX 브로커가 구성되고 외부 애플리케이션과 안전하게 연결할 준비가 됩니다.

참고

페이로드 형식은 AWS IoT SiteWise Edge가 데이터를 올바르게 처리하고 수집하려면 특정 구조를 따라야 합니다. 필수 구조에 대한 자세한 내용은 섹션을 참조하세요JSON 페이로드 구조.

예: CPU, 메모리 및 타임스탬프 JSON 페이로드 추가

CPU JSON 페이로드

{ "propertyAlias": "SiteWiseTutorialDevice/cpu", "propertyValues": [ { "quality": "GOOD", "timestamp": { "offsetInNanos": 0, "timeInSeconds": 1753206441 }, "value": { "integerValue": 45.2 } } ] }

메모리 JSON 페이로드

{ "propertyAlias": "SiteWiseTutorialDevice/memory", "propertyValues": [ { "quality": "GOOD", "timestamp": { "offsetInNanos": 0, "timeInSeconds": 1753206441 }, "value": { "integerValue": 67.8 } } ] }

타임스탬프 JSON 페이로드

{ "propertyAlias": "SiteWiseTutorialDevice/timestamp", "propertyValues": [ { "quality": "GOOD", "timestamp": { "offsetInNanos": 0, "timeInSeconds": 1753206441 }, "value": { "integerValue": 23.5 } } ] }
참고

각 JSON 페이로드는 개별 메시지로 별도로 게시해야 합니다. 여러 속성 값을 단일 메시지로 결합하지 마세요. 각 CPU, 메모리 및 타임스탬프 페이로드를 고유한 MQTT 게시로 전송합니다.

페이로드는 IoT 디바이스가 EMQX 브로커를 통해 디바이스 데이터를 SiteWise Edge로 전송하는 데 사용해야 하는 필수 JSON 구조를 정의합니다. 이 형식을 사용하면가 디바이스 AWS IoT SiteWise 를 식별하고 센서 판독값을 처리할 수 있습니다. 이러한 구성과 페이로드 구조를 구현하면 풍력 발전소 모니터링 시스템이 데이터를 수집하고 처리할 준비가 된 것입니다.

6단계: Mosquitto로 데이터 게시

MQTT 지원 V3 게이트웨이를 생성한 후 SiteWise Edge로 테스트 데이터를 보내도록 Eclipse Mosquitto를 구성합니다. Mosquitto는 디바이스 간 경량 메시징에 MQTT 프로토콜을 사용하는 오픈 소스 MQTT 메시지 브로커입니다. Mosquitto 클라이언트를 사용하면 MQTT 주제에 메시지를 게시하여 풍력 발전소 센서에서 데이터를 시뮬레이션할 수 있습니다. Mosquitto를 사용하면 타사 서비스나 추가 장비 없이 디바이스 데이터를 시뮬레이션할 수 있습니다. 자세한 내용은 공식 Eclipse Mosquitto 웹 사이트의 설명서를 참조하세요. 이 자습서에서는 수집 데이터 자습서의 로컬 데이터와 가상 데이터가 데모용으로 사용되고 있습니다.

Mosquitto CLI 클라이언트를 사용하여 SiteWise Edge EMQX 브로커 테스트

  1. 로컬 디바이스에 Mosquitto를 설치합니다. 자세한 지침은 공식 Eclipse Mosquitto 웹 사이트의 Download Mosquitto를 참조하세요.

  2. 외부 애플리케이션을 연결하여 산업 데이터를 전송하는 방법에 대한 자세한 내용은 섹션을 참조하세요외부 애플리케이션을 EMQX 브로커에 연결.

중요

여기에서 구성하는 MQTT 연결 설정이 Mosquitto 게시 명령에 사용된 설정과 일치하는지 확인합니다. 호스트는 SiteWise Edge 게이트웨이의 IP 주소 또는 호스트 이름이어야 합니다. 포트는 일반적으로 1883(또는 SSL/TLS를 사용하는 경우 8883)입니다.

Mosquitto를 사용하여 테스트 데이터를 게시합니다. 명령줄을 열고 다음 명령을 실행합니다.

예: CPU 속성

mosquitto_pub -h localhost -p 1883 -t "SiteWiseTutorialDevice/cpu" -m '{ "propertyAlias": "SiteWiseTutorialDevice/cpu", "propertyValues": [ { "quality": "GOOD", "timestamp": { "timeInSeconds": 1753206441, "offsetInNanos": 0 }, "value": { "integerValue": 45.2 } } ] }'

예: Memory 속성

mosquitto_pub -h localhost -p 1883 -t "SiteWiseTutorialDevice/memory" -m '{ "propertyAlias": "SiteWiseTutorialDevice/memory", "propertyValues": [ { "quality": "GOOD", "timestamp": { "timeInSeconds": 1753206441, "offsetInNanos": 0 }, "value": { "integerValue": 72.1 } } ] }'

예: 타임스탬프 속성

mosquitto_pub -h localhost -p 1883 -t "SiteWiseTutorialDevice/timestamp" -m '{ "propertyAlias": "SiteWiseTutorialDevice/timestamp", "propertyValues": [ { "quality": "GOOD", "timestamp": { "timeInSeconds": 1753206441, "offsetInNanos": 0 }, "value": { "integerValue": 1683000000 } } ] }'
참고

localhost를 EMQX 브로커 주소로 사용하는 것은 데모용일 뿐입니다. 프로덕션 환경에서 또는 외부 디바이스에서 연결할 때 특정 배포 구성에 적합한 EMQX 브로커 주소를 사용해야 합니다. 자세한 연결 지침은 섹션을 참조하세요애플리케이션을 Edge의 EMQX AWS IoT SiteWise 브로커에 연결.

7단계: 대상 지정

이 단계에서는 대상을 지정하여 소스 데이터를 전달할 위치를 결정합니다. Amazon S3 버퍼링 AWS IoT SiteWise 을 대상으로 사용합니다. 이 옵션은 IoT 데이터를 저장하고 처리하는 확장 가능한 방법을 제공합니다.

Console

대상을 추가하려면

  1. AWS IoT SiteWise 콘솔로 이동하여 엣지 게이트웨이를 선택합니다.

  2. SiteWise 자습서 디바이스 게이트웨이에서 대상 추가를 선택합니다.

  3. 대상 세부 정보에서 AWS IoT SiteWise Amazon S3를 사용하여 버퍼링됨을 선택합니다. 대상 유형에 대한 자세한 내용은 AWS IoT SiteWise 게이트웨이 대상을 참조하세요.

  4. 대상 이름에 대상의 이름을 입력합니다. 예: SiteWise Tutorial S3 Destination.

  5. S3 업로드 설정에서 S3 버킷 위치를 입력합니다. 예를 들어 s3://sitewise-tutorial-mqtt-data-[your-account-id]입니다. Amazon S3에 대한 자세한 내용은 Amazon Simple Storage Service 사용 설명서의 Amazon Amazon S3 버킷 생성, 구성 및 작업을 참조하세요.

  6. 데이터 업로드 빈도에 1분에서 30일 사이의 값을 입력합니다. 예를 들어 1 minute입니다.

  7. 데이터 스토리지 설정에서:

    1. 스토리지에 데이터 복사를 선택 취소합니다. 이 설정은 프로덕션 환경에 권장되지만이 자습서에서는 필요하지 않습니다. 이 옵션을 선택 취소하면 S3에서 데이터 삭제 옵션이 자동으로 선택 취소됩니다.

  8. 대상 추가를 선택합니다.

참고

이 자습서에서는 테스트에 1분 간격을 사용합니다. 자습서를 완료한 후이 간격을 프로덕션 요구 사항에 맞게 조정하거나 삭제하여 추가 요금이 부과되지 않도록 할 수 있습니다.

AWS CLI

예: Amazon S3를 사용하여 버퍼링된 새 AWS IoT SiteWise 대상 생성

AWS CLI 명령 참조update-gateway-capability-configuration을 사용하여 게시자를 구성합니다. capabilityNamespace 파라미터를 iotsitewise:publisher:3로 설정합니다.

{ "sources": [ { "type": "MQTT" } ], "destinations": [ { "type": "SITEWISE_BUFFERED", "name": "your-s3-destination-name", "config": { "targetBucketArn": "arn:aws:s3:::amzn-s3-demo-bucket/Optional/SomeFolder", "publishPolicy": { "publishFrequency": "1m", "localSizeLimitGB": 10 }, "siteWiseImportPolicy": { "enableSiteWiseStorageImport": true, "enableDeleteAfterImport": true, "bulkImportJobRoleArn": "arn:aws:iam::123456789012:role/your-role-name" } }, "filters": [ { "type": "PATH", "config": { "paths": [ "#" ] } } ] } ] }

대상에 대한 자세한 내용은 섹션을 참조하세요Amazon S3를 사용하여 AWS IoT SiteWise 버퍼링된 대상 추가.

8단계: 경로 필터 지정

이 단계에서는 풍력 발전소 디바이스 데이터를 모니터링할 MQTT 주제를 지정하도록 경로 필터를 구성합니다.

경로 필터는 두 개의 특수 문자를 지원하는 MQTT 주제 와일드카드 사양을 따릅니다.

  • + -이 기호는 단일 레벨의 모든 문자열과 일치하는 단일 레벨 와일드카드를 나타냅니다.

  • # -이 기호는 주제 계층 구조의 모든 수준과 일치하는 다중 수준 와일드카드를 나타냅니다.

참고

다른 경로 필터에 대한 자세한 내용은 섹션을 참조하세요경로 필터 이름의 특수 문자.

Console

경로 필터를 구성하려면

경로 필터에서 다음을 수행합니다.

  1. AWS IoT SiteWise 콘솔로 이동하여 엣지 게이트웨이를 선택합니다.

  2. SiteWise 자습서 디바이스 게이트웨이에서 대상 추가를 선택합니다.

  3. 경로 필터 추가를 선택하여 다음 경로 필터를 수동으로 입력합니다.

    • SiteWiseTutorialDevice/#

    • windfarm/+/turbine/+/performance/#

    • cpu/+/idle-time

    • cpu/+/interruption-count/+

    • +/memory/consumption

    • timestamp/+/measurement

    • device/+/status/+

    • system/+/performance-log

  4. 대상 추가를 선택합니다.

경로 필터의 모범 사례에 대한 자세한 내용은 섹션을 참조하세요경로 필터 모범 사례.

AWS CLI

다음 AWS CLI 명령을 사용하여 경로 필터를 구성합니다.

예제 1: 와일드카드를 사용한 디바이스 데이터

{ "destinations": [ { "name": "All Device Data Destination" } ], "filters": [ { "type": "PATH", "config": { "paths": [ "SiteWiseTutorialDevice/#", "windfarm/+/turbine/+/performance/#" ] } } ] }

이 경로 필터 구성은 다중 레벨 와일드카드(#)를 사용하여 SiteWiseTutorialDevice의 모든 데이터와 풍력 발전소의 모든 터빈에서 모든 성능 데이터를 캡처합니다.

예제 2: CPU 및 메모리 성능

{ "destinations": [ { "name": "Performance Metrics Destination" } ], "filters": [ { "type": "PATH", "config": { "paths": [ "cpu/+/idle-time", "+/memory/consumption", "cpu/+/interruption-count/+" ] } } ] }

이 예제에서는 디바이스 전반의 다양한 CPU 지표(유휴 시간 및 중단 수)와 메모리 소비 데이터를 캡처합니다.

예제 3: 디바이스 진단

{ "destinations": [ { "name": "Device Diagnostics Destination" } ], "filters": [ { "type": "PATH", "config": { "paths": [ "device/+/status/+", "system/+/performance-log" ] } } ] }

이 구성은 + 와일드카드를 사용하여 여러 디바이스, 특히 시스템 성능 로그 및 디바이스 상태 업데이트에서 진단 데이터를 캡처합니다.

이 세 경로 필터는 Mosquitto로 테스트 데이터를 게시하는 데 사용하는 MQTT 주제와 일치합니다. 필터는 SiteWise Edge 게이트웨이가 관련 MQTT 메시지를 캡처하고 처리하도록 합니다. 경로 필터를 추가하는 방법에 대한 자세한 내용은 섹션을 참조하세요AWS IoT SiteWise Edge 대상에 경로 필터 추가.

9단계: AWS IoT 리소스 구성

이 단계에서는 시뮬레이션된 타사 디바이스를 표현하고 엣지 게이트웨이를 통한 데이터 수집을 활성화하는 데 필요한 AWS IoT SiteWise 자산 모델과 자산을 생성합니다.

이 단계를 시작하기 전에 데이터 수집 자습서의 3~8단계를 완료해야 합니다. 이 단계에서는 MQTT 지원 V3 게이트웨이를 통해 타사 데이터를 통합하기 위한 기본 구성 요소를 설정합니다. 또한 센서 데이터가 흐르는 방식을 정의하는 규칙을 설정하고 산업용 풍력 발전소 데이터를 시뮬레이션하는 디바이스 클라이언트 스크립트를 AWS IoT SiteWise실행합니다.

AWS IoT 리소스 구성을 검증하려면

  1. 다음 AWS CLI 명령을 사용하여 SiteWise 자습서 디바이스 모델 및 SiteWise 자습서 디바이스 플릿 모델을 생성하고 올바르게 구성했는지 확인합니다.

    aws iotsitewise describe-asset-model --asset-model-id your-device-model-id

    다음 AWS CLI 명령을 사용하여 자산 모델의 ID를 검색합니다.

    aws iotsitewise list-asset-models
  2. 다음 AWS CLI 명령을 사용하여 SiteWise 자습서 디바이스 1 자산과 SiteWise 자습서 디바이스 플릿 1 자산을 생성하고 올바르게 구성했는지 확인합니다.

    aws iotsitewise describe-asset --asset-id your-asset-id

    다음 AWS CLI 명령을 사용하여 자산의 ID를 검색합니다.

    aws iotsitewise list-assets

10단계: 데이터 시각화

Grafana의 오픈 소스 버전을 설정하여 풍력 발전소 디바이스 데이터를 시각화합니다. Grafana는 실시간 운영 데이터를 표시하는 시각화 플랫폼입니다. 이러한 대시보드는 운영 효율성을 추적하고 인프라 전반의 유지 관리 요구 사항을 식별하는 데 도움이 됩니다. 통합에 대한 자세한 내용은 섹션을 참조하세요Grafana AWS IoT SiteWise 와 통합.

Grafana를 설정하려면

  1. 최신 버전의 Grafana를 다운로드하고 설치하는 방법에 대한 지침은 공식 Grafana 웹 사이트에서 Grafana 설치를 참조하세요.

  2. 운영 체제별 자세한 구성 지침은 공식 Grafana 웹 사이트의 Grafana 구성을 참조하세요.

  3. AWS IoT SiteWise 데이터 소스를 구성합니다. 이렇게 하면 Grafana 서버에서 AWS IoT SiteWise 플러그인을 설정할 수 있습니다. 플러그인 사용 방법에 대한 자세한 지침은 Amazon Managed Grafana 사용 설명서AWS IoT SiteWise 데이터 소스에 연결을 참조하세요.

중요

AWS IoT SiteWise 데이터 소스와의 호환성을 위해 최신 버전의 Grafana가 있는지 확인합니다.

이 단계를 완료한 후 Grafana 대시보드를 빌드하고 사용자 지정하여 풍력 발전소의 운영 지표를 표시할 수 있습니다. 이를 통해 엣지에서 풍력 발전소 성능을 실시간으로 추적하고 분석할 수 있습니다.

참고

이 자습서에서는 오픈 소스 버전의 Grafana를 사용하지만는 프로덕션 환경을 위해 Amazon Managed Grafana AWS 도 제공합니다. Amazon Managed Grafana는 자체 Grafana 서버를 설정, 구성 및 유지 관리할 필요가 없는 완전 관리형 서비스입니다. 솔루션을 확장할 준비가 되면 Amazon Managed Grafana로 업그레이드하는 것이 좋습니다. Amazon Managed Grafana와 오픈 소스 도구를 사용하여 데이터를 처리하고 시각화하는 방법에 대한 자세한 내용은 다음을 참조하세요.

자습서를 완료했습니다. 이 절차에서는 MQTT 지원 V3 게이트웨이를 사용하여 타사 디바이스 데이터를 통합하도록 AWS IoT SiteWise Edge를 구성했습니다. 이 설정을 사용하면 엣지에서 산업 장비 데이터를 수집, 처리 및 시각화하여 지연 시간과 운영 비용을 줄일 수 있습니다. 풍력 발전소 데모를 사용하면 MQTT 지원 V3 게이트웨이를 통해 CPU 및 메모리 사용량 데이터와 같은 운영 지표를 수집하고 처리할 수 있습니다.

IoT 솔루션을 개선하려면 고급 분석을 위한 Amazon QuickSight 사용 설명서의를 활용Lookout for Equipment로 이상 감지하거나 Amazon QuickSight와 같은 다른 AWS 서비스와 통합하여 이상 탐지와 같은 고급 기능을 탐색하는 것이 좋습니다. Amazon QuickSight

11단계: 자습서 후 리소스 정리

데이터를 AWS IoT SiteWise Edge에 통합하는 방법에 대한이 자습서를 완료한 후 추가 요금이 발생하지 않도록 리소스를 정리합니다.

에서 계층적 자산을 삭제하려면 AWS IoT SiteWise
  1. AWS IoT SiteWise 콘솔로 이동합니다.

  2. 왼쪽 탐색 창에서 자산을 선택합니다.

  3. 에서 자산을 삭제할 때는 먼저 자산의 연결을 해제해야 AWS IoT SiteWise합니다.

    디바이스 자산을 디바이스 플릿 자산에서 분리하려면 다음 단계를 완료하세요.

    1. 디바이스 플릿 자산(SiteWise Tutorial Device Fleet 1)을 선택합니다.

    2. 편집을 선택합니다.

    3. 이 자산에 연결된 자산 아래에서 이 디바이스 플릿 자산과 연결된 각 디바이스 자산에 대해 연결 해제를 선택합니다.

    4. 저장을 선택합니다.

      참고

      이제 디바이스 자산이 더 이상 계층 구조로 구성되지 않습니다.

  4. 디바이스 자산(SiteWise Tutorial Device 1)을 선택합니다.

  5. 삭제를 선택합니다.

  6. 확인 대화 상자에서 Delete를 입력한 다음 삭제를 선택합니다.

  7. 각 디바이스 자산 및 디바이스 플릿 자산(SiteWise Tutorial Device Fleet 1)에 대해 단계 4~6을 반복합니다.

에서 계층적 자산 모델을 삭제하려면 AWS IoT SiteWise
  1. AWS IoT SiteWise 콘솔로 이동합니다.

  2. 디바이스 및 디바이스 플릿 자산을 삭제합니다.

  3. 왼쪽 탐색 창에서 모델을 선택합니다.

  4. 디바이스 플릿 자산 모델(SiteWise Tutorial Device Fleet Model)을 선택합니다. 해당 모델에서 생성된 자산이 있으면 모델을 삭제할 수 없습니다.

    계층적 자산 모델을 삭제할 때는 상위 자산 모델을 삭제하는 것으로 시작합니다.

  5. 삭제를 선택합니다.

  6. 확인 대화 상자에서 Delete를 입력한 다음 삭제를 선택합니다.

  7. 디바이스 자산 모델(SiteWise Tutorial Device Model)에 대해 단계 4~6을 반복합니다.

에서 규칙을 비활성화하거나 삭제하려면 AWS IoT Core
  1. AWS IoT 콘솔로 이동합니다.

  2. 왼쪽 탐색 창에서 메시지 라우팅을 선택한 다음 규칙을 선택합니다.

  3. 규칙을 선택하고 삭제를 선택합니다.

  4. 확인 대화 상자에서 규칙 이름을 입력한 다음 삭제를 선택합니다.

Amazon S3 버킷을 삭제하려면
  1. Amazon S3 콘솔로 이동합니다.

  2. 왼쪽 탐색 창에서 범용 버킷을 선택합니다.

  3. 버킷 목록에서 생성한 버킷 옆의 옵션 버튼을 선택한 다음 페이지 상단에서 비우기를 선택합니다.

  4. 확인 대화 상자에서 삭제를 확인한 다음 비우기를 선택합니다.

  5. 버킷이 비어 있으면 삭제를 선택하여 버킷을 삭제합니다.

  6. 확인 대화 상자에서 버킷 이름을 입력하여 삭제를 확인합니다.

  7. 버킷 삭제(Delete bucket)를 선택합니다.

SiteWise Edge 게이트웨이를 삭제하려면
  1. AWS IoT SiteWise 콘솔로 이동합니다.

  2. 왼쪽 탐색 창에서 엣지 게이트웨이를 선택합니다.

  3. 게이트웨이에서이 자습서를 위해 생성한 게이트웨이를 선택합니다. 예를 들어 SiteWise Tutorial Device Gateway입니다.

  4. 삭제를 선택합니다.

  5. 게이트웨이를 삭제할지 확인하려면 확인 대화 Delete 상자에를 입력한 다음 나타나는 창에서 삭제를 선택합니다.

IoT 사물을 삭제하려면
  1. AWS IoT 콘솔로 이동합니다.

  2. 왼쪽 탐색 창에서 관리를 선택한 다음 사물을 선택합니다.

  3. 이 자습서를 위해 생성한 IoT 사물을 선택합니다. 예를 들어 SiteWiseTutorialDevice1입니다.

  4. 삭제를 선택합니다.

  5. 확인 대화 상자에서 사물의 이름을 입력한 다음 삭제를 선택합니다.

AWS IoT Greengrass 코어를 제거하려면

로컬 디바이스에서 AWS IoT Greengrass 코어 소프트웨어를 제거합니다. 자세한 지침은 AWS IoT Greengrass 개발자 안내서 버전 2AWS IoT Greengrass 코어 소프트웨어 제거를 참조하세요.

중요

Greengrass를 제거하면 모든 로컬 구성과 데이터가 제거됩니다. 계속하기 전에 중요한 정보를 백업했는지 확인합니다.

(선택 사항) 타사 리소스를 삭제하려면

이 자습서를 완료한 후에는 생성한 외부 리소스를 모두 종료하는 것이 좋습니다. 이렇게 하면 타사 공급자로부터 요금이 발생하는 것을 방지할 수 있습니다.

추가 리소스

자세한 내용은 다음 리소스를 참조하세요.