AWS Proton parameters - AWS Proton

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

AWS Proton parameters

인프라의 파라미터를 코드 (IaC) 파일로 정의하고 사용하여 유연하고 재사용할 수 있도록 할 수 있습니다. 매개변수 네임스페이스의 매개변수 이름을 참조하여 IaC 파일의AWS Proton 매개변수 값을 읽습니다. AWS Proton리소스 프로비저닝 중에 생성하는 렌더링된 IaC 파일에 매개변수 값을 삽입합니다. AWS CloudFormationIaC 매개 변수를 처리하려면 Jinja를AWS Proton 사용합니다. Terraform IaC 매개 변수를 처리하려면 Terraform 매개 변수 값 파일을AWS Proton 생성하고 HCL에 내장된 매개 변수화 기능을 사용합니다.

CodeBuild 공급를 사용하면 코드에서 가져올 수 있는 입력 파일을AWS Proton 생성합니다. 파일은 템플릿 매니페스트의 속성에 따라 JSON 또는 HCL 파일입니다. 자세한 정보는 CodeBuild 프로비저닝 매개변수 세부 정보 및 예제을 참조하세요.

환경, 서비스 및 구성 요소 IaC 파일 또는 프로비저닝 코드에서 다음 요구 사항을 충족하는 매개 변수를 참조할 수 있습니다.

  • 각 매개변수 이름의 길이는 100자를 초과하지 않습니다.

  • 파라미터 네임스페이스와 리소스 이름을 합친 길이는 리소스 이름의 글자 수 제한을 초과하지 않습니다.

AWS Proton이러한 할당량을 초과하면 프로비저닝이 실패합니다.

파라미터 유형

AWS ProtonIaC 파일에서 참조할 수 있는 매개변수 유형은 다음과 같습니다.

입력 파라미터

환경 및 서비스 인스턴스는 환경 또는 서비스 템플릿과 연결된 스키마 파일에 정의한 입력 매개 변수를 사용할 수 있습니다. 리소스의 IaC 파일에서 리소스의 입력 파라미터를 참조할 수 있습니다. 구성 요소 IaC 파일은 구성 요소가 연결된 서비스 인스턴스의 입력 매개 변수를 참조할 수 있습니다.

AWS Proton입력 매개 변수 이름을 스키마 파일과 비교하고 IaC 파일에서 참조되는 매개 변수와 일치시켜 리소스 프로비저닝 중에 사양 파일에 제공하는 입력 값을 삽입합니다.

출력 파라미터

모든 IaC 파일에서 출력을 정의할 수 있습니다. 출력은 예를 들어 템플릿이 제공하는 리소스 중 하나의 이름, ID 또는 ARN일 수도 있고 템플릿의 입력 중 하나를 전달하는 방법일 수도 있습니다. 다른 리소스의 IaC 파일에서 이러한 출력을 참조할 수 있습니다.

CloudFormation IaC 파일에서Outputs: 블록의 출력 매개변수를 정의합니다. Terraform IaC 파일에서output 명령문을 사용하여 각 출력 파라미터를 정의합니다.

리소스 파라미터

AWS ProtonAWS Proton리소스 매개변수를 자동으로 생성합니다. 이러한 매개 변수는AWS Proton 리소스 객체의 속성을 노출합니다. 리소스 매개변수의 예는 다음과 같습니다environment.name.

IaC 파일의AWS Proton 매개변수 사용

IaC 파일에서 매개변수 값을 읽으려면 매개변수 네임스페이스에서AWS Proton 매개변수 이름을 참조하십시오. AWS CloudFormationIaC 파일의 경우 Jinja 구문을 사용하고 매개 변수를 중괄호와 따옴표로 묶습니다.

다음 표는 지원되는 각 템플릿 언어의 참조 구문을 예제와 함께 보여줍니다.

템플릿 언어 구문 예: 이름이 “VPC”인 환경 입력

CloudFormation

"{{ parameter-name }}"

"{{ environment.inputs.VPC }}"

테라폼

var.parameter-name

var.environment.inputs.VPC

생성된 테라폼 변수 정의

참고

IaC 파일에서 CloudFormation 동적 매개변수를 사용하는 경우 Jinja의 오해 오류를 방지하려면 동적 매개변수를 이스케이프해야 합니다. 자세한 내용을 알아보려면 AWS Proton 문제 해결 섹션을 참조하세요.

다음 표에는 모든AWS Proton 리소스 파라미터의 네임스페이스 이름이 나와 있습니다. 각 템플릿 파일 유형은 매개 변수 네임스페이스의 다른 하위 집합을 사용할 수 있습니다.

템플릿 파일 파라미터 유형 파라미터 이름 설명

Environment

리소스

environment.name

Environment name

입력

environment.inputs.input-name

스키마에서 정의한 환경 입력

서비스

리소스

environment.name

environment.account_id

환경 이름 및AWS 계정 ID

output

environment.outputs.output-name

환경 IaC 파일 출력

리소스

service.branch_name

service.name

service.repository_connection_arn

service.repository_id

서비스 이름 및 코드 리포지토리

리소스

service_instance.name

서비스 인스턴스 이름

입력

service_instance.inputs.input-name

스키마 정의 서비스 인스턴스 입력

리소스

service_instance.components.default.name

첨부된 기본 구성 요소 이름

output

service_instance.components.default.outputs.output-name

첨부된 기본 구성 요소 IaC 파일 출력

파이프라인

리소스

service_instance.environment.name

service_instance.environment.account_id

서비스 인스턴스 환경 이름 및AWS 계정 ID

output

service_instance.environment.outputs.output-name

서비스 인스턴스 환경 IaC 파일 출력

입력

pipeline.inputs.input-name

스키마에서 정의한 파이프라인 입력

리소스

service.branch_name

service.name

service.repository_connection_arn

service.repository_id

서비스 이름 및 코드 리포지토리

입력

service_instance.inputs.input-name

스키마 정의 서비스 인스턴스 입력

수집

{% for service_instance in service_instances %}...{% endfor %}

반복해서 살펴볼 수 있는 서비스 인스턴스 모음

구성 요소

리소스

environment.name

environment.account_id

환경 이름 및AWS 계정 계정 ID

output

environment.outputs.output-name

환경 IaC 파일 출력

리소스

service.branch_name

service.name

service.repository_connection_arn

service.repository_id

서비스 이름 및 코드 리포지토리 (연결된 구성 요소)

리소스

service_instance.name

서비스 인스턴스 이름 (연결된 구성 요소)

입력

service_instance.inputs.input-name

스키마에서 정의한 서비스 인스턴스 입력 (연결된 구성 요소)

리소스

component.name

구성 요소 이름

자세한 내용 및 예제는 다양한 리소스 유형 및 템플릿 언어에 대한 IaC 템플릿 파일의 매개 변수에 대한 하위 항목을 참조하십시오.