5장. 오케스트레이션


director는 HOT(Heat Orchestration Templates)를 오버클라우드 배포 계획의 템플릿 형식으로 사용합니다. RuntimeClass 형식의 템플릿은 일반적으로 YAML 형식으로 표시됩니다. 템플릿의 용도는 OpenStack Orchestration(heat)이 생성하는 리소스 컬렉션과 리소스 구성을 정의하는 스택을 정의하고 생성하는 것입니다. 리소스는 RHOSP(Red Hat OpenStack Platform)의 오브젝트이며 컴퓨팅 리소스, 네트워크 구성, 보안 그룹, 확장 규칙 및 사용자 정의 리소스를 포함할 수 있습니다.

참고

RHOSP에서 heat 템플릿 파일을 사용자 지정 템플릿 리소스로 사용하려면 파일 확장자가 .yaml 또는 .template이어야 합니다.

5.1. Heat 템플릿 기본 사항 학습

5.1.1. heat 템플릿 이해

Heat 템플릿에는 다음 세 가지 주요 섹션이 있습니다.

parameters
이러한 설정은 stack을 사용자 지정하는 방법과 전달된 값 없이 매개 변수의 기본값을 제공하는 heat에 전달됩니다. 이러한 설정은 템플릿의 parameters 섹션에 정의되어 있습니다.
resources
resources 섹션을 사용하여 이 템플릿을 사용하여 스택을 배포할 때 생성할 수 있는 컴퓨팅 인스턴스, 네트워크 및 스토리지 볼륨과 같은 리소스를 정의합니다. RHOSP(Red Hat OpenStack Platform)에는 모든 구성 요소에 걸쳐 있는 핵심 리소스 세트가 포함되어 있습니다. 스택의 일부로 생성하고 구성할 특정 오브젝트입니다. RHOSP에는 모든 구성 요소에 걸쳐 있는 핵심 리소스 세트가 포함되어 있습니다. 이러한 리소스는 템플릿의 resources 섹션에 정의되어 있습니다.
출력
outputs 섹션을 사용하여 클라우드 사용자가 스택을 생성한 후 액세스할 수 있는 출력 매개 변수를 선언합니다. 클라우드 사용자는 이러한 매개변수를 사용하여 배포된 인스턴스의 IP 주소 또는 스택의 일부로 배포된 웹 애플리케이션의 URL과 같은 스택에 대한 세부 정보를 요청할 수 있습니다.

기본 heat 템플릿 예:

heat_template_version: 2013-05-23

description: > A very basic Heat template.

parameters:
  key_name:
    type: string
    default: lars
    description: Name of an existing key pair to use for the instance
  flavor:
    type: string
    description: Instance type for the instance to be created
    default: m1.small
  image:
    type: string
    default: cirros
    description: ID or name of the image to use for the instance

resources:
  my_instance:
    type: OS::Nova::Server
    properties:
      name: My Cirros Instance
      image: { get_param: image }
      flavor: { get_param: flavor }
      key_name: { get_param: key_name }

output:
  instance_name:
    description: Get the instance's name
    value: { get_attr: [ my_instance, name ] }
Copy to Clipboard Toggle word wrap

이 템플릿에서는 type 리소스 유형을 사용합니다. OS::Nova::Server 는 클라우드 사용자가 지정하는 특정 플레이버, 이미지 및 키를 사용하여 my_instance 라는 인스턴스를 생성합니다. 스택은 My Cirros 인스턴스 라고 하는 instance_name 값을 반환할 수 있습니다.

중요

heat 템플릿에는 사용할 구문 버전과 사용 가능한 기능을 정의하는 heat_template_version 매개변수도 필요합니다. 자세한 내용은 공식 Heat 문서를 참조하십시오.

5.1.2. 환경 파일 이해

환경 파일은 heat 템플릿을 사용자 지정하는 데 사용할 수 있는 특별한 유형의 템플릿입니다. 코어 heat 템플릿 외에도 배포 명령에 환경 파일을 추가할 수 있습니다. 환경 파일에는 다음 세 가지 주요 섹션이 포함되어 있습니다.

resource_registry
이 섹션에서는 다른 heat 템플릿에 연결된 사용자 정의 리소스 이름을 정의합니다. 이를 통해 핵심 리소스 컬렉션에 없는 사용자 지정 리소스를 생성할 수 있습니다.
parameters
최상위 수준의 템플릿의 매개변수에 적용하는 일반적인 설정입니다. 예를 들어 리소스 레지스트리 매핑과 같은 중첩 스택을 배포하는 템플릿이 있는 경우 매개변수는 최상위 템플릿에만 적용되고 중첩 리소스의 템플릿에는 적용되지 않습니다.
parameter_defaults
이러한 매개변수는 모든 템플릿에서 매개 변수의 기본값을 수정합니다. 예를 들어 리소스 레지스트리 매핑과 같이 중첩된 스택을 배포하는 heat 템플릿이 있는 경우 매개 변수 기본값이 모든 템플릿에 적용됩니다.
중요

오버클라우드의 사용자 지정 환경 파일을 생성할 때 매개변수 대신 parameter_defaults 를 사용하여 매개변수가 오버클라우드의 모든 스택 템플릿에 적용되도록 합니다.

기본 환경 파일의 예:

resource_registry:
  OS::Nova::Server::MyServer: myserver.yaml

parameter_defaults:
  NetworkName: my_network

parameters:
  MyIP: 192.168.0.1
Copy to Clipboard Toggle word wrap

이 환경 파일(my_env.yaml)은 특정 heat 템플릿(my_template.yaml)에서 스택을 생성할 때 포함될 수 있습니다. my_env.yaml 파일은 OS::Nova::Server::MyServer 라는 새 리소스 유형을 생성합니다. myserver.yaml 파일은 기본 제공 파일을 덮어쓰는 이 리소스 유형의 구현을 제공하는 heat 템플릿 파일입니다. OS::Nova::Server::MyServer 리소스를 my_template.yaml 파일에 포함할 수 있습니다.

myip 은 이 환경 파일과 함께 배포되는 기본 heat 템플릿에만 매개 변수를 적용합니다. 이 예에서 MyIPmy_template.yaml 의 매개변수에만 적용됩니다.

NetworkName 은 기본 heat 템플릿인 my_template.yaml 과 이 예제의 OS::Nova::Server::MyServer 리소스와 같은 기본 템플릿에 포함된 템플릿 모두에 적용됩니다.

참고

RHOSP에서 heat 템플릿 파일을 사용자 지정 템플릿 리소스로 사용하려면 파일 확장자가 .yaml 또는 .template이어야 합니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat