사용자 정의 블록 스토리지 백엔드 배포 가이드


Red Hat OpenStack Platform 8

Red Hat OpenStack Platform Overcloud에서 사용자 지정 블록 스토리지 백엔드 배포 가이드

OpenStack Documentation Team

초록

이 문서에서는 Red Hat OpenStack Platform 8 Overcloud에서 블록 스토리지 서비스에 대한 사용자 정의 통합되지 않은 백엔드를 배포하는 방법을 설명합니다.

1장. 소개

Red Hat OpenStack Platform Director는 완전한 OpenStack 환경을 설치하고 관리하기 위한 툴셋입니다. 주로 OpenStack 프로젝트 TripleO(OpenStack )를기반으로 합니다. Director의 주요 목표는 최소한의 수동 구성으로 기능적인 엔터프라이즈급 OpenStack 배포를 완전히 오케스트레이션하는 것입니다. 개별 OpenStack 구성 요소를 수동으로 구성하는 데 고유한 여러 문제를 해결하는 데 도움이 됩니다.

Director에서 제공하는 최종 결과 OpenStack 배포를 Overcloud 라고 합니다. Overcloud에는 블록 스토리지를 포함하여 최종 사용자에게 서비스를 제공하는 모든 구성 요소가 포함되어 있습니다. 이 문서에서는 사용자 정의 백엔드를 Overcloud의 블록 스토리지 서비스에 배포하는 방법에 대한 지침을 제공합니다.

이 문서에서는 블록 스토리지 서비스를 수동으로 구성하는 관리자의 지식을 활용하는 것을 목표로 합니다. OpenStack 테스트 배포(예: Cryostat를 통해)에서 이 서비스를 구성하려면 호스트 노드의 /etc/cinder/cinder.conf를 편집해야 합니다. 해당 파일의 블록 스토리지 설정의 대부분은 다른 위치에 자세히 설명되어 있습니다. 이 문서에서는 사용자 지정 백엔드 를 연결하기 위해 동일한 설정을 Overcloud에 적용하는 방법에 대해 설명합니다.

주의

이 절차는 제한된 사용 사례에서 성공적으로 테스트되었습니다. 먼저 비프로덕션 환경에서 계획된 배포를 테스트해야 합니다. 질문이 있는 경우 Red Hat 지원팀에 문의하십시오.

1.1. 사용자 정의 백엔드

이 문서의 목적을 위해 사용자 지정 백엔드는 Red Hat OpenStack Platform Director에 완전히 통합되지 않은 스토리지 서버/적용 또는 구성으로 정의됩니다. 지원되는 일부 블록 스토리지 백엔드는 이미 Director에 통합되어 있습니다. 즉, 사전 구성된 Director 파일이 이미 즉시 제공됩니다. 통합 백엔드를 구성하고 이러한 파일을 통해 Overcloud에 배포할 수 있습니다. 통합된 백엔드의 예로는 Dell EqualLogic, Dell Storage Center 및 NetApp 어플라이언스의 Red Hat Ceph 및 단일 백 엔드 구성이 있습니다.

또한 이미 Director에 통합된 일부 스토리지 장치는 단일 인스턴스 백엔드만 지원합니다. 예를 들어 Dell EqualLogic용 사전 구성된 Director 파일은 단일 백엔드만 배포할 수 있습니다. 이 어플라이언스의 여러 백엔드 인스턴스를 배포하려면 이 문서에 설명된 대로 사용자 지정 구성이 필요합니다.

노드의 /etc/cinder/cinder.conf를 직접 편집하여 Block Storage 서비스를 수동으로 구성할 수 있지만 향후 Director에서 모든 설정을 덮어씁니다. 따라서 블록 스토리지 백엔드를 배포하는 데 권장되는 방법은 Director를 사용하는 것입니다. 백엔드 구성이 이미 완전히 통합된 경우 패키지된 환경 파일을 간단히 편집하고 호출할 수 있습니다.

그러나 사용자 지정 백엔드를 사용하면 고유한 환경 파일을 작성해야 합니다. 이 문서에는 자체 배포에 대해 편집할 수 있는 주석이 있는 샘플, 즉 /home/stack/templates/custom-env.yaml. 이 샘플 파일은 두 개의 NetApp 백엔드를 사용하도록 Block Storage 서비스를 구성하는 데 적합합니다.

1.2. 요구 사항

블록 스토리지 및 배포하려는 백엔드를 수동으로 구성하는 방법에 대한 사전 지식이 아닌 이 문서에서는 다음 내용도 가정합니다.

  • 타사 백엔드 어플라이언스를 사용하는 경우 이미 스토리지 리포지토리로 올바르게 구성해야 합니다.
  • Overcloud는 Director 설치 및 사용의 지침에 따라 Director를 통해 이미 배포되었습니다.
  • 승격된 권한이 있는 계정의 사용자 이름과 암호가 있습니다. 오버클라우드를 배포하기 위해 생성된 것과 동일한 계정을 사용할 수 있습니다. Director 설치 사용자 생성 에서 이 목적을 위해 stack 사용자를 생성하고 사용합니다.
  • /etc/cinder/cinder.conf의 Block Storage 백엔드에 필요한 결과 구성을 이미 매핑했습니다. 이를 통해 director를 통해 계획된 구성을 오케스트레이션하는 것은 모두 남아 있습니다.

2장. 프로세스 설명

블록 스토리지 서비스의 설정은 /etc/cinder/cinder.conf에 저장됩니다. 이러한 설정에는 백엔드 정의가 포함됩니다. 블록 스토리지 서비스에서 사용할 수 있는 대부분의 타사 백엔드는 /etc/cinder/cinder.conf 설정 편집과 관련된 설정 지침을 제공합니다. 1장. 소개 에서 언급했듯이 이렇게 하면 블록 스토리지 서비스가 구성되지만 향후 Overcloud 업데이트에서 해당 설정을 덮어씁니다.

관계없이 /etc/cinder/cinder.conf를 통한 수동 구성과 관련된 문서는 여전히 Overcloud 배포에 유용합니다. Director는 결국 heat 를 통해 /etc/cinder/cinder.conf에 동일한 구성을 적용합니다. 따라서 백엔드 구성을 계획하려면 다음을 수행해야 합니다.

  • 원하는 블록 스토리지 백엔드 구성을 철저히 계획하고,
  • 이 구성을 위해 결과 /etc/cinder/cinder.conf 파일을 매핑합니다.

결과 /etc/cinder/cinder.conf 파일을 매핑한 후 백엔드 설정을 오케스트레이션하는 환경 파일을 생성합니다. 환경 파일은 샘플 파일 /home/stack/templates/custom-env.yaml을 사용하여 이 단계를 자세히 설명합니다. 환경 파일을 편리하게 사용하면 향후 Overcloud 업데이트를 통해 백엔드 설정이 유지되도록 합니다.

3장. 환경 파일 생성

환경 파일에는 정의할 각 백엔드의 설정이 포함되어 있습니다. 사용자 지정 백엔드 배포와 관련된 기타 설정도 포함되어 있습니다. 환경 파일에 대한 자세한 내용은 환경 파일 ( Director 설치 및 사용 가이드)을 참조하십시오.

다음 환경 파일은 두 개의 NetApp 백엔드, 즉 netapp1netapp2 를 정의합니다.

/home/stack/templates/custom-env.yaml

parameters: # 
1

  CinderEnableIscsiBackend: false
  CinderEnableRbdBackend: false
  CinderEnableNfsBackend: false
  NovaEnableRbdBackend: false
  GlanceBackend: file # 
2


parameter_defaults:
  controllerExtraConfig: # 
3

    cinder::config::cinder_config:
        netapp1/volume_driver: # 
4

            value: cinder.volume.drivers.netapp.common.NetAppDriver
        netapp1/netapp_storage_family:
            value: ontap_7mode
        netapp1/netapp_storage_protocol:
            value: iscsi
        netapp1/netapp_server_hostname:
            value: 10.35.64.11
        netapp1/netapp_server_port:
            value: 80
        netapp1/netapp_login:
            value: root
        netapp1/netapp_password:
            value: 123456
        netapp1/volume_backend_name:
            value: netapp_1
        netapp2/volume_driver: # 
5

            value: cinder.volume.drivers.netapp.common.NetAppDriver # 
6

        netapp2/netapp_storage_family:
            value: ontap_7mode
        netapp2/netapp_storage_protocol:
            value: iscsi
        netapp2/netapp_server_hostname:
            value: 10.35.64.11
        netapp2/netapp_server_port:
            value: 80
        netapp2/netapp_login:
            value: root
        netapp2/netapp_password:
            value: 123456
        netapp2/volume_backend_name:
            value: netapp_2
    cinder_user_enabled_backends: ['netapp1','netapp2'] # 
7
Copy to Clipboard Toggle word wrap

1
다음 매개변수는 false로 설정되어 있으므로 필요하지 않은 다른 백엔드 유형을 비활성화합니다.
  • CinderEnableIscsiBackend: 기타 iSCSI 백엔드.
  • CinderEnableRbdBackend: Red Hat Ceph.
  • CinderEnableNfsBackend: NFS.
  • NovaEnableRbdBackend: 임시 Red Hat Ceph 스토리지.
2
GlanceBackend 매개 변수는 이미지를 저장하는 데 이미지 서비스에서 사용해야 하는 항목을 설정합니다. 지원되는 값은 다음과 같습니다.
  • file: 각 컨트롤러 노드의 /var/lib/glance/images에 이미지를 저장합니다.
  • Swift: 이미지 스토리지에 오브젝트 스토리지 서비스를 사용합니다.
  • Cinder: 이미지 스토리지에 블록 스토리지 서비스를 사용합니다.
3
controllerExtraConfig 는 모든 컨트롤러 노드에 적용할 사용자 지정 설정을 정의합니다. cinder::config::cinder_config 클래스는 설정을 블록 스토리지(cinder) 서비스에 적용해야 함을 의미합니다. 그러면 백엔드 설정이 궁극적으로 각 컨트롤러 노드의 /etc/cinder/cinder.conf 파일로 끝납니다.
4
netapp1/volume_drivernetapp2/volume_driver 설정은 섹션/설정 구문을 따릅니다. 블록 스토리지 서비스를 사용하면 각 백엔드가 /etc/cinder/cinder.conf의 자체 섹션에 정의됩니다. netapp1 접두사를 사용하는 각 설정은 새 [netapp1] 백엔드 섹션에 정의됩니다.
5
마찬가지로 netapp2 설정은 별도의 [netapp2] 섹션에 정의됩니다.
6
접두사는 이전 설정의 값을 정의합니다.
7
cinder_user_enabled_backends 클래스는 사용자 지정 백엔드를 설정하고 활성화합니다. 이름에서 알 수 있듯이 이 클래스는 사용자 사용 백엔드에만 사용해야 합니다. 특히 cinder::config::cinder_config 클래스에 정의된 항목은 다음과 같습니다.

Director를 통해 기본적으로 활성화할 수 있는 백엔드를 나열하는 cinder_user_enabled_backends 를 사용하지 마십시오. 여기에는 지원되는 NetApp 또는 Dell 어플라이언스에 대한 Red Hat Ceph, NFS 및 단일 백엔드가 포함됩니다. 예를 들어 Red Hat Ceph 백엔드를 활성화하는 경우 CinderEnableRbdBackend: true 를 사용하여 cinder_user_enabled_backends 에 나열하지 마십시오.

참고

OpenStack Block Storage용 Red Hat Ceph 백엔드를 정의하는 방법에 대한 자세한 내용은 Red Hat Ceph Storage for the Overcloud 를 참조하십시오.

] 환경 파일 xref:envfile[/home/stack/templates/custom-env.yaml을 사용하여 사용자 지정 백엔드의 배포를 오케스트레이션하는 방법을 설명합니다. /home/stack/templates/custom-env.yaml의 결과 /etc/cinder/cinder.conf 설정을 보려면 A.2절. “샘플 환경 파일에서 구성 생성” 을 참조하십시오.

4장. 구성된 백엔드 배포

/home/stack/templates/에 custom-env.yaml 파일을 생성한 후에는 stack 사용자로 로그인합니다. 그런 다음 다음을 실행하여 사용자 정의 백엔드 구성을 배포합니다.

$ openstack overcloud deploy --templates -e /home/stack/templates/custom-env.yaml
Copy to Clipboard Toggle word wrap
중요

Overcloud를 생성할 때 추가 환경 파일을 전달한 경우 Overcloud를 원하지 않는 변경을 방지하기 위해 -e 옵션을 사용하여 여기에서 다시 전달합니다.

자세한 내용은 Overcloud 확장 및 오버클라우드 업데이트를 참조하십시오.

Director가 오케스트레이션을 완료하면 백엔드를 테스트합니다. 자세한 내용은 5장. 구성된 백엔드 테스트 을 참조하십시오.

5장. 구성된 백엔드 테스트

Overcloud에 백엔드를 배포한 후 볼륨을 생성할 수 있는지 테스트합니다. 이렇게 하려면 먼저 필요한 환경 변수를 로드해야 합니다. 이러한 변수는 기본적으로 /home/stack/overcloudrc에 정의됩니다.

이러한 변수를 로드하려면 stack 사용자로 다음 명령을 실행합니다.

$ source /home/stack/overcloudrc
Copy to Clipboard Toggle word wrap
참고

다음으로 각 백엔드에 대한 볼륨 유형을 생성합니다. stack 사용자로 Overcloud의 컨트롤러 노드에 로그인하고 다음을 실행합니다.

$ cinder type-create backend1
$ cinder type-create backend2
Copy to Clipboard Toggle word wrap

이러한 명령은 xref:envfile의 cinder::config::cinder_config 클래스를 통해 정의된 각 백엔드에 대해 볼륨 유형 backend1 및 backend2를 생성합니다.

마지막으로 각 볼륨 유형을 xref:envfile의 cinder_user_enabled_backends 클래스를 통해 활성화된 백엔드의 volume_backend_name에 매핑합니다. 다음 명령은 볼륨 유형 backend1을 netapp1에 매핑하고 backend2를 netapp2에 매핑합니다.

$ cinder type-key backend1 set volume_backend_name=netapp1
$ cinder type-key backend2 set volume_backend_name=netapp2
Copy to Clipboard Toggle word wrap

이제 각 백엔드를 테스트할 준비가 되었습니다. 시작하려면 backend1 볼륨 유형을 호출하여 netapp1 백엔드에 netapp_volume_1이라는 1GB 볼륨을 생성합니다.

$ cinder create --volume-type backend1 --display_name netappvolume_1 1
Copy to Clipboard Toggle word wrap

마찬가지로 backend2 볼륨 유형을 호출하여 netapp2 백엔드에 유사한 볼륨을 생성합니다.

$ cinder create --volume-type backend2 --display_name netappvolume_2 1
Copy to Clipboard Toggle word wrap

부록 A. 부록

A.1. stack 사용자

Director 설치 사용자 생성 섹션은 독자에게 stack이라는 사용자를 생성하도록 지시합니다. 이 사용자는 Overcloud를 배포하는 데 사용됩니다. stack 계정을 사용하여 백엔드(]) 배포와 같이 승격된 권한이 필요한 명령을 실행하거나 Overcloud 액세스에 필요한 환경 변수 로드(xref:test[ ))를 사용할 수 있습니다.

예를 들어 Director 설치 및 사용의 지침을 팔로우하면 stack 사용자가 이미 존재합니다. 따라서 필요에 따라 사용하는 것이 편리합니다.

A.2. 샘플 환경 파일에서 구성 생성

xref:envfile의 환경 파일은 두 개의 NetApp 백엔드를 사용하도록 Block Storage 서비스를 구성합니다. 다음 스니펫에는 관련 설정이 표시됩니다.

enabled_backends = netapp1,netapp2

[netapp1]
volume_backend_name=netapp_1
volume_driver=cinder.volume.drivers.netapp.common.NetAppDriver
netapp_login=root
netapp_storage_protocol=iscsi
netapp_password=123456
netapp_storage_family=ontap_7mode
netapp_server_port=80
netapp_server_hostname=10.35.64.11

[netapp2]
volume_backend_name=netapp_2
volume_driver=cinder.volume.drivers.netapp.common.NetAppDriver
netapp_login=root
netapp_storage_protocol=iscsi
netapp_password=123456
netapp_storage_family=ontap_7mode
netapp_server_port=80
netapp_server_hostname=10.35.64.11
Copy to Clipboard Toggle word wrap

법적 공지

Copyright © 2025 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2025 Red Hat