Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

8장. 컨테이너화된 서비스

director는 핵심 OpenStack Platform 서비스를 오버클라우드에 컨테이너로 설치합니다. 이 섹션에서는 컨테이너화된 서비스의 작동 방식에 대한 몇 가지 배경 정보를 제공합니다.

8.1. 컨테이너화된 서비스 아키텍처

director는 핵심 OpenStack Platform 서비스를 오버클라우드에 컨테이너로 설치합니다. 컨테이너화된 서비스의 템플릿은 /usr/share/openstack-tripleo-heat-templates/docker/services/ 에 있습니다. 이러한 템플릿은 각 구성 가능 서비스 템플릿을 참조합니다. 예를 들어 OpenStack ID(keystone) 컨테이너화된 서비스 템플릿(docker/services/keystone.yaml)에는 다음 리소스가 포함되어 있습니다.

  KeystoneBase:
    type: ../../puppet/services/keystone.yaml
    properties:
      EndpointMap: {get_param: EndpointMap}
      ServiceData: {get_param: ServiceData}
      ServiceNetMap: {get_param: ServiceNetMap}
      DefaultPasswords: {get_param: DefaultPasswords}
      RoleName: {get_param: RoleName}
      RoleParameters: {get_param: RoleParameters}

유형은 해당 OpenStack ID(keystone) 구성 가능 서비스를 참조하고 해당 템플릿에서 출력 데이터를 가져옵니다. 컨테이너화된 서비스는 이 데이터를 자체 컨테이너 특정 데이터와 병합합니다.

컨테이너화된 서비스를 사용하는 모든 노드는 OS::TripleO::Services::Docker 서비스를 활성화해야 합니다. 사용자 지정 역할 구성에 대한 roles_data.yaml 파일을 생성할 때 컨테이너화된 서비스로 기본 구성 가능 서비스를 사용하여 OS::TripleO::Services::Docker 서비스를 포함합니다. 예를 들어 Keystone 역할은 다음 역할 정의를 사용합니다.

- name: Keystone
  ServicesDefault:
    - OS::TripleO::Services::CACerts
    - OS::TripleO::Services::Kernel
    - OS::TripleO::Services::Ntp
    - OS::TripleO::Services::Snmp
    - OS::TripleO::Services::Sshd
    - OS::TripleO::Services::Timezone
    - OS::TripleO::Services::TripleoPackages
    - OS::TripleO::Services::TripleoFirewall
    - OS::TripleO::Services::SensuClient
    - OS::TripleO::Services::Fluentd
    - OS::TripleO::Services::AuditD
    - OS::TripleO::Services::Collectd
    - OS::TripleO::Services::MySQLClient
    - OS::TripleO::Services::Docker
    - OS::TripleO::Services::Keystone