6.3. Red Hat Ceph RADOS Block Device (RBD) からの直接イメージダウンロードの設定
Image サービス (glance) がバックエンドとして Red Hat Ceph RADOS Block Device (RBD) を使用し、Compute サービス (nova) がローカルのファイルベースの一時ストレージを使用する場合、Image サービス API を使用せずに RBD イメージリポジトリーから直接イメージをダウンロードするように Compute サービスを設定することができます。これにより、インスタンスのブート時に Compute ノードイメージキャッシュにイメージをダウンロードする時間が短縮されます。これにより、インスタンスの起動時間が短縮されます。
前提条件
- Image サービスのバックエンドが、Red Hat Ceph RADOS Block Device (RBD) である。
- Compute サービスが、イメージキャッシュおよびインスタンスのディスクにローカルのファイルベースの一時ストアを使用している。
-
ocコマンドラインツールがワークステーションにインストールされている。 -
cluster-admin権限を持つユーザーとして、Red Hat OpenStack Services on OpenShift (RHOSO) にログインしている。 -
RBD から直接イメージのダウンロードを設定するノードを定義する
OpenStackDataPlaneNodeSetCR を選択した。OpenStackDataPlaneNodeSetCR 作成の詳細は、Red Hat OpenStack Services on OpenShift のデプロイ ガイドの 事前プロビジョニングされたノードを使用した OpenStackDataPlaneNodeSet CR の作成 を参照してください。
手順
nova-extra-configという名前のConfigMapCR を作成または更新し、[glance] の下のパラメーターの値を設定して、Image サービス RBD バックエンドと、Compute サービスが Image サービス RBD バックエンドへの接続を待機する最大時間 (秒単位) を指定します。apiVersion: v1 kind: ConfigMap metadata: name: nova-extra-config namespace: openstack data: 33-nova-image-rbd.conf: | [glance] enable_rbd_download=True rbd_user=openstack rbd_pool=images rbd_ceph_conf=/etc/ceph/ceph.conf rbd_connect_timeout=5ConfigMapオブジェクトの作成の詳細は、ノード の config map の作成と使用 を参照してください。新しい
OpenStackDataPlaneDeploymentCR を作成し、データプレーンノード上のサービスを設定してデータプレーンをデプロイし、ワークステーション上のcompute_image_rbd_deploy.yamlという名前のファイルに保存します。apiVersion: dataplane.openstack.org/v1beta1 kind: OpenStackDataPlaneDeployment metadata: name: compute-image-rbdcompute_image_rbd_deploy.yamlCR で、デプロイするすべてのOpenStackDataPlaneNodeSetCR を含めるようにnodeSetsを指定します。前提条件として選択した OpenStackDataPlaneNodeSet CR を含めるようにしてください。これは、RBD から直接イメージのダウンロードを設定するノードを定義します。警告ノードセット内のノードのサブセットは再設定できません。そうする必要がある場合は、ノードセットをスケールダウンし、以前に削除したノードから新しいノードセットを作成する必要があります。
警告デプロイメントに複数のノードセットがある場合、ノードセットと
DataPlaneServicesがどのように設定されているかにより、nova-extra-config.yamlConfigMapへの変更が複数のノードセットに直接影響する可能性があります。ノードセットがnova-extra-configConfigMapを使用しているために再設定の影響を受けるかを確認するには、次の手順を実行します。-
ノードセットのサービスリストを確認し、nova を指す
DataPlaneServiceの名前を見つけます。 DataPlaneServiceのedpmServiceTypeフィールドの値がnovaに設定されていることを確認します。DataPlaneServiceのdataSourcesリストにnova-extra-configという名前のconfigMapRefが含まれている場合、このノードセットはこのConfigMapを使用し、その結果このConfigMapに加えた設定変更の影響を受けます。影響を受けるノードセットの一部を再設定しない場合は、これらのノードセットの別のConfigMapを指す新しいDataPlaneServiceを作成し、必要なノードセットでそのカスタムサービスを使用する必要があります。
apiVersion: dataplane.openstack.org/v1beta1 kind: OpenStackDataPlaneDeployment metadata: name: compute-image-rbd spec: nodeSets: - openstack-edpm - compute-image-rbd - ... - <nodeSet_name>-
<nodeSet_name>を、データプレーンデプロイメントに含める OpenStackDataPlaneNodeSet CR の名前に置き換えます。
-
ノードセットのサービスリストを確認し、nova を指す
-
compute_image_rbd_deploy.yamlデプロイメントファイルを保存します。 データプレーンをデプロイします。
$ oc create -f compute_image_rbd_deploy.yamlデータプレーンがデプロイされていることを確認します。
$ oc get openstackdataplanenodeset NAME STATUS MESSAGE compute-image-rbd True Deployedopenstackclientのリモートシェルにアクセスし、デプロイされたコンピュートノードがコントロールプレーンに表示されることを確認します。$ oc rsh -n openstack openstackclient $ openstack hypervisor list