3.5. Red Hat Ceph Storage クラスターを使用するためのコントロールプレーン設定
Red Hat Ceph Storage クラスターを使用するには、OpenStackControlPlane CR を設定します。このプロセスには、ネットワーク設定の確認、コントロールプレーンが Red Hat Ceph Storage シークレットを使用するための設定、Image (glance) および Block Storage (cinder) サービスと、必要に応じて Shared File Systems (manila) サービスの設定が含まれます。
この例に、Red Hat Ceph Storage を使用した Block Storage バックアップサービス (cinder-backup) の設定は含まれていません。
手順
NodeNetworkConfigurationPolicy(nncp) カスタムリソースで定義されているストレージインターフェイスをチェックして、Red Hat Ceph Storage クラスターのpublic_networkと同じネットワーク設定になっていることを確認します。これは、Storageネットワーク経由で Red Hat Ceph Storage クラスターにアクセスできるようにするために必要です。Storageネットワークは、Red Hat Ceph Storage クラスターのpublic_networkと同じネットワーク設定にする必要があります。RHOSO が Red Hat Ceph Storage クラスターの
cluster_networkにアクセスする必要はありません。注記ワークロードのパフォーマンスに影響が出ない場合は、外部 Red Hat Ceph Storage クラスター
public_networkに到達するための適切なルートがStorageネットワークに追加されている限り、ルーティングされた (L3) 接続を使用してStorageネットワークを外部 Red Hat Ceph Storage クラスターpublic_networkと分けることができます。OpenStackControlPlaneCR のデフォルトの Image サービスインスタンスでnetworkAttachmentsをチェックして、デフォルトの Image サービスがStorageネットワークにアクセスするように設定されていることを確認します。glance: enabled: true template: databaseInstance: openstack storage: storageRequest: 10G glanceAPIs: default replicas: 3 override: service: internal: metadata: annotations: metallb.universe.tf/address-pool: internalapi metallb.universe.tf/allow-shared-ip: internalapi metallb.universe.tf/loadBalancerIPs: 172.17.0.80 spec: type: LoadBalancer networkAttachments: - storage-
Block Storage サービスが MetalLB を介して
Storageネットワークにアクセスするように設定されていることを確認します。 -
オプション: Shared File Systems サービスが ManilaShare を介して
Storageネットワークにアクセスするように設定されていることを確認します。 -
Compute サービス (nova) が
Storageネットワークにアクセスするように設定されていることを確認します。 -
Red Hat Ceph Storage 設定ファイル
/etc/ceph/ceph.confに、Red Hat Ceph Storage クラスターモニターの IP アドレスが含まれていることを確認します。これらの IP アドレスは、Storageネットワークの IP アドレス範囲内である必要があります。 -
openstack_control_plane.yamlファイルを開き、OpenStackControlPlaneCR を編集します。 extraMountsパラメーターを追加して、Red Hat Ceph Storage シークレットへのアクセスを必要とするサービスを定義します。以下は、この目的で
extraMountsパラメーターを使用する例です。Shared File Systems サービス (manila) を使用している場合、伝播リストにはManilaShareのみを含めます。apiVersion: core.openstack.org/v1beta1 kind: OpenStackControlPlane spec: extraMounts: - name: v1 region: r1 extraVol: - propagation: - CinderVolume - GlanceAPI - ManilaShare extraVolType: Ceph volumes: - name: ceph projected: sources: - secret: name: <ceph-conf-files> mounts: - name: ceph mountPath: "/etc/ceph" readOnly: true-
<ceph-conf-files>を、Red Hat Ceph Storage シークレットの作成 で作成したシークレット CR の名前に置き換えます。
-
Image サービスが Red Hat Ceph Storage クラスターを使用するように設定するために、
glanceテンプレートにcustomServiceConfigパラメーターを追加します。apiVersion: core.openstack.org/v1beta1 kind: OpenStackControlPlane metadata: name: openstack spec: glance: template: customServiceConfig: | [DEFAULT] enabled_backends = <backend_name>:rbd [glance_store] default_backend = <backend_name> [<backend_name>] rbd_store_ceph_conf = /etc/ceph/ceph.conf store_description = "RBD backend" rbd_store_pool = images rbd_store_user = openstack databaseInstance: openstack databaseAccount: glance secret: osp-secret storage: storageRequest: 10G extraMounts: - name: v1 region: r1 extraVol: - propagation: - GlanceAPI extraVolType: Ceph volumes: - name: ceph secret: secretName: ceph-conf-files mounts: - name: ceph mountPath: "/etc/ceph" readOnly: true<backend_name>は、デフォルトのバックエンドの名前に置き換えます。Red Hat Ceph Storage を Image サービスのバックエンドとして使用する場合、デフォルトで
image-conversionが有効になります。詳細は、デプロイメントのプランニング の ストレージと共有ファイルシステムのプランニング を参照してください。
Red Hat Ceph Storage クラスターを使用するように Block Storage サービスを設定するには、
cinderテンプレートにcustomServiceConfigパラメーターを追加します。Block Storage バックアップの使用については、Block Storage バックアップサービスの設定 を参照してください。apiVersion: core.openstack.org/v1beta1 kind: OpenStackControlPlane spec: extraMounts: ... cinder: template: cinderVolumes: ceph: customServiceConfig: | [DEFAULT] enabled_backends=ceph [ceph] volume_backend_name=ceph volume_driver=cinder.volume.drivers.rbd.RBDDriver rbd_ceph_conf=/etc/ceph/ceph.conf rbd_user=openstack rbd_pool=volumes rbd_flatten_volume_from_snapshot=False rbd_secret_uuid=<$FSID>-
<$FSID>は、実際の FSID に置き換えます。FSID をシークレットとみなす必要はありません。詳細は、Red Hat Ceph Storage FSID の取得 を参照してください。
-
オプション:
manilaテンプレートにcustomServiceConfigパラメーターを追加して、Red Hat Ceph Storage クラスターでネイティブ CephFS または CephFS-NFS を使用するように Shared File Systems サービスを設定します。詳細は、Shared File Systems サービス (manila) の設定 を参照してください。次の例では、ネイティブ CephFS を公開します。
apiVersion: core.openstack.org/v1beta1 kind: OpenStackControlPlane spec: extraMounts: ... manila: template: manilaAPI: customServiceConfig: | [DEFAULT] enabled_share_protocols=cephfs manilaShares: share1: customServiceConfig: | [DEFAULT] enabled_share_backends=cephfs [cephfs] driver_handles_share_servers=False share_backend_name=cephfs share_driver=manila.share.drivers.cephfs.driver.CephFSDriver cephfs_conf_path=/etc/ceph/ceph.conf cephfs_auth_id=openstack cephfs_cluster_name=ceph cephfs_volume_mode=0755 cephfs_protocol_helper_type=CEPHFS次の例では、NFS を使用して CephFS を公開します。
apiVersion: core.openstack.org/v1beta1 kind: OpenStackControlPlane spec: extraMounts: ... manila: template: manilaAPI: customServiceConfig: | [DEFAULT] enabled_share_protocols=nfs manilaShares: share1: customServiceConfig: | [DEFAULT] enabled_share_backends=cephfsnfs [cephfsnfs] driver_handles_share_servers=False share_backend_name=cephfsnfs share_driver=manila.share.drivers.cephfs.driver.CephFSDriver cephfs_conf_path=/etc/ceph/ceph.conf cephfs_auth_id=openstack cephfs_cluster_name=ceph cephfs_volume_mode=0755 cephfs_protocol_helper_type=NFS cephfs_nfs_cluster_id=cephfsOpenStackControlPlaneCR に更新を適用します。$ oc apply -f openstack_control_plane.yaml