2.2. 환경 파일
환경 파일은 Heat 템플릿에 대한 사용자 지정을 제공하는 특수한 유형의 템플릿입니다. 여기에는 세 가지 주요 부분이 포함됩니다.
- 리소스 레지스트리
-
이 섹션에서는 다른 heat 템플릿에 연결된 사용자 정의 리소스 이름을 정의합니다. 이는 기본적으로 core 리소스 컬렉션에 없는 사용자 정의 리소스를 생성하는 방법을 제공합니다. 이러한 값은 환경 파일의
resource_registry
섹션에 정의되어 있습니다. - 매개 변수
-
이러한 설정은 최상위 템플릿의 매개변수에 적용되는 일반적인 설정입니다. 예를 들어 리소스 레지스트리 매핑과 같이 중첩된 스택을 배포하는 템플릿이 있는 경우 매개변수는 최상위 템플릿에만 적용되며 중첩 리소스에 대한 템플릿은 아닙니다. 매개변수는 환경 파일의
parameters
섹션에 정의됩니다. - 매개변수 기본값
-
이러한 매개변수는 모든 템플릿에서 매개변수의 기본값을 수정합니다. 예를 들어 리소스 레지스트리 매핑과 같이 중첩 스택을 배포하는 Heat 템플릿이 있는 경우 매개변수 기본값은 모든 템플릿에 적용됩니다. 즉 최상위 템플릿과 모든 중첩 리소스를 정의하는 템플릿입니다. 매개변수 기본값은 환경 파일의
parameter_defaults
섹션에 정의됩니다.
Overcloud에 대한 사용자 지정 환경 파일을 생성할 때 매개변수
대신 parameter_defaults
를 사용하는 것이 좋습니다. 이렇게 하면 매개변수가 Overcloud의 모든 스택 템플릿에 적용됩니다.
기본 환경 파일의 예는 다음과 같습니다.
resource_registry: OS::Nova::Server::MyServer: myserver.yaml parameter_defaults: NetworkName: my_network parameters: MyIP: 192.168.0.1
예를 들어 특정 Heat 템플릿(my_template.yaml
)에서 스택을 생성할 때 이 환경 파일(my_env.yaml
)이 포함될 수 있습니다. my_env.yaml
파일은 OS::Nova::Server::MyServer
라는 새 리소스 유형을 생성합니다. myserver.yaml
파일은 기본 제공 파일을 덮어쓰는 이 리소스 유형에 대한 구현을 제공하는 Heat 템플릿 파일입니다. OS::Nova::Server::MyServer
리소스를 my_template.yaml
파일에 포함할 수 있습니다.
MyIP
는 이 환경 파일과 함께 배포하는 기본 Heat 템플릿에만 매개변수를 적용합니다. 이 예제에서는 my_template.yaml
의 매개변수에만 적용됩니다.
NetworkName
은 기본 Heat 템플릿(이 예제에서는 my_template.yaml
)과 기본 템플릿이 포함된 리소스와 관련된 템플릿(예: OS::Nova::Server::MyServer
리소스 및 myserver.yaml
템플릿)에 모두 적용됩니다.