AWS Proton 파라미터 - AWS Proton

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

AWS Proton 파라미터

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

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

환경, 서비스, 구성 요소 IaC 파일의 파라미터 또는 프로비저닝 코드에서 다음 요구 사항을 참조할 수 있습니다.

  • 각 파라미터 이름의 길이는 100자를 초과할 수 없습니다.

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

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

파라미터 유형

AWS Proton IaC 파일에서 참조할 수 있는 파라미터 유형은 다음과 같습니다.

입력 파라미터

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

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

출력 파라미터

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

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

리소스 파라미터

AWS Proton AWS Proton 리소스 파라미터를 자동으로 생성합니다. 이러한 매개변수는 AWS Proton 리소스 개체의 속성을 노출합니다. 리소스 파라미터의 예는 environment.name입니다.

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

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

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

템플릿 언어 명령문 예: "VPC"라는 이름의 환경 입력

CloudFormation

"{{ parameter-name }}"

"{{ environment.inputs.VPC }}"

Terraform

var.parameter-name

var.environment.inputs.VPC

생성된 테라폼 변수 정의

참고

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

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

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

환경

리소스

environment.name

환경 이름

입력

environment.inputs.input-name

스키마로 정의된 환경 입력

Service

리소스

environment.name

environment.account_id

환경 이름 및 ID AWS 계정

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 템플릿 파일의 파라미터에 대한 하위 항목을 참조하세요.