구성은 배포에 속하는 리소스의 유형 및 속성, 구성에 사용되는 템플릿, 최종 구성을 만들기 위해 실행할 수 있는 추가 하위 파일을 포함하여 배포의 구조를 정의합니다. 배포를 만들려면 항상 구성을 지정해야 합니다.
구성에서는 단일 구성 파일의 여러 서비스로부터 지원되는 다양한 Google Cloud Platform 리소스를 정의할 수 있습니다. 일부 예제 리소스는 다음과 같습니다.
- 다음을 포함한 모든 Compute Engine 리소스:
- Kubernetes Engine
- BigQuery
- Cloud Storage
- Cloud SQL
전체 리소스 목록은 이 지원되는 리소스 유형의 표를 참조하거나 유형 컬렉션에 대한 list()
요청을 수행하십시오.
구성 언어
YAML 구문을 사용하여 구성 파일을 작성해야 합니다. 구성 파일을 만드는 방법을 보려면 구성 만들기를 참조하세요.
템플릿 언어
구성은 최종 구성을 만들기 위한 배포 중 Deployment Manager가 확장할 하나 이상의 템플릿 파일을 가져올 수 있습니다. 템플릿은 Jinja 또는 Python으로 작성할 수 있습니다. 템플릿을 혼합하여 사용할 수도 있습니다. 단일 구성은 Jinja 및 Python 템플릿을 모두 가져올 수 있습니다. 템플릿은 로컬 파일이거나 제3자 URL에서 호스팅되는 파일일 수 있습니다.
템플릿은 환경 변수를 사용하는 기능, 커스텀 변수를 정의하는 기능, Python 라이브러리를 사용하는 기능과 같은 추가 기능을 제공합니다.
템플릿에 대한 자세한 내용은 기본 템플릿 만들기를 참조하세요.
구성 제한사항
모든 구성은 Deployment Manager가 유지 관리하는 제어된 환경 내의 서버 측에서 확장됩니다. 남용을 방지하기 위해 이 환경은 Deployment Manager팀에서 밀접하게 관리되며, 일부 제한사항을 갖고 있습니다.
- 원래 구성이나 확장된 구성 모두 1MB를 초과할 수 없습니다.
- Deployment Manager에 업로드되는 모든 구성은 구성 실행 시간 및 확장 중 구성에 사용되는 처리 능력이 제한됩니다. 이 제한에서 실행할 경우 구성을 보다 작은 템플릿으로 분할하거나 반복 및 중첩된 루프와 같은 복잡한 구조를 간소화하는 것이 좋습니다.
- 모든 Python 템플릿은 시스템 또는 네트워크 호출을 수행할 수 없습니다. 이러한 템플릿은 자동으로 거부됩니다.
다음 단계
- 단순 구성을 만듭니다.
- 템플릿 사용 여부를 결정합니다.
- 구성을 다른 사용자에게 노출하는 경우 스키마 만들기를 고려합니다.
- 템플릿을 외부에서 호스팅하는 방법을 확인합니다.