4.8. ブロックストレージスケジューラーサービスコンポーネントの設定
Block Storage サービス (cinder) には、スケジューラーサービス (cinderScheduler) があり、新しいボリュームを受け取るバックエンドの選択、操作を実行するために必要な空き領域の有無、特定の操作における既存ボリュームの移動先などを決定します。
スケジュールの一貫性とトラブルシューティングの容易さを保つために、cinderScheduler のインスタンスを 1 つだけ使用してください。cinderScheduler は複数のインスタンスで実行できますが、ベストプラクティスはサービスのデフォルトである replicas: 1 です。
手順
-
OpenStackControlPlaneCR ファイルであるopenstack_control_plane.yamlを開きます。 CR ファイルを編集し、サービスダウン検出タイムアウトの設定を追加します。
次の例はこの設定を示しています。
apiVersion: core.openstack.org/v1beta1 kind: OpenStackControlPlane metadata: name: openstack spec: cinder: template: customServiceConfig: | [DEFAULT] report_interval = 20 service_down_time = 120-
report_interval: データベースを通じてハートビートの形式で動作状態を報告する Block Storage サービスコンポーネント間の秒数。デフォルトは10です。 service_down_time: コンポーネントからの最後のハートビート以降の、コンポーネントが非動作状態であるとみなされる最大秒数。デフォルトは60です。注記これらの値は、すべてのコンポーネントに一貫して適用されるように、
cinderSchedulerではなく CR のcinderレベルで設定します。
-
CR ファイルを編集し、統計レポート間隔の設定を追加します。
次の例は、これらの値を
cinderレベルで設定し、すべてのサービスにグローバルに適用する方法を示しています。apiVersion: core.openstack.org/v1beta1 kind: OpenStackControlPlane metadata: name: openstack spec: cinder: template: customServiceConfig: | [DEFAULT] backend_stats_polling_interval = 120 backup_driver_stats_polling_interval = 120-
backend_stats_polling_interval: バックエンドからの使用状況の統計情報をボリュームが要求する間隔 (秒数)。デフォルトは60です。 backup_driver_stats_polling_interval: バックアップサービスからの使用状況の統計情報をボリュームが要求する間隔 (秒数)。デフォルトは60です。次の例は、サービスレベルで設定をカスタマイズするために、
cinderVolumeおよびcinderBackupレベルでこれらの値を設定する方法を示しています。apiVersion: core.openstack.org/v1beta1 kind: OpenStackControlPlane metadata: name: openstack spec: cinder: template: cinderBackup: customServiceConfig: | [DEFAULT] backup_driver_stats_polling_interval = 120 < rest of the config > cinderVolumes: nfs: customServiceConfig: | [DEFAULT] backend_stats_polling_interval = 120注記使用状況の統計情報を生成する場合、一部のバックエンドでは大量のリソースが仕様される可能性があります。これらの値を過剰に低く設定すると、バックエンドのパフォーマンスに影響が及ぶ可能性があります。個々のバックエンドに合わせて、これらの設定を調整する必要がある場合があります。
-
cinderSchedulerサービスをカスタマイズするために必要な追加の設定を行います。cinderSchedulerサービスをカスタマイズするための設定オプションの詳細は、Scheduler サービスのパラメーター を参照してください。- ファイルを保存します。
コントロールプレーンを更新します。
$ oc apply -f openstack_control_plane.yaml -n openstackRHOCP が
OpenStackControlPlaneCR に関連するリソースを作成するまで待機します。次のコマンドを実行して、ステータスを確認します。$ oc get openstackcontrolplane -n openstackステータスが "Setup complete" であれば、
OpenStackControlPlaneリソースが作成されています。ヒントデプロイの進行状況を追跡するには、
getコマンドの末尾に-wオプションを追加します。
4.8.1. Scheduler サービスのパラメーター リンクのコピーリンクがクリップボードにコピーされました!
Scheduler サービスのパラメーターは、Block Storage サービスの cinderScheduler 部分の設定で使用するために提供されています。
| パラメーター | 説明 |
|---|---|
|
|
ロギングレベルの設定を指定します。このパラメーターが |
|
|
ボリュームをスケジュールする最大試行回数を設定します。デフォルトは |
|
|
リクエストで指定されていない場合に、ホストをフィルタリングするために使用するフィルタークラス名を設定します。これはコンマ区切りリストです。デフォルトは |
|
|
ホストの重み付けに使用する重み付けクラス名を設定します。これはコンマ区切りリストです。デフォルトは |
|
|
重み付け後にホストまたはプールを選択するために使用するハンドラーを設定します。値が |
以下は、パラメーターテーブルのフィルタークラス名の説明です。
AvailabilityZoneFilter
- 要求されたボリュームのアベイラビリティーゾーン要件を満たさないバックエンドを除外します。
CapacityFilter
- ボリュームを収容するのに十分な容量のあるバックエンドのみを選択します。
CapabilitiesFilter
- ボリュームで指定した設定に対応可能なバックエンドのみを選択します。
InstanceLocality
- クラスターが、同じノードに対してローカルのボリュームを使用するように設定します。