디바이스에 구성 요소 배포 - Amazon Lookout for Vision

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

디바이스에 구성 요소 배포

모델 구성 요소 및 클라이언트 응용 프로그램 구성 요소를 AWS IoT Greengrass Version 2 코어 디바이스에 배포하려면 AWS IoT Greengrass V2 콘솔을 사용하거나 CreateDeployment API를 사용합니다. 자세한 내용은 AWS IoT Greengrass Version 2 개발자 안내서의 배포 생성을 참조하세요. 코어 디바이스에 배포된 구성 요소를 업데이트하는 방법에 대한 자세한 내용은 배포 수정을 참조하십시오.

구성 요소 배포를 위한 IAM 권한

AWS IoT Greengrass V2를 사용하여 구성 요소를 배포하려면 다음 권한이 필요합니다.

  • greengrass:ListComponents

  • greengrass:ListComponentVersions

  • greengrass:ListCoreDevices

  • greengrass:CreateDeployment

  • greengrass:GetDeployment

  • greengrass:ListDeployments

CreateDeploymentGetDeployment는 종속 작업이 있어야 합니다. 자세한 내용은 AWS IoT Greengrass V2에서 정의한 작업을 참조하십시오.

IAM 권한 변경에 대한 자세한 내용은 사용자 권한 변경을 참조하십시오.

구성 요소 배포 (콘솔)

다음 절차를 사용하여 클라이언트 애플리케이션 구성 요소를 코어 디바이스에 배포하십시오. 클라이언트 애플리케이션은 모델 구성 요소 (Lookout for Vision Edge Agent에 따라 달라짐)에 따라 달라집니다. 클라이언트 애플리케이션 구성 요소를 배포하면 모델 구성 요소 및 Lookout for Vision Edge Agent의 배포도 시작됩니다.

참고

기존 배포에 구성 요소를 추가할 수 있습니다. 사물 그룹에 구성 요소를 배포할 수도 있습니다.

이 절차를 실행하려면 AWS IoT Greengrass V2 코어 디바이스가 구성되어 있어야 합니다. 자세한 내용은 AWS IoT Greengrass Version 2 코어 디바이스 설정하기 섹션을 참조하세요.

구성 요소를 디바이스에 배포하려면
  1. https://console.aws.amazon.com/iot/AWS IoT Greengrass에서 콘솔을 엽니다.

  2. 왼쪽 탐색 창의 Greengrass에서 배포를 선택합니다.

  3. 배포에서 생성을 선택합니다.

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

    1. 배포 정보 아래에서 친숙한 배포 이름을 입력하거나 수정합니다.

    2. 배포 대상에서 코어 디바이스를 선택하고 대상 이름을 입력합니다.

    3. 다음을 선택합니다.

  5. 구성 요소 선택 페이지에서 다음을 수행합니다.

    1. 내 구성 요소에서 클라이언트 응용 프로그램 구성 요소의 이름을 선택합니다 (com.lookoutvison.EdgeAgentPythonExample).

    2. 다음을 선택합니다.

  6. 구성 요소 구성 페이지에서 현재 구성을 유지하고 다음을 선택합니다.

  7. 고급 설정 구성 페이지에서 현재 설정을 유지하고 다음을 선택합니다.

  8. 검토 페이지에서 배포를 선택하여 구성 요소 배포를 시작합니다.

배포 상태 확인 (콘솔)

AWS IoT Greengrass V2 콘솔에서 배포 상태를 확인할 수 있습니다. 클라이언트 응용 프로그램 구성 요소가 클라이언트 애플리케이션 구성 요소 생성의 예제 레시피와 코드를 사용하는 경우 배포가 완료된 후 클라이언트 응용 프로그램 구성 요소 로그를 확인하십시오. 성공하면 구성 요소에 배포된 Lookout for Vision 모델 목록이 로그에 포함됩니다.

AWS SDK를 사용하여 배포 상태를 확인하는 방법에 대한 자세한 내용은 배포 상태 확인을 참조하십시오.

배포 상태를 확인하려면
  1. AWS IoT Greengrass 콘솔(https://console.aws.amazon.com/iot/)을 엽니다.

  2. 왼쪽 탐색 창에서 코어 디바이스 를 선택합니다.

  3. Greengrass 코어 디바이스에서 코어 디바이스를 선택합니다.

  4. 현재 배포 상태를 보려면 배포 탭을 선택합니다.

  5. 배포가 성공하면 (상태가 완료됨) 코어 디바이스에서 터미널 창을 열고 /greengrass/v2/logs/com.lookoutvison.EdgeAgentPythonExample.log에서 클라이언트 애플리케이션 구성 요소 로그를 확인하십시오. 배포에서 예제 레시피와 코드를 사용하는 경우 로그에는 lookoutvision_edge_agent_example.py의 출력이 포함됩니다. 예:

    Model Details model_component:"ModelComponent"

구성 요소 (SDK) 배포

다음 절차를 사용하여 클라이언트 애플리케이션 구성 요소, 모델 구성 요소 및 Amazon Lookout for Vision Edge Agent를 코어 디바이스에 배포하십시오.

  1. deployment.json 파일을 생성하여 구성 요소의 배포 구성을 정의합니다. 이 파일은 다음 예제와 비슷합니다.

    { "targetArn":"targetArn", "components": { "com.lookoutvison.EdgeAgentPythonExample": { "componentVersion": "1.0.0", "configurationUpdate": { } } } }
    • targetArn 필드에서 targetArn을(를) 다음 형식으로 배포 대상으로 지정할 사물 또는 사물 그룹의 Amazon 리소스 이름(ARN)으로 바꿉니다.

      • 사물: arn:aws:iot:region:account-id:thing/thingName

      • 사물 그룹: arn:aws:iot:region:account-id:thinggroup/thingGroupName

  2. 배포 대상에 수정하려는 기존 배포가 있는지 확인하십시오. 해결 방법:

    1. 다음 명령을 실행하여 배포 대상의 배포를 나열합니다. 대상 AWS IoT 사물 또는 사물 그룹의 Amazon 리소스 이름 (ARN) targetArn으로 대체하십시오. 현재 AWS 리전에 있는 사물의 ARN을 가져오려면 명령 aws iot list-things을 사용하십시오.

      aws greengrassv2 list-deployments --target-arn targetArn

      응답에는 대상에 대한 최신 배포 목록이 포함되어 있습니다. 응답이 비어 있는 경우 대상에 기존 배포가 없는 것이므로, 3단계로 건너뛸 수 있습니다. 그렇지 않으면 다음 단계에서 사용할 수 있도록 응답에서 deploymentId을 복사합니다.

    2. 다음 명령을 실행하여 배포의 세부 정보를 가져옵니다. 이러한 세부 정보에는 메타데이터, 구성 요소 및 작업 구성이 포함됩니다. deploymentId을 전 단계의 ID로 바꿉니다.

      aws greengrassv2 get-deployment --deployment-id deploymentId
    3. 이전 명령의 응답에서 다음 키-값 쌍을 deployment.json으로 복사합니다. 새 배포에서 이러한 값을 변경할 수 있습니다.

      • deploymentName— 배포의 이름.

      • components—배포의 구성 요소. 구성 요소를 제거하려면 이 개체에서 구성 요소를 제거하십시오.

      • deploymentPolicies— 배포 정책.

      • tags— 배포의 태그.

  3. 다음 명령을 실행하여 디바이스에 구성 요소를 배포합니다. 응답의 deploymentId 값을 기록합니다.

    aws greengrassv2 create-deployment \ --cli-input-json file://path/to/deployment.json
  4. 다음 명령을 실행하여 배포 상태를 확인합니다. deployment-id을 이전 단계에서 기록한 값으로 변경합니다. deploymentStatus의 값이 COMPLETED인 경우 배포가 성공적으로 완료된 것입니다.

    aws greengrassv2 get-deployment --deployment-id deployment-id
  5. 배포가 성공하면 코어 디바이스에서 터미널 창을 열고 /greengrass/v2/logs/com.lookoutvison.EdgeAgentPythonExample.log에서 클라이언트 애플리케이션 구성 요소 로그를 확인하십시오. 배포에서 예제 레시피와 코드를 사용하는 경우 로그에는 lookoutvision_edge_agent_example.py의 출력이 포함됩니다. 예:

    Model Details model_component:"ModelComponent"