사용자 지정 구성 요소를 개발하기 위한 수동 설정 AWSTOE - EC2Image Builder

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

사용자 지정 구성 요소를 개발하기 위한 수동 설정 AWSTOE

The AWS Task Orchestrator and Executor (AWSTOE) 애플리케이션은 구성 요소 정의 프레임워크 내에서 명령을 생성, 검증 및 실행하는 독립 실행형 애플리케이션입니다. AWS 서비스는 다음을 사용할 수 있습니다. AWSTOE 워크플로를 조정하고, 소프트웨어를 설치하고, 시스템 구성을 수정하고, 이미지 빌드를 테스트합니다.

다음 단계에 따라 수동으로 설치하십시오. AWSTOE 응용 프로그램을 독립 실행형 응용 프로그램으로 사용하여 사용자 지정 구성 요소를 개발하십시오. Image Builder는 사용자가 Image Builder 콘솔을 사용하는 경우 다음 단계를 자동으로 처리해 줍니다. AWS CLI 사용자 지정 구성 요소를 만드는 명령 자세한 내용은 Image Builder로 사용자 지정 구성 요소 생성 단원을 참조하십시오.

1단계: 설치 AWSTOE

구성 요소를 로컬에서 개발하려면 다음을 다운로드하여 설치하십시오. AWSTOE 애플리케이션을 배포합니다.

  1. 다운로드 AWSTOE 애플리케이션

    설치하려면 AWSTOE아키텍처 및 플랫폼에 적합한 다운로드 링크를 선택합니다. 애플리케이션 다운로드 링크의 전체 목록은 AWSTOE 다운로드 섹션을 참조하세요.

    중요

    AWS TLS버전 1.0 및 1.1에 대한 지원을 단계적으로 중단하고 있습니다. S3 버킷에 액세스하려면 AWSTOE 다운로드 시 클라이언트 소프트웨어는 TLS 버전 1.2 이상을 사용해야 합니다. 자세한 내용은 여기를 참조하십시오. AWS 보안 블로그 게시물.

  2. 서명 확인

    다운로드를 확인하는 단계는 실행 중인 서버 플랫폼에 따라 다릅니다. AWSTOE 응용 프로그램을 설치한 후의 응용 프로그램 Linux 서버에서 다운로드를 확인하려면 Linux에서 서명 확인 섹션을 참조하세요. Windows 서버에서 다운로드를 확인하려면 윈도우에서 서명 확인 섹션을 참조하세요.

중요

AWSTOE 다운로드 위치에서 직접 호출됩니다. 별도의 설치 단계는 필요 없습니다. 이는 다음을 의미하기도 합니다. AWSTOE 로컬 환경을 변경할 수 있습니다.

구성 요소 개발 중에 변경 내용을 격리하려면 EC2 인스턴스를 사용하여 개발 및 테스트하는 것이 좋습니다. AWSTOE 구성 요소.

2단계: 설정 AWS 보안 인증 정보

AWSTOE 가 필요합니다 AWS 다른 사람과 연결하기 위한 자격 증명 AWS 서비스예를 들어, Amazon S3 및 Amazon과 같은 작업을 실행하는 경우 CloudWatch, 예를 들면 다음과 같습니다.

  • 다운로드 AWSTOE 사용자가 제공한 Amazon S3 경로의 문서

  • S3Download 또는 S3Upload 작업 모듈을 실행합니다.

  • 활성화된 CloudWatch 경우 로그를 로 스트리밍합니다.

실행 중인 경우 AWSTOE EC2인스턴스에서 실행한 다음 AWSTOE EC2인스턴스에 연결된 IAM 역할과 동일한 권한을 사용합니다.

IAM역할에 대한 EC2 자세한 내용은 Amazon의 IAM 역할을 참조하십시오EC2.

다음 예제는 설정 방법을 보여줍니다. AWS AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEY 환경 변수를 사용한 자격 증명

Linux, macOS 또는 Unix에서 이러한 변수를 설정하려면 export를 사용합니다.

$ export AWS_ACCESS_KEY_ID=your_access_key_id
$ export AWS_SECRET_ACCESS_KEY=your_secret_access_key

Windows에서 이러한 변수를 PowerShell 설정하려면 를 사용하십시오$env.

C:\> $env:AWS_ACCESS_KEY_ID=your_access_key_id
C:\> $env:AWS_SECRET_ACCESS_KEY=your_secret_access_key

명령 프롬프트를 사용하여 Windows에서 이러한 변수를 설정하려면 set(을)를 사용합니다.

C:\> set AWS_ACCESS_KEY_ID=your_access_key_id
C:\> set AWS_SECRET_ACCESS_KEY=your_secret_access_key

3단계: 구성 요소 문서를 로컬로 개발

구성 요소는 일반 YAML 텍스트 문서로 작성됩니다. 문서 구문에 대한 자세한 내용은 를 사용하세요 AWSTOE 사용자 지정 구성 요소를 위한 구성 요소 문서 프레임워크 섹션을 참조하세요.

다음은 시작하는 데 도움이 되는 Hello World 구성 요소 문서의 예입니다.

hello-world-windows.yml.

name: Hello World description: This is Hello World testing document for Windows. schemaVersion: 1.0 phases: - name: build steps: - name: HelloWorldStep action: ExecutePowerShell inputs: commands: - Write-Host 'Hello World from the build phase.' - name: validate steps: - name: HelloWorldStep action: ExecutePowerShell inputs: commands: - Write-Host 'Hello World from the validate phase.' - name: test steps: - name: HelloWorldStep action: ExecutePowerShell inputs: commands: - Write-Host 'Hello World from the test phase.'

hello-world-linux.yml.

name: Hello World description: This is hello world testing document for Linux. schemaVersion: 1.0 phases: - name: build steps: - name: HelloWorldStep action: ExecuteBash inputs: commands: - echo 'Hello World from the build phase.' - name: validate steps: - name: HelloWorldStep action: ExecuteBash inputs: commands: - echo 'Hello World from the validate phase.' - name: test steps: - name: HelloWorldStep action: ExecuteBash inputs: commands: - echo 'Hello World from the test phase.'

4단계: 유효성 검사 AWSTOE 구성 요소

다음 구문을 검증할 수 있습니다. AWSTOE 로컬 구성 요소는 다음을 사용하여 AWSTOE 애플리케이션을 배포합니다. 다음 예제는 다음을 보여줍니다. AWSTOE 구성 요소를 실행하지 않고 구성 요소의 구문을 검증하는 애플리케이션 validate 명령입니다.

참고

The AWSTOE 애플리케이션은 현재 운영 체제의 구성 요소 구문만 검증할 수 있습니다. 예를 들어 Windows에서 awstoe.exe(을)를 실행하는 경우, ExecuteBash 작업 모듈을 사용하는 Linux 문서의 구문을 검증할 수 없습니다.

Windows

C:\> awstoe.exe validate --documents C:\Users\user\Documents\hello-world.yml

Linux

$ awstoe validate --documents /home/user/hello-world.yml

5단계: 실행 AWSTOE 구성 요소

더 AWSTOE 응용 프로그램은 --phases 명령줄 인수를 사용하여 지정된 문서의 하나 이상의 단계를 실행할 수 있습니다. --phases의 지원되는 값은 build, validatetest입니다. 여러 단계 값을 쉼표로 구분된 값으로 입력할 수 있습니다.

단계 목록을 제공하면 AWSTOE 응용 프로그램은 각 문서의 지정된 단계를 순차적으로 실행합니다. 예: AWSTOE 의 buildvalidate 단계를 실행하고document1.yaml, 의 buildvalidate 단계를 차례로 실행합니다. document2.yaml

로그를 안전하게 저장하고 문제 해결을 위해 보관하려면 Amazon S3에 로그 스토리지를 구성하는 것이 좋습니다. Image Builder에서 로그를 게시하기 위한 Amazon S3 위치는 인프라 구성에 지정됩니다. 이 인프라 구성에 대한 자세한 내용은 Image Builder 인프라 구성 관리 섹션을 참조하세요.

단계 목록이 제공되지 않은 경우 AWSTOE 응용 프로그램은 문서에 나열된 순서대로 모든 단계를 실행합니다. YAML

단일 또는 여러 문서에서 특정 단계를 실행하려면, 다음 명령을 사용합니다.

단일 단계

awstoe run --documents hello-world.yml --phases build

여러 단계

awstoe run --documents hello-world.yml --phases build,test
문서 실행

단일 문서에서 모든 단계를 실행합니다.

awstoe run --documents documentName.yaml

여러 문서의 모든 단계 실행

awstoe run --documents documentName1.yaml,documentName2.yaml

업로드할 Amazon S3 정보를 입력합니다. AWSTOE 사용자 정의 로컬 경로의 로그 (권장)

awstoe run --documents documentName.yaml --log-s3-bucket-name <S3Bucket> --log-s3-key-prefix <S3KeyPrefix> --log-s3-bucket-owner <S3BucketOwner> --log-directory <local_path>

단일 문서에서 모든 단계를 실행하고, 콘솔에 모든 로그를 표시합니다.

awstoe run --documents documentName.yaml --trace

명령 예

awstoe run --documents s3://bucket/key/doc.yaml --phases build,validate

고유 ID로 문서 실행

awstoe run --documents <documentName>.yaml --execution-id <user provided id> --phases <comma separated list of phases>

다음 사항에 대한 도움 받기 AWSTOE

awstoe --help