7.6. OpenStackControlPlane으로 컨트롤 플레인 생성
오버클라우드 컨트롤 플레인에는 오버클라우드 기능을 관리하는 기본 Red Hat OpenStack Platform 서비스가 포함되어 있습니다. 컨트롤 플레인은 일반적으로 3개의 컨트롤러 노드로 구성되며 다른 컨트롤 플레인 기반 구성 가능 역할로 확장할 수 있습니다. 구성 가능 역할을 사용하는 경우 각 서비스는 정확히 3개의 추가 전용 노드에서 실행해야 하며 Pacemaker 쿼럼을 유지하려면 컨트롤 플레인의 총 노드 수가 홀수여야 합니다.
OpenStackControlPlane 사용자 정의 리소스는 컨트롤 플레인 기반 노드를 OpenShift Virtualization 내에서 가상 머신으로 생성합니다.
사전 요구 사항
- OpenShift Container Platform 클러스터가 작동하고 director Operator가 올바르게 설치되었는지 확인합니다.
-
워크스테이션에
oc
명령줄 툴을 설치했는지 확인합니다. - OpenStackNetConfig 리소스를 사용하여 컨트롤 플레인 네트워크 및 추가 격리된 네트워크를 생성합니다.
절차
워크스테이션에
openstack-controller.yaml
이라는 파일을 생성합니다. 컨트롤러 노드의 리소스 사양을 포함합니다. 예를 들어 3개의 컨트롤러 노드로 구성된 컨트롤 플레인 사양은 다음과 같습니다.apiVersion: osp-director.openstack.org/v1beta2 kind: OpenStackControlPlane metadata: name: overcloud namespace: openstack spec: openStackClientNetworks: - ctlplane - internal_api - external openStackClientStorageClass: host-nfs-storageclass passwordSecret: userpassword virtualMachineRoles: Controller: roleName: Controller roleCount: 3 networks: - ctlplane - internal_api - external - tenant - storage - storage_mgmt cores: 12 memory: 64 rootDisk: diskSize: 100 baseImageVolumeName: openstack-base-img # storageClass must support RWX to be able to live migrate VMs storageClass: host-nfs-storageclass storageAccessMode: ReadWriteMany # When using OpenShift Virtualization with OpenShift Container Platform Container Storage, # specify RBD block mode persistent volume claims (PVCs) when creating virtual machine disks. # With virtual machine disks, RBD block mode volumes are more efficient and provide better # performance than Ceph FS or RBD filesystem-mode PVCs. # To specify RBD block mode PVCs, use the 'ocs-storagecluster-ceph-rbd' storage class and # VolumeMode: Block. storageVolumeMode: Filesystem # optional configure additional discs to be attached to the VMs, # need to be configured manually inside the VMs where to be used. additionalDisks: - name: datadisk diskSize: 500 storageClass: host-nfs-storageclass storageAccessMode: ReadWriteMany storageVolumeMode: Filesystem openStackRelease: "16.2"
리소스 사양에 다음 값을 설정합니다.
metadata.name
-
Overcloud 컨트롤 플레인의 이름으로 설정합니다. 즉,
overcloud
입니다. metadata.namespace
-
director Operator 네임스페이스, 즉
openstack
으로 설정합니다. spec
컨트롤 플레인의 구성을 설정합니다. 이 섹션에서 사용할 수 있는 값에 대한 설명은
openstackcontrolplane
CRD의 사용자 정의 리소스 정의에서 사양 스키마를 확인합니다.$ oc describe crd openstackcontrolplane
컨트롤 플레인 사양 구성을 완료하면 파일을 저장합니다.
컨트롤 플레인을 생성합니다.
$ oc create -f openstack-controller.yaml -n openstack
OCP에서 OpenStackControlPlane 리소스와 관련된 리소스를 생성할 때까지 기다립니다.
OpenStackControlPlane 리소스의 일부로 director Operator는 원격 쉘을 통해 액세스하고 RHOSP 명령을 실행할 수 있는 OpenStackClient Pod도 생성합니다.
검증
컨트롤 플레인의 리소스를 확인합니다.
$ oc get openstackcontrolplane/overcloud -n openstack
OpenStackVMSet 리소스를 보고 컨트롤 플레인 가상 머신 세트 생성을 확인합니다.
$ oc get openstackvmsets -n openstack
가상 머신 리소스를 보고 OpenShift Virtualization에서 컨트롤 플레인 가상 머신 생성을 확인합니다.
$ oc get virtualmachines
openstackclient
원격 쉘에 대한 액세스를 테스트합니다.$ oc rsh -n openstack openstackclient