LTS 조건 사전 조건 설정 - 무료RTOS

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

LTS 조건 사전 조건 설정

이 섹션에서는 를 사용하여 마이크로컨트롤러를 테스트하기 위한 사전 조건을 설명합니다 AWS IoT Device Tester.

무료RTOS 자격 검증 준비

참고

AWS IoT Device Tester for FreeRTOS는 가장 최근 무료 RTOS-LTS 버전의 최신 패치 릴리스를 사용하는 것이 좋습니다.

IDT for FRQ 2.0은 무료 에 대한 조건입니다RTOS. 검증을 위해 IDT FRQ 2.0을 실행하기 전에 무료RTOS 검증 가이드 에서 보드 검증을 완료해야 합니다. 라이브러리를 포트하고, 를 테스트하고, 설정하려면 프리RTOS 포팅 가이드의 프리 라이브러리 포팅RTOSmanifest.yml참조하세요. FRQ 2.0에는 검증을 위한 다른 프로세스가 포함되어 있습니다. 자세한 내용은 무료RTOS 자격 증명 안내서의 자격 증명의 최신 변경 사항을 참조하세요.

를 실행IDT하려면 Free RTOS-Libraries-Integration-Tests 리포지토리가 있어야 합니다. README.md에서 이 리포지토리를 복제하고 소스 프로젝트에 이식하는 방법을 참조하세요. FreeRTOS-Libraries-Integration-Tests 를 실행IDT하려면 에 프로젝트 루트에 manifest.yml 있는 가 포함되어야 합니다.

참고

IDT 는 테스트 리포지토리의 구현에 따라 달라집니다UNITY_OUTPUT_CHAR. 테스트 출력 로그와 디바이스 로그는 서로 인터리브되지 않아야 합니다. 자세한 내용은 프리RTOS 포팅 가이드의 라이브러리 로깅 매크로 구현 섹션을 참조하세요.

IDT 무료 다운로드RTOS

모든 버전의 FreeRTOS에는 검증 테스트를 수행할 IDT 수 있는 무료RTOS용 의 해당 버전이 있습니다. for Free IDT RTOS for Supported 버전의 AWS IoT Device Tester for Free 의 적절한 버전을RTOS 다운로드합니다.

읽기 및 쓰기 권한이 있는 파일 시스템의 위치로 IDT 무료로RTOS 추출합니다. Microsoft Windows에는 경로 길이에 대한 문자 제한이 있으므로 C:\ 또는 와 같은 루트 디렉터리로 IDT 무료RTOS 압축을 풉니다D:\.

참고

NFS 디렉터리 또는 Windows 네트워크 IDT 공유 폴더와 같은 공유 위치에서 여러 사용자를 실행해서는 안 됩니다. 그러면 충돌 또는 데이터 손상이 발생합니다. IDT 패키지를 로컬 드라이브로 추출하는 것이 좋습니다.

Git 다운로드

IDT 소스 코드 무결성을 보장하려면 에 Git이 사전 조건으로 설치되어 있어야 합니다.

GitHub 가이드의 지침에 따라 Git을 설치합니다. 현재 설치된 Git 버전을 확인하려면 터미널에 git --version 명령을 입력합니다.

주의

IDT 는 Git을 사용하여 디렉터리의 상태인 Clean or Dirty에 맞춥니다. Git이 설치되지 않은 경우 FreeRTOSIntegrity 테스트 그룹이 실패하거나 예상대로 실행되지 않습니다. git executable not found 또는 와 같은 오류가 IDT 반환되면 Gitgit command not found을 설치하거나 다시 설치하고 다시 시도합니다.

AWS 계정 생성

참고

전체 IDT 자격 검증 제품군은 다음에서만 지원됩니다. AWS 리전

  • 미국 동부(버지니아 북부)

  • 미국 서부(오레곤)

  • 아시아 태평양(도쿄)

  • 유럽(아일랜드)

디바이스를 테스트하기 위해 IDT for FreeRTOS는 AWS IoT 사물, FreeRTOS 그룹 및 Lambda 함수와 같은 리소스를 생성합니다. 이러한 리소스를 생성하려면 IDT for FreeRTOS에서 AWS 계정을 생성하고 구성해야 하며, 테스트를 실행하는 동안 사용자를 대신하여 리소스에 액세스할 수 있는 자유RTOS 권한을 IDT 부여하는 IAM 정책이 필요합니다.

다음 단계는 AWS 계정을 생성하고 구성하는 것입니다.

  1. 이미 AWS 계정이 있는 경우 다음 단계로 건너뜁니다. 그렇지 않으면 AWS 계정을 생성합니다.

  2. IAM 역할 생성의 단계를 따릅니다. 지금은 권한 또는 정책을 추가하지 마십시오.

  3. OTA 검증 테스트를 실행하려면 4단계로 이동합니다. 그렇지 않으면 5단계로 이동합니다.

  4. OTA IAM 권한 인라인 정책을 IAM 역할에 연결합니다.

    1. 중요

      다음 정책 템플릿은 역할을 생성하고, 정책을 생성하고, 정책을 역할에 연결할 수 있는 IDT 권한을 부여합니다. IDT for FreeRTOS는 역할을 생성하는 테스트에 이러한 권한을 사용합니다. 정책 템플릿은 사용자에게 관리자 권한을 제공하지 않지만 권한은 AWS 계정에 대한 관리자 액세스를 얻는 데 사용할 수 있습니다.

    2. 다음 단계에 따라 IAM 역할에 필요한 권한을 연결합니다.

      1. 권한 페이지에서 권한 추가를 선택합니다.

      2. 인라인 정책 생성을 선택합니다.

      3. JSON 탭을 선택하고 의 다음 권한을 JSON 텍스트 상자에 복사합니다. 중국 리전이 아닌 경우 대부분의 리전 아래에 있는 템플릿을 사용합니다. 중국 리전에 있는 경우 베이징 및 닝샤 리전의 템플릿을 사용합니다.

        Most Regions
        { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iotdeviceadvisor:*", "Resource": [ "arn:aws:iotdeviceadvisor:*:*:suiterun/*/*", "arn:aws:iotdeviceadvisor:*:*:suitedefinition/*" ] }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/idt*", "Condition": { "StringEquals": { "iam:PassedToService": "iotdeviceadvisor.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "execute-api:Invoke*", "iam:ListRoles", "iot:Connect", "iot:CreateJob", "iot:DeleteJob", "iot:DescribeCertificate", "iot:DescribeEndpoint", "iot:DescribeJobExecution", "iot:DescribeJob", "iot:DescribeThing", "iot:GetPolicy", "iot:ListAttachedPolicies", "iot:ListCertificates", "iot:ListPrincipalPolicies", "iot:ListThingPrincipals", "iot:ListThings", "iot:Publish", "iot:UpdateThingShadow", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:PutLogEvents", "logs:PutRetentionPolicy" ], "Resource": "*" }, { "Effect": "Allow", "Action": "iotdeviceadvisor:*", "Resource": "*" }, { "Effect": "Allow", "Action": "logs:DeleteLogGroup", "Resource": "arn:aws:logs:*:*:log-group:/aws/iot/deviceadvisor/*" }, { "Effect": "Allow", "Action": "logs:GetLogEvents", "Resource": "arn:aws:logs:*:*:log-group:/aws/iot/deviceadvisor/*:log-stream:*" }, { "Effect": "Allow", "Action": [ "iam:CreatePolicy", "iam:DetachRolePolicy", "iam:DeleteRolePolicy", "iam:DeletePolicy", "iam:CreateRole", "iam:DeleteRole", "iam:AttachRolePolicy" ], "Resource": [ "arn:aws:iam::*:policy/idt*", "arn:aws:iam::*:role/idt*" ] }, { "Effect": "Allow", "Action": [ "ssm:GetParameters" ], "Resource": [ "arn:aws:ssm:*::parameter/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2" ] }, { "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:RunInstances", "ec2:CreateSecurityGroup", "ec2:CreateTags", "ec2:DeleteTags" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "ec2:CreateKeyPair", "ec2:DeleteKeyPair" ], "Resource": [ "arn:aws:ec2:*:*:key-pair/idt-ec2-ssh-key-*" ] }, { "Effect": "Allow", "Condition": { "StringEqualsIgnoreCase": { "aws:ResourceTag/Owner": "IoTDeviceTester" } }, "Action": [ "ec2:TerminateInstances", "ec2:DeleteSecurityGroup", "ec2:AuthorizeSecurityGroupIngress", "ec2:RevokeSecurityGroupIngress" ], "Resource": [ "*" ] } ] }
        Beijing and Ningxia Regions

        베이징 및 닝샤 리전에서 다음 정책 템플릿을 사용할 수 있습니다.

        { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:CreatePolicy", "iam:DetachRolePolicy", "iam:DeleteRolePolicy", "iam:DeletePolicy", "iam:CreateRole", "iam:DeleteRole", "iam:AttachRolePolicy" ], "Resource": [ "arn:aws-cn:iam::*:policy/idt*", "arn:aws-cn:iam::*:role/idt*" ] }, { "Effect": "Allow", "Action": [ "ssm:GetParameters" ], "Resource": [ "arn:aws-cn:ssm:*::parameter/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2" ] }, { "Effect": "Allow", "Action": [ "ec2:DescribeInstances", "ec2:RunInstances", "ec2:CreateSecurityGroup", "ec2:CreateTags", "ec2:DeleteTags" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "ec2:CreateKeyPair", "ec2:DeleteKeyPair" ], "Resource": [ "arn:aws-cn:ec2:*:*:key-pair/idt-ec2-ssh-key-*" ] }, { "Effect": "Allow", "Condition": { "StringEqualsIgnoreCase": { "aws-cn:ResourceTag/Owner": "IoTDeviceTester" } }, "Action": [ "ec2:TerminateInstances", "ec2:DeleteSecurityGroup", "ec2:AuthorizeSecurityGroupIngress", "ec2:RevokeSecurityGroupIngress" ], "Resource": [ "*" ] } ] }
      4. 작업이 완료되면 정책 검토(Review policy)를 선택합니다.

      5. IDTFreeRTOSIAMPermissions 를 정책 이름으로 입력합니다.

      6. 정책 생성을 선택합니다.

  5. IAM 역할에 AWSIoTDeviceTesterForFreeRTOSFullAccess 연결합니다.

    1. IAM 역할에 필요한 권한을 연결하려면:

      1. 권한 페이지에서 권한 추가를 선택합니다.

      2. 정책 연결을 선택합니다.

      3. AWSIoTDeviceTesterForFreeRTOSFullAccess 정책을 검색합니다. 확인란을 선택합니다.

    2. 권한 추가를 선택합니다.

  6. 에 대한 보안 인증 정보를 내보냅니다IDT. 자세한 내용은 CLI 액세스를 위한 IAM 역할 자격 증명 가져오기를 참조하세요.

AWS IoT Device Tester 관리형 정책

AWSIoTDeviceTesterForFreeRTOSFullAccess 관리형 정책에는 버전 확인, 자동 업데이트 기능 및 지표 모음에 대한 다음과 같은 AWS IoT Device Tester 권한이 포함되어 있습니다.

  • iot-device-tester:SupportedVersion

    지원되는 제품, 테스트 제품군 및 IDT 버전 목록을 가져올 수 있는 AWS IoT Device Tester 권한을 부여합니다.

  • iot-device-tester:LatestIdt

    다운로드할 수 있는 최신 IDT 버전을 가져올 수 있는 AWS IoT Device Tester 권한을 부여합니다.

  • iot-device-tester:CheckVersion

    IDT, 테스트 제품군 및 제품에 대한 버전 호환성을 확인할 수 있는 AWS IoT Device Tester 권한을 부여합니다.

  • iot-device-tester:DownloadTestSuite

    테스트 제품군 업데이트를 다운로드할 수 있는 AWS IoT Device Tester 권한을 부여합니다.

  • iot-device-tester:SendMetrics

    AWS IoT Device Tester 내부 사용에 대한 지표를 수집할 수 있는 AWS 권한을 부여합니다.

(선택 사항) 설치 AWS Command Line Interface

를 사용하여 일부 작업을 수행하는 AWS CLI 것이 좋습니다. AWS CLI 가 설치되지 않은 경우 AWS CLI설치의 지침을 따릅니다.

명령줄aws configure에서 를 실행하여 사용하려는 AWS 리전에 AWS CLI 대해 를 구성합니다. 무료 를 지원하는 AWS 리전IDT에 대한 자세한 내용은 리전 및 엔드포인트 섹션을 RTOS참조하세요. AWS aws configure에 대한 자세한 내용은 aws configure를 사용한 빠른 구성을 참조하세요.