2.2. NFS를 통해 CephFS를 사용하여 OpenStack 설치 및 사용자 지정 network_data 파일
NFS를 통해 CephFS를 설치하려면 다음이 포함됩니다.
- ceph-ansible 패키지 설치.
-
openstack overcloud image prepare명령을 사용하여 오버클라우드 컨테이너 이미지 준비 -
사용자 지정 역할 파일(
roles_data.yaml) 및network_data.yaml파일을 생성합니다. -
사용자 지정 역할 및 환경과 함께
openstack overcloud deploy명령을 사용하여 Ceph, Shared File System 서비스(manila) 및 CephFS 배포. - 격리된 스토리지 NFS 네트워크 구성 및 기본 공유 유형 생성.
예를 들어 OpenStack 환경에서 표준 stack 사용자를 사용합니다.
작업은 OpenStack 설치 또는 환경 업데이트와 함께 수행해야 합니다.
2.2.1. ceph-ansible 패키지 설치 링크 복사링크가 클립보드에 복사되었습니다!
OpenStack director를 사용하려면 컨테이너화된 Ceph를 배포하기 위해 ceph-ansible 패키지를 언더클라우드 노드에 설치해야 합니다.
절차
- 언더클라우드 노드에 로그인합니다.
상승된 권한으로
yum install을 사용하여 ceph-ansible 패키지를 설치합니다.sudo yum install -y ceph-ansible sudo yum list ceph-ansible ... Installed Packages ceph-ansible.noarch 3.1.0-0.1.el7 rhelosp-13.
[stack@undercloud-0 ~]$ sudo yum install -y ceph-ansible [stack@undercloud-0 ~]$ sudo yum list ceph-ansible ... Installed Packages ceph-ansible.noarch 3.1.0-0.1.el7 rhelosp-13.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.2. 오버클라우드 컨테이너 이미지 준비 링크 복사링크가 클립보드에 복사되었습니다!
OpenStack에서 모든 서비스가 컨테이너화되므로 openstack overcloud image prepare 명령을 사용하여 Docker 이미지를 오버클라우드에 대비해야 합니다. 추가 옵션으로 이 명령을 실행하면 ceph 및 manila 서비스의 기본 이미지가 Docker 레지스트리에 추가됩니다. Ceph MDS 및 NFS-Ganesha 서비스는 동일한 Ceph 기본 컨테이너 이미지를 사용합니다.
컨테이너 이미지에 대한 자세한 내용은 Director Installation and Usage Guide 의 추가 서비스용 컨테이너 이미지 를 참조하십시오.
절차
언더클라우드에서
-e를 사용하여openstack overcloud image prepare명령을 실행하여 환경 파일을 포함합니다.openstack overcloud container image prepare \ ... -e /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services-docker/manila.yaml \ ...
$ openstack overcloud container image prepare \ ... -e /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services-docker/manila.yaml \ ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow grep을 사용하여
containers-default-parameters.yaml파일에서 ceph 및 manila 서비스의 기본 이미지를 사용할 수 있는지 확인합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.2.1. 사용자 정의 역할 파일 생성 링크 복사링크가 클립보드에 복사되었습니다!
ControllerStorageNFS 사용자 지정 역할은 격리된 StorageNFS 네트워크를 설정하는 데 사용됩니다. 이 역할은 StorageNFS 네트워크 및 CephNfs 서비스( OS::TripleO::Services:CephNfs로 표시됨)를 추가하는 기본 Controller.yaml 역할 파일과 유사합니다.
openstack overcloud roles generate 명령에 대한 자세한 내용은 Advanced Overcloud Customization Guide 의 Roles 섹션 을 참조하십시오.
절차
openstack overcloud roles generate 명령은 -o 뒤에 지정된 서비스를 포함하여 사용자 지정 roles_data.yaml 파일을 생성합니다. 아래 예제에서 생성된 roles_data.yaml 파일에는 ControllerStorageNfs,Compute, CephStorage의 서비스가 있습니다.
기존 roles_data.yaml 파일이 있는 경우 이를 수정하여 ControllerStorageNfs,Compute, CephStorage 서비스를 구성 파일에 추가합니다. Advanced Overcloud Customization 가이드의 Roles 섹션 을 참조하십시오.
- 언더클라우드 노드에 로그인합니다.
openstack overcloud roles generate명령을 사용하여roles_data.yaml파일을 생성합니다.openstack overcloud roles generate --roles-path /usr/share/openstack-tripleo-heat-templates/roles -o /home/stack/roles_data.yaml ControllerStorageNfs Compute CephStorage
[stack@undercloud ~]$ openstack overcloud roles generate --roles-path /usr/share/openstack-tripleo-heat-templates/roles -o /home/stack/roles_data.yaml ControllerStorageNfs Compute CephStorageCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.3. 업데이트된 환경 배포 링크 복사링크가 클립보드에 복사되었습니다!
환경을 배포할 준비가 되면 NFS-Ganesha를 사용하여 CephFS를 실행하는 데 필요한 사용자 지정 환경 및 역할과 함께 openstack overcloud deploy 명령을 사용합니다. 이러한 환경 및 역할은 아래에 설명되어 있습니다.
오버클라우드 배포 명령에는 다른 필수 옵션 외에 아래 옵션이 있습니다.
| 동작 | 옵션 | 추가 정보 |
|---|---|---|
|
|
| |
|
|
| |
|
이전 섹션의 |
| |
|
|
| Containzerized Red Hat Ceph로 Overcloud 배포 시작 https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/13/html-single/deploying_an_overcloud_with_containerized_red_hat_ceph/#Creating_the_Overcloud |
|
|
| Containzerized Red Hat Ceph로 Overcloud 배포 시작 https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/13/html-single/deploying_an_overcloud_with_containerized_red_hat_ceph/#Creating_the_Overcloud |
| NFS 백엔드를 통해 CephFS를 사용하여 manila 서비스를 배포합니다. director를 통해 NFS-Ganesha를 구성합니다. |
|
아래 예는 NFS-Ganesha, Ceph 클러스터, Ceph MDS 및 isolated StorageNFS 네트워크를 통해 CephFS를 배포하는 옵션을 통합하는 openstack overcloud deploy 명령 을 보여줍니다.
openstack overcloud deploy 명령에 대한 자세한 내용은 Director 설치 및 사용 가이드 의 CLI 툴을 사용하여 Overcloud 생성 섹션을 참조하십시오.
2.2.3.1. StorageNFS 및 network_data_ganesha.yaml 파일 링크 복사링크가 클립보드에 복사되었습니다!
구성 가능 네트워크를 사용하면 사용자 지정 네트워크를 정의하고 모든 역할에 할당할 수 있습니다. 표준 network_data.yaml 파일을 사용하는 대신 network_data_ganesha.yaml 파일을 사용하여 StorageNFS 구성 가능 네트워크를 구성합니다. 이러한 두 역할은 모두 /usr/share/openstack-tripleo-heat-templates 디렉터리에서 사용할 수 있습니다.
network_data_ganesha.yaml 파일에는 격리된 StorageNFS 네트워크를 정의하는 추가 섹션이 포함되어 있습니다. 기본 설정은 대부분의 설치에서 작동하지만 VLAN ID, 서브넷 등 네트워크 설정을 추가하려면 YAML 파일을 계속 편집해야 합니다.
구성 가능 네트워크에 대한 자세한 내용은 Advanced Overcloud Customization Guide 의 Composable Networks 사용 섹션을 참조하십시오.
2.2.3.2. manila-cephfsganesha-config.yaml 링크 복사링크가 클립보드에 복사되었습니다!
CephFS 백엔드를 정의하는 통합 환경 파일은 언더클라우드 노드의 다음 경로에 있습니다.
/usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsganesha-config.yaml
/usr/share/openstack-tripleo-heat-templates/environments/manila-cephfsganesha-config.yaml
manila-cephfsganesha-config.yaml 환경 파일에는 공유 파일 시스템 서비스와 관련된 설정이 포함되어 있습니다. 백엔드 기본 설정은 대부분의 환경에서 작동해야 합니다. 이 예에서는 공유 파일 시스템 서비스를 배포할 때 director에서 사용하는 기본값을 보여줍니다.
parameter_defaults 헤더는 구성의 시작을 나타냅니다. 특히 이 헤더 아래의 설정을 사용하면 resource_registry 에 설정된 기본값을 재정의할 수 있습니다. 여기에는 CephFS 백엔드의 기본값을 설정하는 OS::Tripleo::Services::ManilaBackendCephFs 에서 설정한 값이 포함됩니다.
- 1
ManilaCephFSBackendName은 CephFS 백엔드의 manila 구성 이름을 설정합니다. 이 경우 기본 백엔드 이름은 cephfs 입니다.- 2
ManilaCephFSDriverHandlesShareServers는 공유 서버의 라이프사이클을 제어합니다. false 로 설정하면 드라이버가 라이프사이클을 처리하지 않습니다. 이 옵션이 지원되는 유일한 옵션입니다.- 3
ManilaCephFSAuthId는 director에서 manila 서비스에서 Ceph 클러스터에 액세스할 수 있도록 생성한 Ceph 인증 ID를 정의합니다.- 4
ManilaCephFSEnableSnapshots는스냅샷 활성화를 제어합니다. false 값은 스냅샷이 활성화되지 않음을 나타냅니다. 이 기능은 현재 지원되지 않습니다.
환경 파일에 대한 자세한 내용은 Advanced Overcloud Customization 가이드의 환경 파일 을 참조하십시오.
2.2.4. 배포 후 구성 완료 링크 복사링크가 클립보드에 복사되었습니다!
사용자가 액세스할 수 있도록 하려면 두 개의 배포 후 구성 항목을 완료해야 합니다.
- neutron StorageNFS 네트워크는 격리된 데이터 센터 스토리지 NFS 네트워크에 매핑되어야 하며,
- 기본 공유 유형을 생성해야 합니다.
이러한 단계가 완료되면 테넌트 컴퓨팅 인스턴스에서 NFS 공유를 생성하고, 액세스할 수 있으며 마운트할 수 있습니다.
2.2.4.1. 격리된 네트워크 구성 링크 복사링크가 클립보드에 복사되었습니다!
새 isolated StorageNFS 네트워크를 neutron-shared 공급자 네트워크에 매핑해야 합니다. Compute VM은 이 neutron 네트워크에 연결하여 NFS-Ganesha 게이트웨이에서 제공하는 공유 내보내기 위치에 액세스합니다.
공유 파일 시스템 서비스를 통한 네트워크 보안에 대한 자세한 내용은 보안 및 Hardening 가이드의 공유 파일 시스템 서비스 섹션을 참조하십시오.
절차
openstack network create 명령은 StorageNFS neutron 네트워크의 구성을 정의합니다. 다음 옵션을 사용하여 이 명령을 실행합니다.
- --provider-physical-network 의 경우 tripleo-heat-templates의 NeutronBridgeMappings를 통해 br-isolated 브릿지에 대해 다른 태그를 설정하지 않은 경우 기본값 datacentre 를 사용합니다.
- --provider-segment 값의 경우 Heat 템플릿에서 StorageNFS isolated 네트워크에 설정된 vlan 값을 사용합니다. /usr/share/openstack-tripleo-heat-templates/network_data_ganesha.yaml 이 값은 배포자가 격리된 네트워크 정의를 수정하지 않은 한 70입니다.
- --provider-network-type 의 경우 vlan 값을 사용합니다.
이 명령을 사용하려면 다음을 수행합니다.
언더클라우드 노드에서 다음을 수행합니다.
source ~/overcloudrc
[stack@undercloud ~]$ source ~/overcloudrcCopy to Clipboard Copied! Toggle word wrap Toggle overflow 언더클라우드 노드에서 openstack network create 명령을 실행하여 StorageNFS 네트워크를 생성합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.4.2. 공유 공급자 스토리지 NFS 네트워크 설정 링크 복사링크가 클립보드에 복사되었습니다!
neutron 공유 공급자 네트워크에 해당 StorageNFSSubnet을 생성합니다. 서브넷이 언더클라우드의 storage_nfs_subnet과 동일하지만 이 서브넷의 할당 범위와 해당 언더클라우드 서브넷의 할당 범위가 겹치지 않는지 확인합니다. 이 서브넷은 NFS 공유를 제공하기 위해 전용되므로 게이트웨이가 필요하지 않습니다.
요구 사항
- 할당 풀의 시작 및 종료 IP 범위
- 서브넷 IP 범위
절차
- 오버클라우드 노드에 로그인합니다.
샘플 명령을 사용하여 네트워크를 프로비저닝하고 필요한 경우 값을 업데이트합니다.
-
start=172.16.4.150,end=172.16.4.250IP 값을 네트워크용 IP 값으로 바꿉니다. -
172.16.4.0/24서브넷 범위를 네트워크에 대한 올바른 서브넷 범위로 바꿉니다.
-