컴포넌트 구성 개요
컴포넌트 구성 개요 (Component configuration overview)
컴포넌트 구성 파일은 Stack을 구성하는 인프라 컴포넌트를 정의해요. 컴포넌트 구성을 .tfcomponent.hcl 파일에 작성해요.
출처: 문서
본문
배경 (Background)
컴포넌트 구성 파일에서 Stack의 일부인 인프라 컴포넌트를 선언해요. 각 컴포넌트는 Terraform 모듈을 소싱하며 프로비저닝하고 관리할 수 있는 재사용 가능한 인프라 조각을 나타내요.
컴포넌트 구성은 반복적으로 배포할 수 있는 공통 수명 주기를 공유하는 여러 컴포넌트를 정의해요. 이는 환경 전반에 걸쳐 일관성을 보장하고 대규모 프로비저닝의 복잡성을 줄이는 데 도움이 돼요.
각 Stack은 하나 이상의 component 블록이 필요하며, Stack에 포함하려는 모든 모듈에 대해 component 블록을 추가해야 해요. Stack 컴포넌트 구성 파일 정의에 대해 더 알아보세요.
구성 블록 (Configuration blocks)
컴포넌트 구성 파일에서 다음 블록을 정의할 수 있어요:
component블록은 Stack을 구성하는 개별 모듈을 소싱해요. 각 컴포넌트는 입력 변수를 받고 Stack 수준에서 선언한 프로바이더를 받아들여요.required_providers블록은 컴포넌트 구성이 요구하는 프로바이더를 선언해 Terraform이 이를 설치하고 사용할 수 있게 해요.provider블록은 프로바이더를 구성하고 그 구성을 컴포넌트에 전달해요.removed블록은 리소스의 적절한 정리를 보장하면서 Stack에서 제거하려는 컴포넌트를 정의해요.variable블록은 배포 시 서로 다른 값으로 설정할 수 있는 입력 변수를 정의해요.output블록은 HCP Terraform UI에 노출하고 배포에 사용할 수 있게 할 값을 정의해요.locals블록은 컴포넌트 구성 내에서 참조할 수 있는 로컬 값을 정의해요.
지원되는 Terraform 함수
컴포넌트 구성은 Terraform 함수의 부분 집합을 지원해요. Stacks 컴포넌트가 지원하는 함수 목록은 내장 함수 (Built-in Functions)를 참고하세요.
더 알아보기 (Learn more)
- component 블록 참조: 컴포넌트 정의
- required_providers 블록: 프로바이더 선언
- deployment 구성 개요: 배포 구성
- Stack 개요: Stacks 개념