서비스 CloudFormation IaC 파일 매개변수 세부 정보 및 예제 - AWS Proton

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

서비스 CloudFormation IaC 파일 매개변수 세부 정보 및 예제

서비스 및 파이프라인 인프라의 파라미터를 코드 (IaC) 파일로 정의하고 참조할 수 있습니다. AWS Proton매개 변수, 매개 변수 유형, 매개 변수 네임스페이스 및 IaC 파일에서 매개 변수를 사용하는 방법에 대한 자세한 설명은 을 참조하십시오AWS Proton parameters.

서비스 매개변수 정의

서비스 IaC 파일의 입력 및 출력 매개 변수를 모두 정의할 수 있습니다.

  • 입력 파라미터스키마 파일에서 서비스 인스턴스 입력 파라미터를 정의합니다.

    다음 목록에는 일반적인 사용 사례에 대한 서비스 입력 매개 변수의 예가 나와 있습니다.

    • 포트

    • 태스크 크기

    • 이미지

    • 원하는 개수

    • 도커 파일

    • 단위 테스트 명령

    서비스를 생성할 때 입력 매개변수 값을 제공합니다.

    • 콘솔을 사용하여AWS Proton 제공하는 스키마 기반 양식을 작성하십시오.

    • CLI를 사용하여 값이 포함된 사양을 제공하십시오.

  • 출력 파라미터 — 서비스 IaC 파일의 서비스 인스턴스 출력을 정의합니다. 그런 다음 다른 리소스의 IaC 파일에서 이러한 출력을 참조할 수 있습니다.

서비스 IaC 파일의 매개변수 값 읽기

서비스 IaC 파일의 서비스 및 기타 리소스와 관련된 매개 변수를 읽을 수 있습니다. 매개 변수 네임스페이스에서 매개 변수 이름을 참조하여AWS Proton 매개 변수 값을 읽습니다.

  • 입력 매개 변수 — 참조를 통해 서비스 인스턴스 입력 값을service_instance.inputs.input-name 읽습니다.

  • 리소스 매개 변수service.nameservice_instance.name, 및 같은 이름을 참조하여AWS Proton 리소스 매개 변수를environment.name 읽습니다.

  • 출력 매개 변수environment.outputs.output-name 또는 을 참조하여 다른 리소스의 출력을service_instance.components.default.outputs.output-name 읽습니다.

매개변수가 있는 예제 서비스 IaC 파일

다음 예제는 서비스 CloudFormation IaC 파일의 스니펫입니다. environment.outputs.네임스페이스는 환경 IaC 파일의 출력을 나타냅니다. service_instance.inputs.네임스페이스는 서비스 인스턴스 입력 파라미터를 나타냅니다. service_instance.name속성은AWS Proton 리소스 매개 변수를 나타냅니다.

Resources: StoreServiceInstanceInputValue: Type: AWS::SSM::Parameter Properties: Type: String Value: "{{ service.name }} {{ service_instance.name }} {{ service_instance.inputs.my_sample_service_instance_required_input }} {{ service_instance.inputs.my_sample_service_instance_optional_input }} {{ environment.outputs.MySampleInputValue }} {{ environment.outputs.MyOtherSampleInputValue }}" # resource parameter references # input parameter references # output references to an environment infrastructure as code file Outputs: MyServiceInstanceParameter: # output definition Value: !Ref StoreServiceInstanceInputValue MyServiceInstanceRequiredInputValue: # output definition Value: "{{ service_instance.inputs.my_sample_service_instance_required_input }}" # input parameter reference MyServiceInstanceOptionalInputValue: # output definition Value: "{{ service_instance.inputs.my_sample_service_instance_optional_input }}" # input parameter reference MyServiceInstancesEnvironmentSampleOutputValue: # output definition Value: "{{ environment.outputs.MySampleInputValue }}" # output reference to an environment IaC file MyServiceInstancesEnvironmentOtherSampleOutputValue: # output definition Value: "{{ environment.outputs.MyOtherSampleInputValue }}" # output reference to an environment IaC file