6단계: 구성 요소 배포 - AWS IoT Greengrass

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

6단계: 구성 요소 배포

를 사용하면 개별 디바이스 또는 디바이스 그룹에 구성 요소를 배포할 AWS IoT Greengrass수 있습니다. 구성 요소를 배포할 때는 각 대상 디바이스에 해당 구성 요소의 소프트웨어를 AWS IoT Greengrass 설치하고 실행합니다. 구성 요소마다 배포할 구성 요소와 배포할 구성 업데이트를 지정합니다. 배포 대상인 디바이스로 배포가 롤아웃되는 방식을 제어할 수도 있습니다. 자세한 내용은 디바이스에 AWS IoT Greengrass 구성 요소 배포 단원을 참조하십시오.

이 단원에서는 Hello World 구성 요소를 Greengrass 코어 디바이스에 다시 배포합니다.

  1. AWS IoT Greengrass 콘솔 탐색 메뉴에서 구성 요소를 선택합니다.

  2. 구성 요소 페이지의 내 구성 요소 탭에서를 선택합니다. com.example.HelloWorld.

  3. 에서 com.example.HelloWorld 페이지에서 배포를 선택합니다.

  4. 배포에 추가에서 새 배포 생성다음을 차례로 선택합니다.

  5. 대상 지정 페이지에서 다음 작업을 수행합니다.

    1. 이름(Name) 상자에 Deployment for MyGreengrassCore를 입력합니다.

    2. 배포 대상에서 코어 디바이스와 코어 디바이스의 AWS IoT 사물 이름을 선택합니다. 이 자습서의 기본값은 입니다MyGreengrassCore.

    3. Next(다음)를 선택합니다.

  6. 구성 요소 선택 페이지의 내 구성 요소에서 com.example.HelloWorld 구성 요소가 선택되고 다음을 선택합니다.

  7. 구성 요소 구성 페이지에서 com.example.HelloWorld, 및는 다음을 수행합니다.

    1. 구성 요소 구성을 선택합니다.

    2. 구성 업데이트 아래에 있는 병합할 구성에 다음 구성을 입력합니다.

      { "Message": "universe" }

      이 구성 업데이트에서는 이 배포의 디바이스에 대해 Hello World Message 파라미터가 universe로 설정됩니다.

    3. 확인을 선택합니다.

    4. Next(다음)를 선택합니다.

  8. 고급 설정 구성 페이지에서 기본 구성 설정을 유지하고 다음을 선택합니다.

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

  10. 배포가 완료되었는지 확인합니다. 배포를 완료하는 데 몇 분 정도 걸릴 수 있습니다. Hello World 로그를 점검하여 변경을 확인합니다. Greengrass 코어 디바이스에서 다음 명령을 실행합니다.

    Linux or Unix
    sudo tail -f /greengrass/v2/logs/com.example.HelloWorld.log
    Windows Command Prompt (CMD)
    type C:\greengrass\v2\\logs\\com.example.HelloWorld.log
    PowerShell
    gc C:\greengrass\v2\\logs\\com.example.HelloWorld.log -Tail 10 -Wait

    다음 예제와 비슷한 메시지가 표시되어야 합니다.

    Hello, universe! Greetings from your first Greengrass component.
    참고

    로그 메시지가 변경되지 않으면 배포에 실패했거나 코어 디바이스에 도달하지 못한 것입니다. 코어 디바이스가 인터넷에 연결되어 있지 않거나 S3 버킷에서 아티팩트를 검색할 권한이 없으면 이 문제가 발생할 수 있습니다. 코어 디바이스에서 다음 명령을 실행하여 AWS IoT Greengrass 코어 소프트웨어 로그 파일을 확인합니다. 이 파일에는 Greengrass 코어 디바이스의 배포 서비스의 로그가 포함되어 있습니다.

    Linux or Unix
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows Command Prompt (CMD)
    type C:\greengrass\v2\\logs\\greengrass.log

    type 명령에서는 파일의 내용이 터미널이 기록됩니다. 이 명령을 여러 번 실행하여 파일의 변경 사항을 관찰합니다.

    PowerShell
    gc C:\greengrass\v2\\logs\\greengrass.log -Tail 10 -Wait

    자세한 내용은 문제 해결 AWS IoT Greengrass V2 단원을 참조하십시오.

Hello World 구성 요소를 배포하려면
  1. 개발 컴퓨터에서 라는 파일을 생성하고 다음을 파일에 hello-world-deployment.json 복사JSON합니다. 이 파일에서는 배포되는 구성 요소와 구성이 정의됩니다.

    { "components": { "com.example.HelloWorld": { "componentVersion": "1.0.0", "configurationUpdate": { "merge": "{\"Message\":\"universe\"}" } } } }

    이 구성 파일에서는 이전 절차에서 개발하고 게시한 Hello World 구성 요소의 1.0.0 버전 배포가 지정됩니다. 는 구성 요소 구성을 JSON인코딩된 문자열로 병합하도록 configurationUpdate 지정합니다. 이 구성 업데이트에서는 이 배포의 디바이스에 대해 Hello World Message 파라미터가 universe로 설정됩니다.

  2. 다음 명령을 실행하여 Greengrass 코어 디바이스에 구성 요소를 배포합니다. 개별 디바이스인 사물 또는 디바이스 그룹인 사물 그룹에 배포할 수 있습니다. MyGreengrassCore를 코어 디바이스의 AWS IoT 사물 이름으로 바꿉니다.

    Linux or Unix
    aws greengrassv2 create-deployment \ --target-arn "arn:aws:iot:region:account-id:thing/MyGreengrassCore" \ --cli-input-json file://hello-world-deployment.json
    Windows Command Prompt (CMD)
    aws greengrassv2 create-deployment ^ --target-arn "arn:aws:iot:region:account-id:thing/MyGreengrassCore" ^ --cli-input-json file://hello-world-deployment.json
    PowerShell
    aws greengrassv2 create-deployment ` --target-arn "arn:aws:iot:region:account-id:thing/MyGreengrassCore" ` --cli-input-json file://hello-world-deployment.json

    다음 예제 출력과 비슷한 출력이 명령에서 반환됩니다.

    { "deploymentId": "deb69c37-314a-4369-a6a1-3dff9fce73a9", "iotJobId": "b5d92151-6348-4941-8603-bdbfb3e02b75", "iotJobArn": "arn:aws:iot:region:account-id:job/b5d92151-6348-4941-8603-bdbfb3e02b75" }
  3. 배포가 완료되었는지 확인합니다. 배포를 완료하는 데 몇 분 정도 걸릴 수 있습니다. Hello World 로그를 점검하여 변경을 확인합니다. Greengrass 코어 디바이스에서 다음 명령을 실행합니다.

    Linux or Unix
    sudo tail -f /greengrass/v2/logs/com.example.HelloWorld.log
    Windows Command Prompt (CMD)
    type C:\greengrass\v2\\logs\\com.example.HelloWorld.log
    PowerShell
    gc C:\greengrass\v2\\logs\\com.example.HelloWorld.log -Tail 10 -Wait

    다음 예제와 비슷한 메시지가 표시되어야 합니다.

    Hello, universe! Greetings from your first Greengrass component.
    참고

    로그 메시지가 변경되지 않으면 배포에 실패했거나 코어 디바이스에 도달하지 못한 것입니다. 코어 디바이스가 인터넷에 연결되어 있지 않거나 S3 버킷에서 아티팩트를 검색할 권한이 없으면 이 문제가 발생할 수 있습니다. 코어 디바이스에서 다음 명령을 실행하여 AWS IoT Greengrass 코어 소프트웨어 로그 파일을 확인합니다. 이 파일에는 Greengrass 코어 디바이스의 배포 서비스의 로그가 포함되어 있습니다.

    Linux or Unix
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows Command Prompt (CMD)
    type C:\greengrass\v2\\logs\\greengrass.log

    type 명령에서는 파일의 내용이 터미널이 기록됩니다. 이 명령을 여러 번 실행하여 파일의 변경 사항을 관찰합니다.

    PowerShell
    gc C:\greengrass\v2\\logs\\greengrass.log -Tail 10 -Wait

    자세한 내용은 문제 해결 AWS IoT Greengrass V2 단원을 참조하십시오.