3.5. 오버클라우드 배포


참고

언더클라우드를 설치하는 동안 undercloud.conf 파일에 generate_service_certificate=false 를 설정합니다. 그러지 않으면 오버클라우드를 배포할 때 신뢰 앵커를 삽입해야 합니다. 신뢰 앵커를 주입하는 방법에 대한 자세한 내용은 Advanced Overcloud Customization 가이드의 Overcloud Public Endpoints에서 SSL/TLS 활성화 를 참조하십시오.

절차

  • 오버클라우드를 생성하려면 openstack overcloud deploy 명령에 추가 인수가 필요합니다.

    $ openstack overcloud deploy --templates \
      -e /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible-external.yaml \
      -e /home/stack/templates/ceph-config.yaml \
      -e --ntp-server pool.ntp.org \

    이 예제 명령은 다음 옵션을 사용합니다.

  • --templates - 기본 heat 템플릿 컬렉션 /usr/share/openstack-tripleo-heat-templates/ 에서 오버클라우드를 생성합니다.
  • -e /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible-external.yaml - director를 설정하여 기존 Ceph 클러스터를 오버클라우드에 통합합니다.
  • -e /home/stack/templates/ceph-config.yaml - 사용자 지정 환경 파일을 추가하여 -e /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible-external.yaml 로 설정된 기본값을 재정의합니다. 이 경우 3.1절. “ceph-ansible 패키지 설치” 에서 생성한 사용자 지정 환경 파일입니다.
  • --ntp-server pool.ntp.org - NTP 서버를 설정합니다.

CephFS에서 지원하는 공유 파일 시스템 서비스를 사용하는 오버클라우드를 배포하는 경우 추가 환경 파일을 추가해야 합니다.

절차

  1. 다음 옵션 중 하나를 사용하여 환경 파일을 생성하고 추가합니다.

    • 기본 CephFS 백엔드 드라이버를 사용하는 오버클라우드를 배포하는 경우 /usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsnative-config.yaml 을 사용합니다.
    • NFS를 통해 CephFS를 사용하는 오버클라우드를 배포하는 경우 /usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsganesha-config.yaml 을 사용합니다.

      NFS를 통한 CephFS의 경우 사용자 지정 컨트롤러 역할도 배포하여 Ganesha CephFS를 NFS 게이트웨이로 실행해야 합니다. 또한 이 역할은 클라이언트에 공유를 제공하도록 격리된 StorageNFS 네트워크를 구성합니다. StorageNFS 네트워크 및 사용자 지정 컨트롤러 역할에 대한 자세한 내용은 공유 파일 시스템 서비스의 NFS 백엔드 가이드를 통해 CephFS에서 업데이트된 환경 배포를 참조하십시오.

  2. 사용하는 CephFS 백엔드에 따라 openstack overcloud deploy 명령의 양식을 변경합니다.

    • 기본 CephFS의 경우:

       $ openstack overcloud deploy --templates \
         -e /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible-external.yaml \
         -e /usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsnative-config.yaml \
         -e /home/stack/templates/ceph-config.yaml \
         -e --ntp-server pool.ntp.org
    • NFS를 통한 CephFS의 경우:

        $ openstack overcloud deploy --templates \
            -n /usr/share/openstack-tripleo-heat-templates/network_data_ganesha.yaml \
            -r /home/stack/custom_roles.yaml \
            -e /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible-external.yaml \
            -e /usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsganesha-config.yaml \
            -e /home/stack/templates/ceph-config.yaml \
            -e --ntp-server pool.ntp.org
참고

사용자 지정 ceph-config.yaml 환경 파일은 ceph-ansible-external.yaml 파일의 매개 변수와 manila-cephfsnative-config.yaml 파일 또는 manila-cephfsganesha-config.yaml 파일의 매개변수를 재정의합니다. 따라서 ceph- ansible-external.yaml 및 manila- cephfsnative-config.yaml 또는 manila- cephfsganesha-config.yaml 다음에 배포 명령에 사용자 지정 ceph -config.yaml 환경 파일을 포함합니다.

환경 파일 예

parameter_defaults:
    CinderEnableIscsiBackend: false
    CinderEnableRbdBackend: true
    CinderEnableNfsBackend: false
    NovaEnableRbdBackend: true
    GlanceBackend: rbd
    CinderRbdPoolName: "volumes"
    NovaRbdPoolName: "vms"
    GlanceRbdPoolName: "images"
    CinderBackupRbdPoolName: "backups"
    GnocchiRbdPoolName: "metrics"
    CephClusterFSID: <cluster_ID>
    CephExternalMonHost: <IP_address>,<IP_address>,<IP_address>
    CephClientKey: "<client_key>"
    CephClientUserName: "openstack"
    ManilaCephFSDataPoolName: manila_data
    ManilaCephFSMetadataPoolName: manila_metadata
    ManilaCephFSCephFSAuthId: 'manila'
    CephManilaClientKey: '<client_key>'
    ExtraConfig:
        ceph::profile::params::rbd_default_features: '1'

  • <cluster_ID>, <IP_address>, <client_key> 변수를 환경에 적합한 값으로 바꿉니다.

오브젝트 스토리지에 기존 RGW 서비스를 사용하는 오버클라우드를 배포하는 경우 추가 환경 파일을 추가해야 합니다.

절차

  1. 다음 parameter_defaults 를 사용자 지정 환경 파일(예: swift-external-params.yaml )에 추가합니다. 배포에 맞게 값을 변경합니다.

    parameter_defaults:
       ExternalSwiftPublicUrl: 'http://<Public RGW endpoint or loadbalancer>:8080/swift/v1/AUTH_%(project_id)s'
       ExternalSwiftInternalUrl: 'http://<Internal RGW endpoint>:8080/swift/v1/AUTH_%(project_id)s'
       ExternalSwiftAdminUrl: 'http://<Admin RGW endpoint>:8080/swift/v1/AUTH_%(project_id)s'
       ExternalSwiftUserTenant: 'service'
       SwiftPassword: 'choose_a_random_password'
    참고

    예제 코드 스니펫에는 해당 환경에서 사용하는 값과 다를 수 있는 매개변수 값이 포함되어 있습니다.

    • 원격 RGW 인스턴스가 수신 대기하는 기본 포트는 8080 입니다. 포트는 외부 RGW 구성 방법에 따라 다를 수 있습니다.
    • Overcloud에서 생성된 swift 사용자는 SwiftPassword 매개 변수로 정의된 암호를 사용합니다. rgw_keystone_admin_password 를 사용하여 ID 서비스를 인증하도록 동일한 암호를 사용하도록 외부 RGW 인스턴스를 구성해야 합니다.
  2. 다음 코드를 Ceph 구성 파일에 추가하여 ID 서비스를 사용하도록 RGW를 구성합니다. 환경에 맞게 변수 값을 바꿉니다.

        rgw_keystone_api_version = 3
        rgw_keystone_url = http://<public Keystone endpoint>:5000/
        rgw_keystone_accepted_roles = member, Member, admin
        rgw_keystone_accepted_admin_roles = ResellerAdmin, swiftoperator
        rgw_keystone_admin_domain = default
        rgw_keystone_admin_project = service
        rgw_keystone_admin_user = swift
        rgw_keystone_admin_password = <password_as_defined_in_the_environment_parameters>
        rgw_keystone_implicit_tenants = true
        rgw_keystone_revocation_interval = 0
        rgw_s3_auth_use_keystone = true
        rgw_swift_versioning_enabled = true
        rgw_swift_account_in_url = true
    참고

    director는 기본적으로 ID 서비스에 다음 역할 및 사용자를 생성합니다.

    • rgw_keystone_accepted_admin_roles: ResellerAdmin, swiftoperator
    • rgw_keystone_admin_domain: default
    • rgw_keystone_admin_project: service
    • rgw_keystone_admin_user: swift
  3. 배포와 관련된 기타 환경 파일을 사용하여 추가 환경 파일을 사용하여 오버클라우드를 배포합니다.

    openstack overcloud deploy --templates \
    -e <your_environment_files>
    -e /usr/share/openstack-tripleo-heat-templates/environments/swift-external.yaml
    -e swift-external-params.yaml

3.5.3. 템플릿 및 환경 파일 호출

응답 파일을 사용하여 모든 템플릿과 환경 파일을 호출할 수도 있습니다. 예를 들어 다음 명령을 사용하여 동일한 오버클라우드를 배포할 수 있습니다.

$ openstack overcloud deploy \
  --answers-file /home/stack/templates/answers.yaml \
  --ntp-server pool.ntp.org

이 경우 /home/stack/templates/answers.yaml 응답 파일에는 다음이 포함됩니다.

templates: /usr/share/openstack-tripleo-heat-templates/
environments:
  - /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible-external.yaml \
  - /home/stack/templates/ceph-config.yaml \

자세한 내용은 Director 설치 및 사용 가이드의 오버클라우드 배포에 환경 파일 포함 을 참조하십시오.

3.5.4. OpenStack overcloud deploy 명령 옵션

다음 명령을 입력하여 openstack overcloud deploy 명령과 함께 사용할 수 있는 전체 옵션 목록을 확인할 수 있습니다.

$ openstack help overcloud deploy

자세한 내용은 Director 설치 및 사용 가이드 의 CLI 툴을 사용하여 기본 오버클라우드 구성을 참조하십시오.

3.5.5. 오버클라우드 생성 상태 보기

오버클라우드 생성 프로세스가 시작되고 director가 노드를 프로비저닝합니다. 이 프로세스를 완료하는 데 다소 시간이 걸립니다.

절차

오버클라우드 생성 상태를 보려면 stack 사용자로 별도의 터미널을 열고 다음 명령을 입력합니다.

$ source ~/stackrc
$ openstack stack list --nested
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동