検索

第9章 nova

download PDF

以下の章では、nova サービスの設定オプションを説明します。

9.1. nova.conf

このセクションでは、/etc/nova/nova.conf ファイルのオプションを説明します。

9.1.1. デフォルト

以下の表は、/etc/nova/nova.conf ファイルの [DEFAULT] グループで使用できるオプションの概要をまとめたものです。

.

設定オプション = デフォルト値タイプ説明

allow_resize_to_same_host = False

ブール値

サイズ変更のために、宛先マシンがソースに一致することを許可します。単一ホスト環境でテストする場合に便利です。デフォルトでは、同じホストへのリサイズは許可されません。このオプションを true に設定すると、同じホストが宛先オプションに追加されます。ServerGroupAffinityFilter を許可し、サイズ変更が必要な場合は true に設定します。このオプションの変更を有効にするには、nova-api サービスを再起動する必要があります。

arq_binding_timeout = 300

整数値

アクセラレーター要求 (ARQ) バインドイベントメッセージの受信のタイムアウト。

ARQ バインド解決イベントの受信を待機する秒数。このイベントは、インスタンスのすべての ARQ が正常にバインドされたか、バインドに失敗したことを示します。受信しない場合、インスタンスの起動は例外で中止されます。

backdoor_port = None

文字列値

eventlet バックドアを有効にします。設定可能な値は 0、<port>、および <start>:<end> です。ここで、0 はランダムの tcp ポート番号でリッスンします。<port> は指定されたポート番号でリッスンします (そのポートが使用中の場合にはバックドアを有効にしません)。また、<start>:<end> は、指定されたポート番号の範囲で最も小さい未使用のポート番号でリッスンします。選択したポートは、サービスのログファイルに表示されます。

backdoor_socket = None

文字列値

指定されたパスを接続を受信できる unix ソケットとして使用して、eventlet バックドアを有効にします。このオプションは、backdoor_port と相互に排他的です。したがって、どちらか 1 つだけを指定する必要があります。両方を指定すると、このオプションの存在によってそのオプションの使用が上書きされます。パス {pid} の中は、現在のプロセスの PID で置き換えられます。

block_device_allocate_retries = 60

整数値

サーバー作成時に、ボリュームを "available" に割り当てるまでのチェック回数。

ブロックデバイスマッピングでサーバーを作成する場合、source_type の、image または snapshot のいずれか、および destination_typeボリューム の場合、nova-compute サービスはボリュームを作成し、それをサーバーに割り当てます。ボリュームにアタッチする前に、ステータスが "available" である必要があります。このオプションは、作成されたボリュームが接続される前に、"使用可能" であることを確認する回数を制御します。

操作がタイムアウトした場合、ブロックデバイスマッピング delete_on_termination 値が True の場合、ボリュームが削除されます。

この操作を高速化するには、ブロックストレージサービスにイメージキャッシュを設定することを推奨します。詳細は、https://docs.openstack.org/cinder/latest/admin/blockstorage-image-volume-cache.html を参照してください。

値:

  • 60 (デフォルト)
  • 値が 0 の場合は、1 回試行されます。
  • 任意の値 > 0 の場合、合計試行回数は (値 + 1) です。

関連するオプション:

  • block_device_allocate_retries_interval: チェックの間隔を制御します。

block_device_allocate_retries_interval = 3

整数値

ブロックデバイスの割り当て失敗時の再試行の間隔 (秒単位)。

このオプションを使用すると、ユーザーは連続する再試行の間隔を指定できます。block_device_allocate_retries オプションは、再試行の最大数を指定します。

値:

  • 0: オプションを無効にします。
  • 任意の正の整数 (秒単位) でオプションを有効にします。

関連するオプション:

  • block_device_allocate_retries: 再試行回数を制御します。

cert = self.pem

文字列値

SSL 証明書ファイルへのパス。

関連するオプション:

  • key
  • ssl_only
  • [console] ssl_ciphers
  • [console] ssl_minimum_version

compute_driver = None

文字列値

仮想化を制御するために使用するドライバーを定義します。

値:

  • libvirt.LibvirtDriver
  • fake.FakeDriver
  • ironic.IronicDriver
  • vmwareapi.VMwareVCDriver
  • hyperv.HyperVDriver
  • zvm.ZVMDriver

compute_monitors = []

リスト値

コンピュートメトリックの取得に使用できるモニターのコンマ区切りリスト。nova.compute.monitors.* namespace の setuptools エントリーポイントからエイリアス/名前を使用できます。namespace が指定されていない場合、"cpu." namespace が後方互換性のために想定されます。

注記

namespace ごとに 1 つのモニター (例: cpu) のみをロードできます。

値:

  • 空のリストは機能を無効にします (デフォルト)。
  • CPU を有効にする値の例

    virt ドライバーのバリアントを使用する帯域幅モニター
    compute_monitors = cpu.virt_driver

config_drive_format = iso9660

文字列値

コンフィグドライブの形式。

インスタンスのブート時にアタッチされたメタデータが含まれるコンフィグドライブ形式。

関連するオプション:

  • このオプションは、以下のいずれかのオプションが発生した場合に有効となります。

    1. force_config_drive オプションが true に設定されている
    2. インスタンスを作成する REST API 呼び出しには、コンフィグドライブオプションの enable フラグが含まれます。
    3. インスタンスの作成に使用するイメージにはコンフィグドライブが必要です。これは、そのイメージの img_config_drive プロパティーで定義されます。
  • Hyper-V ハイパーバイザーを実行するコンピュートノードは、コンフィグドライブを CD ドライブとして接続するように設定できます。コンフィグドライブを CD ドライブとして割り当てるには、[hyperv] config_drive_cdrom オプションを true に設定します。

非推奨となったバージョン: 19.0.0

理由: このオプションは、libvirt v1.2.17 で解決された libvirt、#1246201 にバグの回避策として追加されました。その結果、このオプションは不要になったり、便利になったりします。

conn_pool_min_size = 2

整数値

接続有効期限ポリシーのプールサイズ制限

conn_pool_ttl = 1200

整数値

プールのアイドル状態の接続の存続期間 (秒単位)

console_host = <オペレーティングシステムに基づく>

文字列値

このホストのインスタンスへの接続に使用するコンソールプロキシーホスト。これは、コンソールホストの公開されている名前です。

値:

  • 現在のホスト名 (デフォルト) またはホスト名を表す文字列。

control_exchange = nova

文字列値

トピックがスコープ設定されるデフォルトの変換。transport_url オプションで指定した変換名で上書きできます。

cpu_allocation_ratio = None

浮動小数点の値

物理 CPU に対する仮想 CPU の割当て比率。

このオプションは、VCPU インベントリーの割り当て比率を設定して、Placement API が選択したホストに影響を与えるために使用されます。

  1. 注記:

    This option does not affect `PCPU` inventory, which cannot be
    overcommitted.
  2. 注記:

    If this option is set to something *other than* `None` or `0.0`, the
    allocation ratio will be overwritten by the value of this option, otherwise,
    the allocation ratio will not change. Once set to a non-default value, it is
    not possible to "unset" the config to get back to the default behavior. If
    you want to reset back to the initial value, explicitly specify it to the
    value of `initial_cpu_allocation_ratio`.

値:

  • 有効な正の整数または浮動小数点値

関連するオプション:

  • initial_cpu_allocation_ratio

daemon = False

ブール値

バックグラウンドプロセスとして実行します。

debug = False

ブール値

true に設定すると、ログレベルはデフォルトの INFO レベルではなく DEBUG に設定されます。

default_access_ip_network_name = None

文字列値

インスタンスのアクセス IP を設定するために使用されるネットワークの名前。選択する IP が複数ある場合には、任意の IP が選択されます。

値:

  • none (デフォルト)
  • ネットワーク名を表す文字列。

default_availability_zone = nova

文字列値

Compute サービスのデフォルトのアベイラビリティーゾーン。

このオプションは、nova-compute サービスのデフォルトアベイラビリティーゾーンを決定します。

値:

  • 既存のアベイラビリティーゾーン名を表す文字列。

default_ephemeral_format = None

文字列値

ephemeral_volume が作成時にフォーマットされるデフォルトの形式。

値:

  • ext2
  • ext3
  • ext4
  • xfs
  • ntfs (Windows ゲストのみ)

default_log_levels = ['amqp=WARN', 'amqplib=WARN', 'boto=WARN', 'qpid=WARN', 'sqlalchemy=WARN', 'suds=INFO', 'oslo.messaging=INFO', 'oslo_messaging=INFO', 'iso8601=WARN', 'requests.packages.urllib3.connectionpool=WARN', 'urllib3.connectionpool=WARN', 'websocket=WARN', 'requests.packages.urllib3.util.retry=WARN', 'urllib3.util.retry=WARN', 'keystonemiddleware=WARN', 'routes.middleware=WARN', 'stevedore=WARN', 'taskflow=WARN', 'keystoneauth=WARN', 'oslo.cache=INFO', 'oslo_policy=INFO', 'dogpile.core.dogpile=INFO', 'glanceclient=WARN', 'oslo.privsep.daemon=INFO']

リスト値

logger=LEVEL ペアのパッケージロギングレベルのリスト。このオプションは、log_config_append が設定されている場合は無視されます。

default_schedule_zone = None

文字列値

インスタンスのデフォルトのアベイラビリティーゾーン。

このオプションは、インスタンスの作成時にユーザーが指定しなかった場合に使用される、インスタンスのデフォルトのアベイラビリティーゾーンを決定します。インスタンスは、ライフタイム間、このアベイラビリティーゾーンにバインドされます。

値:

  • 既存のアベイラビリティーゾーン名を表す文字列。
  • none: つまり、あるコンピュートノードから別のアベイラビリティーゾーンに移動すると、インスタンスがそのアベイラビリティーゾーンから別のアベイラビリティーゾーンに移動できます。

関連するオプション:

  • [cinder]/cross_az_attach

disk_allocation_ratio = None

浮動小数点の値

物理ディスクに対する仮想ディスクの割当て比率。

このオプションは、DISK_GB インベントリーの割り当て比率を設定して、Placement API で選択したホストに影響を与えるのに使用します。

設定されると、1.0 を超える比率により、利用可能な物理ディスクが過剰にサブスクライブされます。これは、スパースイメージや圧縮イメージなどの仮想ディスク全体を使用しないイメージで作成されたインスタンスの効率的なパックに役立ちます。インスタンス以外の使用のためにディスクのパーセンテージを保持するために、0.0 から 1.0 までの値に設定できます。

  1. 注記:

    If the value is set to `>1`, we recommend keeping track of the free disk
    space, as the value approaching `0` may result in the incorrect
    functioning of instances using it at the moment.
  2. 注記:

    If this option is set to something *other than* `None` or `0.0`, the
    allocation ratio will be overwritten by the value of this option, otherwise,
    the allocation ratio will not change. Once set to a non-default value, it is
    not possible to "unset" the config to get back to the default behavior. If
    you want to reset back to the initial value, explicitly specify it to the
    value of `initial_disk_allocation_ratio`.

値:

  • 有効な正の整数または浮動小数点値

関連するオプション:

  • initial_disk_allocation_ratio

enable_new_services = True

ブール値

このホストで新しい nova-compute サービスを自動的に有効にします。

新しい nova-compute サービスが起動すると、有効なサービスとしてデータベースに登録されます。新しい Compute サービスを無効な状態で登録し、後で有効にすると便利な場合があります。このオプションは、nova-compute サービスに対してのみこの動作を設定します。nova-conductor、nova-scheduler、nova-osapi_compute などの他のサービスは自動的に無効にしません。

値:

  • True: 新しい Compute サービスはそれぞれ、登録するとすぐに有効になります。
  • False: コンピュートサービスは、os-services REST API コールで有効にするか、nova service-enable <hostname> <binary> で CLI で有効にする必要があります。有効にしないと、使用する準備ができていません。

enabled_apis = ['osapi_compute', 'metadata']

リスト値

デフォルトで有効にする API のリスト。

enabled_ssl_apis = []

リスト値

SSL が有効になっている API のリスト。

Nova は API サーバーの SSL サポートを提供します。enabled_ssl_apis オプションでは、SSL サポートを設定できます。

executor_thread_pool_size = 64

整数値

エグゼキューターがスレッディングまたはイベントレットの場合のエグゼキュータースレッドプールのサイズ。

fatal_deprecations = False

ブール値

非推奨の致命的なステータスを有効または無効にします。

flat_injected = False

ブール値

このオプションは、起動する前に、ネットワーク設定情報が仮想マシンに挿入されるかどうかを決定します。元々は nova-network のみが使用するように設計されていましたが、ネットワーク情報が VM に挿入されるかどうかを制御するために vmware virt ドライバーによっても使用されます。libvirt 仮想ドライバーは、config_drive を使用してネットワークを設定し、ネットワーク情報が仮想マシンに挿入されるかどうかを制御する際にもそれを使用します。

force_config_drive = False

ブール値

コンフィグドライブで注入を強制します。

このオプションが true に設定されている場合には、デフォルトで、強制的に有効になります。有効にしないと、ユーザーは REST API またはイメージメタデータ属性を介してコンフィグドライブを有効にできます。起動されたインスタンスはこのオプションの影響を受けません。

値:

  • True: REST API 呼び出しのユーザー入力に関係なく、コンフィグドライブを強制的に使用させます。
  • False: コンフィグドライブを強制的に使用しないでください。コンフィグドライブは、REST API またはイメージメタデータ属性を使用して有効にできます。

関連するオプション:

  • mkisofs_cmd フラグを使用して、genisoimage プログラムをインストールするパスを設定します。genisoimage が nova-compute サービスと同じパスにある場合は、このフラグを設定する必要はありません。
  • Hyper-V でコンフィグドライブを使用するには、mkisofs_cmd の値を mkisofs.exe インストールへの完全パスに設定する必要があります。さらに、hyperv 設定セクションの qemu_img_cmd の値を、qemu-img コマンドインストールへのフルパスに設定する必要があります。

force_raw_images = True

ブール値

バッキングイメージの raw 形式への強制変換。

値:

  • True: バッキングイメージファイルは raw イメージ形式に変換されます。
  • False: バッキングイメージファイルが変換されない

関連するオプション:

  • compute_driver: libvirt ドライバーのみがこのオプションを使用します。
  • [libvirt]/images_type: images_type が rbd の場合には、このオプションを False に設定することはできません。詳細は、バグ https://bugs.launchpad.net/nova/+bug/1816686 を参照してください。

graceful_shutdown_timeout = 60

整数値

サーバーを正常にシャットダウンするまでのタイムアウトを指定します。値をゼロにすると、endless の待機を意味します。

heal_instance_info_cache_interval = 60

整数値

インスタンスネットワーク情報キャッシュの更新の間隔。

各コンピュートノードが、そのすべてのインスタンスのネットワーク情報に対して Neutron をクエリーするタスクを実行してから、その情報で Nova db を更新する秒数。nova は、このオプションが 0 に設定されている場合、キャッシュを更新しません。キャッシュを更新しない場合、メタデータサービスと nova-api エンドポイントがインスタンスに関する間違ったネットワークデータをプロキシー送信します。そのため、このオプションを 0 に設定することは推奨されません。

値:

  • 正の整数 (秒単位)。
  • 任意の値 ⇐0 は同期を無効にします。これは、推奨されません。

host = <based on operating system>

ホストドメインの値

このホストのホスト名、FQDN、または IP アドレス。

以下のように使用します。

  • nova-compute ワーカーの oslo.messaging キュー名
  • この値は、neutron に送信される binding_host に使用します。つまり、neutron エージェントを使用する場合は、ホストに同じ値を指定する必要があります。
  • Cinder ホストのアタッチ情報

AMQP キー内で有効である必要があります。

値:

  • ホスト名、FQDN、または IP アドレスの文字列デフォルトはこのホストのホスト名です。

initial_cpu_allocation_ratio = 4.0

浮動小数点の値

物理 CPU に対する最初の仮想 CPU の比率。

これは、特定の nova-compute サービス用に computes_nodes テーブルレコードを最初に作成した場合にのみ使用されます。

詳細と使用シナリオは、https://docs.openstack.org/nova/latest/admin/configuration/schedulers.html を参照してください。

関連するオプション:

  • cpu_allocation_ratio

initial_disk_allocation_ratio = 1.0

浮動小数点の値

物理ディスクに対する最初の仮想ディスクの比率。

これは、特定の nova-compute サービス用に computes_nodes テーブルレコードを最初に作成した場合にのみ使用されます。

詳細と使用シナリオは、https://docs.openstack.org/nova/latest/admin/configuration/schedulers.html を参照してください。

関連するオプション:

  • disk_allocation_ratio

initial_ram_allocation_ratio = 1.0

浮動小数点の値

物理メモリーに対する初期仮想 RAM の比率。

これは、特定の nova-compute サービス用に computes_nodes テーブルレコードを最初に作成した場合にのみ使用されます。

詳細と使用シナリオは、https://docs.openstack.org/nova/latest/admin/configuration/schedulers.html を参照してください。

関連するオプション:

  • ram_allocation_ratio

injected_network_template = $pybasedir/nova/virt/interfaces.template

文字列値

/etc/network/interfaces テンプレートへのパスです。

/etc/network/interfaces-style ファイルのテンプレートファイルへのパス。これにより、DHCP サーバーがない環境でネットワーク接続を設定する方法が提供されます。

テンプレートは Jinja2 テンプレートエンジンを使用してレンダリングされ、interfaces と呼ばれる最上位のキーを受け取ります。このキーには、インターフェイスごとに 1 つのディクショナリーのリストが含まれます。

詳細は、cloudinit ドキュメントを参照してください。

https://cloudinit.readthedocs.io/en/latest/topics/datasources.html

値:

  • Debian /etc/network/interfaces ファイルの Jinja2 形式のテンプレートへのパス。これは、Debian-derived 以外のゲストを使用している場合でも該当します。

関連するオプション:

  • flat_inject: nova がコンフィグドライブを通じて提供されるメタデータにネットワーク設定情報を埋め込むには、これを True に設定する必要があります。

instance_build_timeout = 0

整数値

インスタンスがビルド可能な最大時間 (秒単位)。

このタイマーの期限が切れると、インスタンスのステータスは ERROR に変わります。このオプションを有効にすると、インスタンスが長期間 BUILD 状態のままにならないようにします。

値:

  • 0: オプションを無効にします (デフォルト)
  • 任意の正の整数 (秒単位) でオプションを有効にします。

instance_delete_interval = 300

整数値

失敗したインスタンスファイルの削除を再試行する間隔。

このオプションは maximum_instance_delete_attempts によって異なります。このオプションは、再試行する頻度を指定します。一方、maximum_instance_delete_attempts は、作成可能な再試行回数の最大値を指定します。

値:

  • 0: デフォルトの間隔で実行されます。
  • 任意の値 < 0: オプションを無効にします。
  • 正の整数 (秒単位)。

関連するオプション:

  • instance_cleaning_opts グループからの maximum_instance_delete_attempts

instance_format = [instance: %(uuid)s]

文字列値

ログメッセージで渡されるインスタンスの形式。

instance_name_template = instance-%08x

文字列値

インスタンス名の生成に使用するテンプレートの文字列。

このテンプレートは、インスタンスのデータベース名の作成を制御します。これは (Horizon または CLI を介して) インスタンスの作成時に入力する表示名では ありません。新しいデプロイメントでは、デフォルト値 (データベースの自動増分を使用する) を、instance-%(uuid)s などのインスタンスの属性を使用する別の値に変更することが推奨されます。これを変更すると、すでにデプロイメントにインスタンスがある場合、デプロイメントは中断します。

値:

  • インスタンスのデータベース ID (デフォルトなど) を使用する文字列
  • 名前付きのデータベース列のリストが含まれる文字列 (例: %(id)d または %(uuid)s または %(hostname)s

instance_usage_audit = False

ブール値

このオプションは、定期的な compute.instance.exists 通知を有効にします。各コンピュートノードは、システムの使用状況データを生成するように設定する必要があります。これらの通知は、OpenStack Telemetry サービスが消費されます。

instance_usage_audit_period = month

文字列値

インスタンスの使用状況を生成する期間。指定期間にオプションのオフセットを定義するには、@ 文字の後にオフセットを定義する数字を追加します。

値:

  • 期間 (例: hourdaymonth、または year)
  • オフセットの期間 (例: month@15 を使用すると、月次監査はその月の 15 日から始まります)。

instance_uuid_format = [instance: %(uuid)s]

文字列値

ログメッセージで渡されるインスタンス UUID の形式。

instances_path = $state_path/instances

文字列値

インスタンスがハイパーバイザーのディスクに保存されるかどうかを指定します。ローカルに割り当てられたストレージまたは NFS のディレクトリーを参照できます。

値:

  • $state_path/instances。state_path は、nova の状態を維持する最上位ディレクトリーを指定する設定オプション (デフォルト) またはディレクトリーパスを表す任意の文字列です。

関連するオプション:

  • [workarounds]/ensure_libvirt_rbd_instance_dir_cleanup

internal_service_availability_zone = internal

文字列値

内部サービスのアベイラビリティーゾーン。

nova-schedulernova-conductor など、各種の内部 nova サービスのアベイラビリティーゾーンを決定します。

値:

  • 既存のアベイラビリティーゾーン名を表す文字列。

key = None

文字列値

SSL キーファイル (証明書とは別の場合)。

関連するオプション:

  • cert

live_migration_retry_count = 30

整数値

live_migration における最大 1 秒の再試行回数。これは、エラーが出たときの iptables への再試行回数を指定します。これは、ユーザーが同じホストにライブマイグレーションの要求を継続的に送信し、iptables に同時要求する場合に発生します。

値:

  • 再試行数を表す正の整数。

log-config-append = None

文字列値

ロギング設定ファイルの名前。このファイルは、既存のロギング設定ファイルに追加されます。ロギング設定ファイルの詳細は、Python のロギングモジュールのドキュメントを参照してください。ロギング設定ファイルを使用すると、すべてのロギング設定が設定ファイルで設定され、その他のロギング設定オプションは無視されます (例:log-date-format)。

log-date-format = %Y-%m-%d %H:%M:%S

文字列値

ログレコードの %%(asctime)s のフォーマット文字列を定義します。デフォルト:%(default)sこのオプションは、log_config_append が設定されている場合は無視されます。

log-dir = None

文字列値

(オプション)log_file の相対パスに使用されるベースディレクトリー。このオプションは、log_config_append が設定されている場合は無視されます。

log-file = None

文字列値

(オプション) ロギング出力を送信するログファイルの名前。デフォルトが設定されていない場合、ロギングは use_stderr で定義されているように stderr に送信されます。このオプションは、log_config_append が設定されている場合は無視されます。

log_options = True

ブール値

サービスの起動時 (DEBUG レベル) に、登録されているすべてのオプションの値をログに記録することを有効または無効にします。

log_rotate_interval = 1

整数値

ログファイルがローテーションされるまでの時間。このオプションは、log_rotation_type が "interval" に設定されていない限り無視されます。

log_rotate_interval_type = days

文字列値

ローテーション間隔の種別。次のローテーションをスケジューリングする際に、最後のファイル変更の時刻 (またはサービスの起動時刻) が使用されます。

log_rotation_type = none

文字列値

ログローテーションの種別。

logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(global_request_id)s %(request_id)s %(user_identity)s] %(instance)s%(message)s

文字列値

コンテキスト付きログメッセージに使用するフォーマット文字列。oslo_log.formatters.ContextFormatter により使用されます。

logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d

文字列値

メッセージのロギングレベルが DEBUG の場合にログメッセージに追加する追加のデータ。oslo_log.formatters.ContextFormatter により使用されます。

logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s

文字列値

コンテキストが定義されていない場合に、ログメッセージに使用するフォーマット文字列。oslo_log.formatters.ContextFormatter により使用されます。

logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s

文字列値

この形式で、例外出力の各行の前に接頭辞が付けられます。oslo_log.formatters.ContextFormatter により使用されます。

logging_user_identity_format = %(user)s %(project)s %(domain)s %(system_scope)s %(user_domain)s %(project_domain)s

文字列値

logging_context_format_string で使用される %(user_identity)s のフォーマット文字列を定義します。oslo_log.formatters.ContextFormatter により使用されます。

long_rpc_timeout = 1800

整数値

このオプションを使用すると、RPC 呼び出しに長い時間がかかる可能性がある別のタイムアウト値を設定できます。これを設定すると、他のサービスへの RPC 呼び出しでは、グローバルな rpc_response_timeout 値ではなく、タイムアウト (秒単位) にこの値が使用されます。

この値を使用する RPC 呼び出しを使用した操作:

  • ライブマイグレーション
  • scheduling
  • コンピュートサービスの有効化/終了
  • イメージの事前キャッシュ
  • スナップショットベース/セル間のサイズ変更
  • サイズ変更/コールドマイグレーション
  • ボリュームの接続

関連するオプション:

  • rpc_response_timeout

max_concurrent_builds = 10

整数値

nova-compute で同時に実行するインスタンスビルドの最大数を制限します。Compute サービスは、インスタンスの構築を無限に試行できます (確認を求められた場合)。この制限は、コンピュートノードに無制限のインスタンスを同時に構築しないように強制されます。この値は、コンピュートノードごとに設定できます。

以下の値を使用できます。

  • 0: 無制限として処理されます。
  • 同時ビルドの最大数を表す正の整数。

max_concurrent_live_migrations = 1

整数値

同時に実行するライブマイグレーションの最大数。この制限は、送信ライブマイグレーションがホスト/ネットワークに圧倒され、障害が発生するのを防ぐために実施されます。お使いの環境で安全に、安定していることが不明な場合を除き、これを変更することは推奨されません。

値:

  • 0: 無制限として処理されます。
  • 同時に実行するライブマイグレーションの最大数を表す正の整数。

max_concurrent_snapshots = 5

整数値

同時に実行するインスタンススナップショット操作の最大数。この制限は、スナップショットがホスト/ネットワーク/ストレージを圧迫して障害を引き起こすのを防ぐために適用されます。この値は、コンピュートノードごとに設定できます。

以下の値を使用できます。

  • 0: 無制限として処理されます。
  • 最大同時スナップショットを表す任意の正の整数。

max_local_block_devices = 3

整数値

ハイパーバイザーノードでローカルイメージが作成されるデバイスの最大数。

負の値は無制限を意味します。max_local_block_devices を 0 に設定すると、ローカルディスクの作成を試行する要求は失敗します。このオプションは、ローカルディスクの数を制限することを目的としています (サーバーの作成時にimageRefが使用された結果であるルートローカルディスク、およびその他のエフェメラルディスクとスワップディスク)。0 は、イメージが自動的にボリュームに変換され、ボリュームからインスタンスを起動することを意味するのではなく、ローカルディスクを作成しようとするすべての要求が失敗することを意味します。

値:

  • 0: ローカルディスクの作成はできません。
  • 負の数: ローカルディスクの数に制限はありません。
  • 正の数: これらの数のローカルディスクのみを許可します。

max_logfile_count = 30

整数値

ローテーションされたログファイルの最大数。

max_logfile_size_mb = 200

整数値

ログファイルの最大サイズ (MB 単位)。"log_rotation_type" が "size" に設定されていない場合は、このオプションは無視されます。

maximum_instance_delete_attempts = 5

整数値

インスタンスのファイルの取得を試行する回数。

このオプションは、実行できる再試行の最大回数を指定します。

値:

  • 正の整数は、試行回数を定義します。

関連するオプション:

  • [DEFAULT] instance_delete_interval を使用して、このオプションを無効にすることができます。

metadata_listen = 0.0.0.0

文字列値

メタデータ API がリッスンする IP アドレス。

メタデータ API サービスは、この IP アドレスで受信要求をリッスンします。

metadata_listen_port = 8775

ポート値

メタデータ API がリッスンするポート。

メタデータ API サービスは、受信要求についてこのポート番号をリッスンします。

metadata_workers = <オペレーティングシステムに基づく>

整数値

メタデータサービスのワーカー数。指定のない場合は、利用可能な CPU の数が使用されます。

メタデータサービスは、マルチプロセス (ワーカー) として実行するように設定することができます。これにより、API リクエストコンカレンシーが増加するとスループットが低下するという問題が解消されます。メタデータサービスは、指定されたプロセス数で実行されます。

以下の値を使用できます。

  • 任意の正の整数
  • none (デフォルト値)

migrate_max_retries = -1

整数値

ライブマイグレーションが失敗する前のライブマイグレーションを再試行する回数。

値:

  • == -1 の場合、ホストから実行するまで試行します (デフォルト)。
  • == 0 の場合、再試行は 1 回のみ試行しません。
  • 0 より大きい整数

mkisofs_cmd = genisoimage

文字列値

ISO イメージの作成に使用するツールの名前またはパス。

mkisofs_cmd フラグを使用して、genisoimage プログラムをインストールするパスを設定します。genisoimage がシステムパスにある場合は、デフォルト値を変更する必要はありません。

Hyper-V でコンフィグドライブを使用するには、mkisofs_cmd の値を mkisofs.exe インストールへの完全パスに設定する必要があります。さらに、hyperv 設定セクションの qemu_img_cmd の値を、qemu-img コマンドインストールへのフルパスに設定する必要があります。

値:

  • ISO イメージ作成者の名前 (nova-compute サービスと同じディレクトリー)
  • ISO イメージ作成者プログラムへのパス

関連するオプション:

  • このオプションは、コンフィグドライブが有効な場合に有効となります。
  • Hyper-V でコンフィグドライブを使用するには、Hyperv 設定セクションの qemu_img_cmd の値を、qemu-img コマンドインストールへの完全パスに設定する必要があります。

my_block_storage_ip = $my_ip

文字列値

ブロックストレージネットワークへの接続に使用される IP アドレス。

値:

  • 有効な IP アドレスを含む文字列。デフォルトは、このホストの IP アドレスです。

関連するオプション:

  • my_ip - my_block_storage_ip が設定されていない場合は、my_ip の値が使用されます。

my_ip = <オペレーティングシステムに基づく>

文字列値

管理ネットワークへの接続にホストが使用する IP アドレス。

値:

  • 有効な IP アドレスを含む文字列。デフォルトは、このホストの IPv4 アドレスです。

関連するオプション:

  • my_block_storage_ip

network_allocate_retries = 0

整数値

ネットワーク割り当てを再試行する回数。仮想インターフェイスプラグインが失敗した場合は、ネットワーク割り当ての再試行を試行する必要があります。

値:

  • 再試行数を表す正の整数。

non_inheritable_image_properties = ['cache_in_nova', 'bittorrent']

リスト値

スナップショットの作成時にインスタンスから継承すべきではないイメージ属性。

このオプションを使用すると、新たに作成したスナップショットにより継承されない image-properties を選択できます。

  1. 注記:

    The following image properties are *never* inherited regardless of
    whether they are listed in this configuration option or not:
    • cinder_encryption_key_id
    • cinder_encryption_key_deletion_policy
    • img_signature
    • img_signature_hash_method
    • img_signature_key_type
    • img_signature_certificate_uuid

値:

  • 項目がイメージ属性のコンマ区切りリスト。ベースイメージから作成されたスナップショットはそれらを必要としないため、通常、ベースイメージでのみ必要なイメージプロパティーのみをここに含めることができます。
  • デフォルトのリスト: cache_in_nova、bittorrent

osapi_compute_listen = 0.0.0.0

文字列値

OpenStack API がリッスンする IP アドレス。

OpenStack API サービスは、この IP アドレスを受信要求をリッスンします。

osapi_compute_listen_port = 8774

ポート値

OpenStack API がリッスンするポートです。

OpenStack API サービスは、受信要求についてこのポート番号をリッスンします。

`osapi_compute_unique_server_name_scope = `

文字列値

一意のインスタンス名のチェックの範囲を設定します。

デフォルトでは、一意の名前がチェックされません。名前チェックのスコープが設定されると、新規インスタンスを起動するか、重複する名前で既存のインスタンスを更新すると 'InstanceExists' エラーが出されます。一意性は大文字と小文字を区別しません。このオプションを設定すると、同じ名前のインスタンス間を ID で区別する必要がないため、エンドユーザーのユーザービリティーが向上します。

osapi_compute_workers = None

整数値

OpenStack API サービスのワーカー数。デフォルトは、利用可能な CPU の数になります。

OpenStack API サービスは、マルチプロセス (ワーカー) として実行するように設定できます。これにより、API リクエストコンカレンシーが増加するとスループットが低下するという問題が解消されます。OpenStack API サービスは、指定されたプロセス数で実行されます。

以下の値を使用できます。

  • 任意の正の整数
  • none (デフォルト値)

password_length = 12

整数値

生成されたインスタンス管理者パスワードの長さ。

periodic_enable = True

ブール値

定期的なタスクを有効にします。

このオプションを true に設定すると、サービスはマネージャーでタスクを定期的に実行することができます。

複数のスケジューラーまたはコンダクターを実行している場合は、1 つのホストでのみ定期的なタスクを実行することができます。この場合、1 台のホストでこのオプションを無効にします。

periodic_fuzzy_delay = 60

整数値

スタンピングを減らすために定期的なタスクスケジューラーを開始するときにランダムに遅延する秒数。

コンピュートワーカーがクラスター全体でプロビジョニング解除された状態で再起動すると、すべて定期的なタスクが同時に実行され、外部サービスで問題が発生します。この動作を軽減するために、periodic_fuzzy_delay オプションを使用すると、定期的なタスクスケジューラーの開始時にランダムな初期遅延が発生する可能性があります。

以下の値を使用できます。

  • 正の整数 (秒単位):
  • 0: ランダムな遅延を無効にします。

pointer_model = usbtablet

文字列値

ポインターの種類を指定する一般的なプロパティー。

入力デバイスを使用すると、グラフィカルフレームバッファーとの対話が可能になります。たとえば、カーソル移動のグラフィックタブレットを指定します。

設定されている場合、hw_input_bus または hw_pointer_model イメージメタデータプロパティーのいずれかがこの設定オプションよりも優先されます。

関連するオプション:

  • usbtablet は、VNC が有効または SPICE を有効にし、SPICE エージェントを無効にして設定する必要があります。libvirt で使用する場合は、インスタンスモードを HVM として設定する必要があります。

preallocate_images = none

文字列値

使用するイメージ事前割り当てモード。

イメージの事前割り当てにより、インスタンスの初回プロビジョニング時に、インスタンスイメージのストレージを事前に割り当てることができます。これにより、十分なスペースが利用できない場合に、即時のフィードバックが提供されます。さらに、新しいブロックへの書き込みのパフォーマンスが大幅に向上するはずです。また、断片化が減少するため、事前に書き込まれたブロックへの I/O パフォーマンスも向上する可能性があります。

publish_errors = False

ブール値

エラーイベントの公開を有効または無効にします。

pybasedir = /usr/lib/python3.9/site-packages

文字列値

Nova python モジュールがインストールされているディレクトリー。

このディレクトリーは、ネットワークおよびリモートコンソールアクセス用のテンプレートファイルを保存するために使用されます。また、Nova 内部データの永続化が必要な他の設定オプションのデフォルトパスでもあります。このオプションをデフォルト値から変更する必要がある可能性はあまりありません。

値:

  • ディレクトリーへの完全パス。

関連するオプション:

  • state_path

ram_allocation_ratio = None

浮動小数点の値

物理メモリーに対する仮想メモリーの割当て比率。

このオプションは、MEMORY_MB インベントリーの割り当て比率を設定して、Placement API で選択したホストに影響を与えるのに使用します。

  1. 注記:

    If this option is set to something *other than* `None` or `0.0`, the
    allocation ratio will be overwritten by the value of this option, otherwise,
    the allocation ratio will not change. Once set to a non-default value, it is
    not possible to "unset" the config to get back to the default behavior. If
    you want to reset back to the initial value, explicitly specify it to the
    value of `initial_ram_allocation_ratio`.

値:

  • 有効な正の整数または浮動小数点値

関連するオプション:

  • initial_ram_allocation_ratio

rate_limit_burst = 0

整数値

rate_limit_interval ごとのログ記録されたメッセージの最大数。

rate_limit_except_level = CRITICAL

文字列値

レート制限で使用されるログレベル名:CRITICAL、ERROR、INFO、WARNING、DEBUG または空の文字列。rate_limit_except_level 以上のレベルのログはフィルターされません。空の文字列は、すべてのレベルがフィルターされることを意味します。

rate_limit_interval = 0

整数値

ログのレート制限の間隔 (秒数)。

reboot_timeout = 0

整数値

インスタンスが自動的にハードリブートされる間隔。

ソフトリブートを行うと、ソフトリブートタスクが終了しないように、ゲストカーネルが完全にハングしている可能性があります。このオプションを秒単位の時間に設定すると、インスタンスが N 秒より長く再起動状態でスタックしている場合、インスタンスは自動的にハードリブートされます。

値:

  • 0: オプションを無効にします (デフォルト)。
  • 任意の正の整数 (秒単位) でオプションを有効にします。

reclaim_instance_interval = 0

整数値

削除されたインスタンスを回収する間隔。

0 より大きい値を指定すると、インスタンスの SOFT_DELETE が有効になります。このオプションは、削除するサーバーが SOFT_DELETED 状態に配置されるかどうかを決定します。この値が 0 より大きい場合、削除されたサーバーはすぐには削除されず、代わりに、古くなるまで (削除された時間が reclaim_instance_interval の値よりも大きい) キューに入れられます。サーバーは、復元アクションを使用して削除キューから回復できます。削除されたサーバーが reclaim_instance_interval の値よりも長い場合は、Compute サービスの定期的なタスクによって自動的に削除されます。

このオプションは API と compute ノードの両方から読み取られ、グローバルに設定する必要があります。設定しないと、サーバーは API でソフト削除された状態になり、compute ノードで実際に回収 (削除) されることがありません。

  1. 注記: このオプションを使用する場合は、[cinder] 認証オプション (auth_typeauth_urlusername など) も設定する必要があります。再利用は定期的なタスクで発生するため、SOFT_DELETED サーバーに接続されたボリュームをクリーンアップするためのユーザートークンがないため、nova は cinder でこれらのリソースをクリーンアップするための管理者ロールアクセスで設定する必要があります。

値:

  • 0 より大きい正の整数 (秒単位) は、このオプションを有効にします。
  • 任意の値 ⇐0 は、オプションを無効にします。

関連するオプション:

  • [cinder] 再利用プロセス中にサーバーに接続されたボリュームをクリーンアップするための認証オプション

record = None

文字列値

このホストで実行されているプロキシーサービス (VNC、スパイス、シリアルなど) によって送受信される WebSocket フレームを保存するために使用されるファイル名。これが設定されていない場合、録画は行われません。

reimage_timeout_per_gb = 20

整数値

ボリュームの再イメージ化のタイムアウト。

ボリューム再イメージ化イベントを受信するまで待機する秒数。この時間内にイベントを受信しない場合、処理は続行または失敗します。

これはギガバイトあたりの時間です。デフォルト値は 20 秒で、この値にイメージの GB サイズを乗算します。たとえば、6 GB のイメージの場合、タイムアウトは 20 × 6 = 120 秒になります。GB あたりのイメージコピーに時間がかかり、タイムアウトエラーが発生する場合は、タイムアウトを増やしてみてください。

report_interval = 10

整数値

特定のハイパーバイザーのサービスの状態が報告される頻度を示す秒数。Nova は、デプロイメントの全体的な健全性を判断するためにこれを把握しておく必要があります。

関連するオプション:

  • service_down_time report_interval は service_down_time 未満である必要があります。service_down_time が report_interval 未満の場合、サービスはほとんど報告されないため、通常はダウンしていると見なされます。

rescue_timeout = 0

整数値

インスタンスが RESCUE のままになるまで待機する間隔。

値:

  • 0: オプションを無効にします (デフォルト)
  • 任意の正の整数 (秒単位) でオプションを有効にします。

reserved_host_cpus = 0

整数値

ホストのプロセス用に確保するホスト CPU の数。

ホストリソースの使用量は、compute ノードで実行されている nova-compute から継続的にスケジューラーに報告されます。この値は、配置に報告される reserved 値を決定するために使用されます。

[compute] cpu_shared_set または [compute] cpu_dedicated_set 設定オプションが定義されている場合は、このオプションは設定できません。これらのオプションが定義されると、これらの値に含まれていないホスト CPU はホスト用に予約済みとみなされます。

値:

  • ホスト用に確保する物理 CPU の数を表す正の整数。

関連するオプション:

  • [compute] cpu_shared_set
  • [compute] cpu_dedicated_set

reserved_host_disk_mb = 0

整数値

ホストで常に利用できるようにするディスクリソースの容量 (MB 単位)。ディスク使用量は、compute ノードで実行されている nova-compute からスケジューラーに再び報告されます。ディスクリソースが available と見なされないようにするには、このオプションを使用して、そのホストのディスク領域を確保できます。

値:

  • ホスト用に予約するディスクの量を MB 単位で表す正の整数。

reserved_host_memory_mb = 512

整数値

ホストプロセスが常に使用できるようにホスト用に予約するメモリーの量 (MB 単位)。ホストリソースの使用量は、compute ノードで実行されている nova-compute から継続的にスケジューラーに報告されます。ホストメモリーが使用可能であると見なされないようにするために、このオプションはホスト用にメモリーを予約するために使用されます。

値:

  • ホスト用に予約するメモリーの量を MB 単位で表す正の整数。

reserved_huge_pages = None

dict 値

NUMA ホストセルごとに予約するヒュージページ数/大きいメモリーページ数。

値:

  • NUMA ノード ID、ページサイズを反映する有効な key=value のリスト

    (デフォルトの単位は KiB) と予約するページ数以下に例を示します。

    reserved_huge_pages = node:0,size:2048,count:64 reserved_huge_pages = node:1,size:1GB,count:1

    In this example we are reserving on NUMA node 0 64 pages of 2MiB
    and on NUMA node 1 1 page of 1GiB.

resize_confirm_window = 0

整数値

N 秒後にサイズを自動的に確認します。

機能のサイズを変更すると、サイズ変更前に既存のサーバーが追加されます。サイズ変更が完了すると、ユーザーがサイズ変更を確認するよう要求されます。ユーザーは、すべての変更を確認するか、元に戻すことができます。サイズ変更によって元のサーバーが削除され、サーバーのステータスがサイズ変更からアクティブに変更されていることを確認します。このオプションを期間 (秒単位) に設定すると、サーバーがその時間より長くサイズ変更された状態にある場合は、サイズ変更が自動的に確認されます。

値:

  • 0: オプションを無効にします (デフォルト)
  • 任意の正の整数 (秒単位) でオプションを有効にします。

resize_fs_using_block_device = False

ブール値

ブロックデバイスでファイルシステムのサイズ変更を有効にします。

有効にすると、ブロックデバイスでイメージにアクセスして、ファイルシステムのサイズ変更を試行します。これはホストによって行われ、イメージに cloud-init のバージョンが含まれる場合は不要です。考えられるメカニズムには、nbd ドライバー (qcow および raw の場合) またはループ (raw の場合) が必要です。

resume_guests_state_on_host_boot = False

ブール値

このオプションは、ホストの再起動前に実行されていたゲストを起動するかどうかを指定します。これにより、Nova コンピュートノードのすべてのインスタンスが、compute ノードがブートまたは再起動されるたびに状態を再開します。

rootwrap_config = /etc/nova/rootwrap.conf

文字列値

rootwrap 設定ファイルへのパス。

root ラッパーの目的は、サービス固有の非特権ユーザーが可能な限り多くのアクションを root ユーザーとして実行することを許可することです。ここで使用される設定ファイルは、sudoers エントリーで定義される設定ファイルと一致する必要があります。

rpc_conn_pool_size = 30

整数値

RPC 接続プールのサイズ。

rpc_ping_enabled = False

ブール値

ping 呼び出しに応答するエンドポイントを追加します。エンドポイントの名前は oslo_rpc_server_ping です。

rpc_response_timeout = 60

整数値

呼び出しからの応答を待つ秒数。

run_external_periodic_tasks = True

ブール値

一部の定期的なタスクは個別のプロセスで実行できます。ここで実行すべきですか ?

running_deleted_instance_action = reap

文字列値

Compute サービスは、データベースで削除されたインスタンスを定期的にチェックし、compute ノードで実行を続けます。上記のオプションを使用すると、このようなインスタンスが特定されたときにアクションを実行できます。

関連するオプション:

  • running_deleted_instance_poll_interval
  • running_deleted_instance_timeout

running_deleted_instance_poll_interval = 1800

整数値

クリーンアップ操作の実行間隔 (秒単位)。0 に設定すると、上記のチェックは無効になります。"running_deleted_instance _action" が "log" または "reap" に設定されている場合、0 を超える値を設定する必要があります。

値:

  • 任意の正の整数 (秒単位) でオプションを有効にします。
  • 0: オプションを無効にします。
  • 1800: デフォルト値。

関連するオプション:

  • running_deleted_instance_action

running_deleted_instance_timeout = 0

整数値

データベースで削除済みとしてマークされたインスタンスがクリーンアップの対象になるまで待機する時間間隔 (秒単位)。

値:

  • 秒単位の任意の正の整数 (デフォルトは 0)。

関連するオプション:

  • "running_deleted_instance_action"

scheduler_instance_sync_interval = 120

整数値

インスタンスのビューが nova と同期していることを確認するために、スケジューラーに現在のインスタンス UUID のリストを送信する間隔。

CONF オプション scheduler_tracks_instance_changes が False の場合は、同期呼び出しは行われません。そのため、このオプションを変更しても効果はありません。

同期が不足する状況が非常に一般的でない場合は、この間隔を増やして送信する RPC メッセージの数を減らします。同様に、同期の問題が問題になる場合は、間隔を低くしてより頻繁にチェックできます。

値:

  • 0: デフォルトの間隔で実行されます。
  • 任意の値 < 0: オプションを無効にします。
  • 正の整数 (秒単位)。

関連するオプション:

  • このオプションは、scheduler_tracks_instance_changes が False に設定されている場合には影響はありません。

service_down_time = 60

整数値

起動しているサービスの前回のチェックインからの最大時間 (秒単位)

各コンピュートノードは、指定されたレポート間隔に基づいてデータベースのステータスを定期的に更新します。コンピュートノードが service_down_time を超えるステータスを更新しない場合、コンピュートノードは down と見なされます。

関連するオプション:

  • report_interval (service_down_time は report_interval より小さくすることはできません)

servicegroup_driver = db

文字列値

このオプションは、servicegroup サービスに使用するドライバーを指定します。

nova の ServiceGroup API により、コンピュートノードのステータスの確認が可能になります。nova-compute デーモンを実行するコンピュートワーカーが起動すると、このデーモンは join API を呼び出してコンピュートグループに参加します。nova スケジューラーなどのサービスは、ServiceGroup API に対してクエリーを実行して、ノードが有効かどうかをチェックすることができます。ServiceGroup クライアントドライバーは、内部的にコンピュートワーカーのステータスを自動的に更新します。このサービスには複数のバックエンド実装があります: Database ServiceGroup ドライバーと Memcache ServiceGroup ドライバー。

関連するオプション:

  • service_down_time(アップサービスの最後のチェックインからの最大時間)

shelved_offload_time = 0

整数値

退避するインスタンスがホストから削除されるまでの時間。

デフォルトでは、このオプションは 0 に設定され、退避操作直後にハイパーバイザーから退避したインスタンスが削除されます。そうでない場合には、インスタンスは shelved_offload_time (秒単位) の値のために保持されるため、unshelve アクションが高速になると、定期的なタスクは、sheed_offload_time に合格した後にハイパーバイザーからインスタンスを削除します。

値:

  • 0: インスタンスは、退避直後にオフロードされます。
  • 任意の値 < 0: インスタンスはオフロードされません。
  • 秒単位の整数: インスタンスは、オフロードされるまでの指定の秒数に存在します。

shelved_poll_interval = 3600

整数値

退避したインスタンスをオフロードする間隔。

定期的なタスクは、selloed_poll_interval 毎の秒数で実行され、退避されたインスタンスがないかどうかを確認します。shelved_offload_time の設定値に基づいて、退避したインスタンスが見つかると、退避したインスタンスをオフロードします。詳細は、shelved_offload_time 設定オプションの説明を確認してください。

値:

  • 任意の値 ⇐ 0: オプションを無効にします。
  • 正の整数 (秒単位)。

関連するオプション:

  • shelved_offload_time

shutdown_timeout = 60

整数値

インスタンスがクリーンシャットダウンを実行するまで待機する合計時間 (秒単位)。

これは、VM がクリーンシャットダウンを実行できる全体の期間 (秒単位) を決定します。停止、レスキュー、シェルフ、再構築の操作を実行しているときに、このオプションを設定すると、インスタンスの電源がオフになる前に、VM が制御されたシャットダウンを実行できるようになります。デフォルトのタイムアウトは 60 秒です。値 0 (ゼロ) は、ゲスト OS のクリーンアップの機会がなく、ゲストの電源がすぐにオフになることを意味します。

このタイムアウト値は、os_shutdown_timeout でイメージごとに上書きすることが可能です。これは、異なるタイプのオペレーティングシステムでクリーンにシャットダウンするために必要な時間を指定するイメージのメタデータ設定です。

値:

  • 正の整数または 0 (デフォルト値は 60)。

source_is_ipv6 = False

ブール値

ソースホストが IPv6 でアドレス指定されている場合は、True に設定します。

ssl_only = False

ブール値

暗号化されていない接続を許可しない。

関連するオプション:

  • cert
  • key

state_path = $pybasedir

文字列値

Nova の状態を維持する最上位のディレクトリー。

このディレクトリーは、Nova の内部状態を保存するために使用されます。これは、これから派生するさまざまな設定オプションによって使用されます。一部のシナリオでは (移行など)、複数のコンピュートホスト間で共有されるストレージの場所を使用する方が適切です (例: NFS を使用)。instances_path オプションが上書きされない限り、このディレクトリーのサイズが非常に大きくなる可能性があります。

値:

  • ディレクトリーへの完全パス。デフォルトは、pybasedir で提供される値に設定されます。

sync_power_state_interval = 600

整数値

データベースとハイパーバイザー間で電源の状態を同期する間隔。

Nova が実際の仮想マシンの電源状態を確認し、Nova がデータベースにある電源状態をチェックする間隔。ユーザーが仮想マシンの電源を切ると、Nova は API を更新して、仮想マシンの電源が切れています。仮想マシンを予期せずに有効にすると、Nova は仮想マシンをオフにして、システムを想定した状態に維持します。

値:

  • 0: デフォルトの間隔で実行されます。
  • 任意の値 < 0: オプションを無効にします。
  • 正の整数 (秒単位)。

関連するオプション:

  • workaround グループの handle_virt_lifecycle_events が false で、このオプションが負の場合、ハイパーバイザーと Nova データベースの間で同期がとれていないインスタンスを手動で同期する必要があります。

sync_power_state_pool_size = 1000

整数値

電源の状態の同期に使用できる greenthreads の数。

このオプションを使用すると、たとえば Ironic を使用するなど、パフォーマンス上の理由から、ハイパーバイザーや実際のインスタンスの電源が入っている、同時リクエストの数を減らすことができます。

値:

  • greenthreads 数を表す正の整数。

syslog-log-facility = LOG_USER

文字列値

ログ行を受け取る syslog ファシリティー。このオプションは、log_config_append が設定されている場合は無視されます。

tempdir = None

文字列値

一時作業ディレクトリーを明示的に指定します。

timeout_nbd = 10

整数値

NBD デバイスの起動を待機する時間 (秒単位)。

transport_url = rabbit://

文字列値

メッセージングバックエンドに接続するためのネットワークアドレスおよびオプションのユーザー認証情報 (URL 形式)。想定される形式は次のとおりです。

driver://[user:pass@]host:port[,[userN:passN@]hostN:portN]/virtual_host?query

例:rabbit://rabbitmq:password@127.0.0.1:5672//

URL のフィールドの詳細は、https://docs.openstack.org/oslo.messaging/latest/reference/transport.html で oslo_messaging.TransportURL のドキュメントを参照してください。

update_resources_interval = 0

整数値

コンピュートリソースを更新する間隔。

このオプションは、update_available_resource 定期タスクを実行する頻度を指定します。0 未満の数字は、タスクを完全に無効にすることを意味します。これをデフォルトの 0 のままにすると、これはデフォルトの周期間隔で実行されます。正の値に設定すると、約秒数で実行されます。

値:

  • 0: デフォルトの間隔で実行されます。
  • 任意の値 < 0: オプションを無効にします。
  • 正の整数 (秒単位)。

use-journal = False

ブール値

ロギング用の journald を有効にします。systemd 環境で実行している場合は、ジャーナルサポートを有効にしたい場合があります。その場合、ログメッセージに加えて構造化されたメタデータが含まれる journal ネイティブプロトコルが使用されます。このオプションは、log_config_append が設定されている場合は無視されます。

use-json = False

ブール値

ロギングに JSON 形式を使用します。このオプションは、log_config_append が設定されている場合は無視されます。

use-syslog = False

ブール値

ロギングに syslog を使用します。既存の syslog 形式は非推奨であり、後に RFC5424 に従うように変更されます。このオプションは、log_config_append が設定されている場合は無視されます。

use_cow_images = True

ブール値

コピーオンライト (cow) イメージの使用を有効にします。

QEMU/KVM では、qcow2 をバッキングファイルとして使用できます。これを無効にすると、バッキングファイルは使用されません。

use_eventlog = False

ブール値

出力を Windows イベントログに記録します。

use_rootwrap_daemon = False

ブール値

root 権限で実行する必要があるコマンドを実行できるデーモンを開始して使用します。このオプションは、通常 Nova Compute プロセスを実行するノードで有効化されます。

use_stderr = False

ブール値

出力を標準エラーに記録します。このオプションは、log_config_append が設定されている場合は無視されます。

vcpu_pin_set = None

文字列値

VCPU リソースに使用可能なホスト CPU のマスク。

このオプションの動作は、[compute] cpu_dedicated_set オプションの定義に依存し、[compute]cpu_shared_set オプションの動作に影響します。

  • [compute] cpu_dedicated_set が定義されている場合、このオプションを定義するとエラーが発生します。
  • [compute] cpu_dedicated_set が定義されていない場合には、このオプションを使用して、VCPU リソースのインベントリーを決定し、ピニングされたインスタンスとピニングされていないインスタンスの両方をスケジューリングできるホスト CPU を制限し、[compute] cpu_shared_set オプションを上書きします。

値:

  • 仮想 CPU の割り当て元となる物理 CPU 番号のコンマ区切りリスト。各要素は、単一の CPU 番号、CPU 番号の範囲、またはその順で、次に除外される CPU 番号のいずれかでなければなりません。

    以前の範囲。以下に例を示します。
    vcpu_pin_set = "4-12,^8,15"

関連するオプション:

  • [compute] cpu_dedicated_set
  • [compute] cpu_shared_set

非推奨となったバージョン: 20.0.0

理由:このオプションは、[compute]cpu_dedicated_set および [compute]cpu_shared_set オプションに置き換えられました。これらのオプションを使用すると、同じホスト上で固定されたインスタンスと固定されていないインスタンスを共存させることができます (libvirt ドライバーの場合)。

vif_plugging_is_fatal = True

ブール値

VIF プラグインのタイムアウトでインスタンスをブートまたは失敗させるかどうかを決定します。

インスタンスがスケジュールされると、Nova はポート更新を Neutron に送信し、ポートの設定を完了するのに必要な情報を提供します。完了すると、Neutron は Nova にポートの設定が完了したことを通知します。この場合、Nova はネットワーク接続が存在するはずですので、インスタンスのブートを再開します。応答が指定の間隔の後に受信されない場合、タイムアウトが発生します。

このオプションは、VIF プラグインのタイムアウトイベントの発生時に Nova が何を行うかを決定します。有効にすると、インスタンスがエラーになります。無効にすると、インスタンスはポートが準備状態にあると仮定してブートを継続します。

値:

  • True: VIF プラグインのタイムアウト後にインスタンスが失敗する
  • False: VIF プラグインのタイムアウト後もインスタンスの起動を継続する

vif_plugging_timeout = 300

整数値

Neutron VIF プラグインイベントメッセージのタイムアウト。

Neutron vif プラグイベントが到着するのを待ってから続行または失敗するまでの秒数 (vif_plugging_is_fatal を参照)。

大規模なタイムアウトエラーが発生している場合は、[agent]/root_helper_daemonneutron 設定オプションを使用して neutron エージェントで "デーモンモード" で rootwrap を実行することを検討してください。

関連するオプション:

  • vif_plugging_is_fatal: vif_plugging_timeout がゼロに設定され、vif_plugging_is_fatal が False に設定されている場合、イベントは全く到達できないことが予想されます。

virt_mkfs = []

多値

一時デバイス用の mkfs コマンドの名前。

形式は <os_type>=<mkfs command> です。

volume_usage_poll_interval = 0

整数値

ボリュームの使用状況を収集する間隔。

このオプションは、volume_usage_poll_interval ごとのボリューム使用状況のキャッシュを秒単位で更新します。

値:

  • 0 より大きい正の整数 (秒単位) は、このオプションを有効にします。
  • 任意の値 ⇐0 は、オプションを無効にします。

watch-log-file = False

ブール値

ファイルシステムを監視するように設計されたログハンドラーを使用します。ログファイルが移動または削除されると、このハンドラーは、指定されたパスで新しいログファイルを即時に開きます。これは、log_file オプションを指定し、Linux プラットフォームが使用される場合にのみ有効です。このオプションは、log_config_append が設定されている場合は無視されます。

web = /usr/share/spice-html5

文字列値

Web サーバーによって提供されるコンテンツを含むディレクトリーへのパス。

9.1.2. api

以下の表は、/etc/nova/nova.conf ファイルの [api] グループで使用できるオプションの概要をまとめたものです。

表9.1 api
設定オプション = デフォルト値タイプ説明

auth_strategy = keystone

文字列値

認証に使用するストラテジーを決定します。

非推奨: 21.0.0

理由: 唯一のデフォルト以外の選択肢である ``noauth2`` は、内部開発およびテストのみを目的としており、デプロイメントでは使用しないでください。このオプションとそのミドルウェアである NoAuthMiddleware[V2_18] は、将来のリリースで削除される予定です。

compute_link_prefix = None

文字列値

この文字列は、OpenStack Compute API へのリンクで返される通常の URL の前に付けられます。空の場合 (デフォルト)、URL は変更せずに返されます。

値:

  • 空の文字列 (デフォルト) を含む文字列。

config_drive_skip_versions = 1.0 2007-01-19 2007-03-01 2007-08-29 2007-10-10 2007-12-15 2008-02-01 2008-09-01

文字列値

コンフィグドライブの既存のメタデータを収集する際に、このオプションに表示されないすべてのバージョンで EC2 形式のメタデータが返されます。2.4.0 リリース時点では、利用可能なバージョンは以下のとおりです。

  • 1.0
  • 2007-01-19
  • 2007-03-01
  • 2007-08-29
  • 2007-10-10
  • 2007-12-15
  • 2008-02-01
  • 2008-09-01
  • 2009-04-04

オプションは 1 つの文字列の形式であり、各バージョンはスペースで区切られます。

値:

  • 空白で区切られた 0 個以上のバージョンを表す文字列。

dhcp_domain = novalocal

文字列値

インスタンスの FQDN の設定に使用するドメイン名。

インスタンスのホスト名の完全修飾ドメイン名を設定します。この値は、データベースのインスタンスのホスト名の末尾に付加され、メタデータ API に表示されるホスト名を構築します。この動作を (たとえば、マイクロバージョンの 2.94 FQDN ホスト名を正しくサポートするために) 無効にするには、空の文字列を設定します。

値:

  • 有効なドメイン名である文字列。

enable_instance_password = True

ブール値

作成、再構築、退避、またはレスキューなどの関連するサーバー API 呼び出しによるインスタンスのパスワードの返送を有効にします。ハイパーバイザーがパスワードの注入に対応していない場合、返されるパスワードは正しくありません。そのため、ハイパーバイザーがパスワードの注入をサポートしていない場合は、これを False に設定します。

glance_link_prefix = None

文字列値

この文字列は、Glance リソースへのリンクで返される通常の URL の前に付けられます。空の場合 (デフォルト)、URL は変更せずに返されます。

値:

  • 空の文字列 (デフォルト) を含む文字列。

instance_list_cells_batch_fixed_size = 100

整数値

これは、instance_list_cells_batch_strategy'fixed に設定されている場合、各セルデータベースから要求されるインスタンスのバッチサイズを制御します。この必須値は、システムのセルの数や他の要素に関係なく、インスタンスのバッチが要求されるたびに各セルに発行される制限を定義します。instance_list_cells_batch_strategy のドキュメントで呼び出される一般的なロジックによると、この最小値はバッチごとに 100 レコードになります。

関連するオプション:

  • instance_list_cells_batch_strategy
  • max_limit

instance_list_cells_batch_strategy = distributed

文字列値

これは、大規模なインスタンスリスト操作中の、小規模なバッチで API がセルのデータベースをクエリーする方法を制御します。バッチ処理が実行される場合、大規模なインスタンスリスト操作は、最初に各セルデータベースから全体的な API 制限の一部を要求し、必要に応じて各セルからレコードが消費 (返される) されるのと同じバッチサイズを再要求します。バッチが大きいほど、API とデータベース間のチャットが少なくなりますが、データベースからの結果を処理するための無駄な労力が増える可能性があり、ユーザーには返されません。リクエストで多くの小さなデータベースクエリーをユーザーが行わないように、ストラテジーはすべて 100 以上のレコードのバッチサイズを生成します。

関連するオプション:

  • instance_list_cells_batch_fixed_size
  • max_limit

instance_list_per_project_cells = False

ブール値

有効にすると、API はテナントがインスタンスをマッピングしたセルデータベースのみをクエリーします。これには、各リストの前に API データベースで追加の (高速) クエリーが必要ですが、結果を提供するためにクエリーする必要のあるセルデータベースの数も (潜在的に) 制限されます。セルの数が少ない場合、またはテナントがすべてのセルにインスタンスを持っている可能性が高い場合、これは False である必要があります。多くのセルがある場合、特にテナントをそれらのセルの小さなサブセットに限定する場合、これは True である必要があります。

list_records_by_skipping_down_cells = True

ブール値

False に設定すると、応答しないセルなどのインフラストラクチャーが失敗した場合に、API は 500 エラーを返します。API がダウンセルを省略し、up のセルから結果を返す場合は、このオプションを True に設定します。

API マイクロバージョン 2.69 では、特定のレコードが利用できず、それらのレコードを含む特定のリクエストの結果の一部となる可能性がある、デプロイメントの一時的な状況が生じる可能性があることに注意してください。この場合は、このオプションは無視されます。詳細は、Compute API ガイド (https://docs.openstack.org/api-guide/compute/down_cells.html) の「Handling Down Cells」セクションを参照してください。

local_metadata_per_cell = False

ブール値

nova-metadata API サービスがセルごとにデプロイされていることを示します。この場合、マルチセルデプロイメントでのパフォーマンスとデータの分離性が向上します。neutron の設定方法に応じて、この設定の使用を検討する必要があります。ネットワークが複数セルにまたがる場合は、nova-metadata API サービスをグローバルに実行しなければならない場合があります。ネットワークがセル境界でセグメント化されている場合は、セルごとに nova-metadata API サービスを実行できます。セルごとに nova-metadata API サービスを実行する際には、対応する nova-metadata API サービスを参照するように各 neutron metadata-agent を設定する必要もあります。

max_limit = 1000

整数値

クエリーは多数のアイテムを返す可能性があるため、このオプションを設定すると、1 つの応答でアイテムの最大数を制限できます。

metadata_cache_expiration = 15

整数値

このオプションは、メタデータをキャッシュする時間 (秒単位) です。0 に設定すると、メタデータキャッシュは完全に無効になります。これは、パフォーマンス上の理由から、通常は推奨しません。この設定を増やすと、負荷が大きい場合にメタデータ API の応答時間が向上します。値が大きいと、メモリーの使用量が長くなる可能性があり、ホストメタデータの変更が有効になるまでの時間が長くなります。

neutron_default_tenant_id = default

文字列値

Neutron API からデフォルトネットワークを取得するためのテナント ID (一部の場所ではプロジェクト ID とも呼ばれます) を使用します。

関連するオプション:

  • use_neutron_default_nets

use_forwarded_for = False

ブール値

True の場合、X-Forwarded-For ヘッダーは正規のリモートアドレスとして処理されます。False (デフォルト) の場合、remote_address ヘッダーが使用されます。

これは、HTML プロキシーをサニタイズしている場合のみ有効にしてください。

非推奨: 26.0.0 以降

*理由:* この機能は、oslo.middleware の HTTPProxyToWSGI ミドルウェアと重複しています。

use_neutron_default_nets = False

ブール値

True の場合、TenantNetworkController は Neutron API に対してクエリーを実行して、使用するデフォルトのネットワークを取得します。

関連するオプション:

  • neutron_default_tenant_id

vendordata_dynamic_connect_timeout = 5

整数値

外部 REST サービスが接続する最大時間。

値:

  • 値が 3 より大きい任意の整数 (TCP パケット再送信タイムアウト)。この待機時間中にインスタンスの開始がブロックされる可能性があるため、この値は小さく保つ必要があることに注意してください。

関連するオプション:

  • vendordata_providers
  • vendordata_dynamic_targets
  • vendordata_dynamic_ssl_certfile
  • vendordata_dynamic_read_timeout
  • vendordata_dynamic_failure_fatal

vendordata_dynamic_failure_fatal = False

ブール値

動的なベンダーデータを取得する失敗はインスタンスのブートに致命的であるか ?

関連するオプション:

  • vendordata_providers
  • vendordata_dynamic_targets
  • vendordata_dynamic_ssl_certfile
  • vendordata_dynamic_connect_timeout
  • vendordata_dynamic_read_timeout

vendordata_dynamic_read_timeout = 5

整数値

外部 REST サービスが接続後にデータを返す最大時間。

値:

  • 任意の整数。この待機時間でインスタンスの起動がブロックされるため、この値を小さく維持する必要があります。

関連するオプション:

  • vendordata_providers
  • vendordata_dynamic_targets
  • vendordata_dynamic_ssl_certfile
  • vendordata_dynamic_connect_timeout
  • vendordata_dynamic_failure_fatal

`vendordata_dynamic_ssl_certfile = `

文字列値

動的ベンダーデータ REST サービス SSL 証明書を検証するオプション証明書ファイルまたは CA バンドルへのパス。

値:

  • 空の文字列または有効な証明書ファイルへのパス

関連するオプション:

  • vendordata_providers
  • vendordata_dynamic_targets
  • vendordata_dynamic_connect_timeout
  • vendordata_dynamic_read_timeout
  • vendordata_dynamic_failure_fatal

vendordata_dynamic_targets = []

リスト値

動的ベンダーデータプロバイダーのターゲットリストこれらのターゲットの形式は <name>@<url> です。

動的ベンダーデータプロバイダーは、外部の REST サービスと通信し、インスタンスに関する情報のクエリーを行い、メタデータを収集します。この動作は、nova 開発者リファレンスの vendordata.rst ファイルに記載されています。

vendordata_jsonfile_path = None

文字列値

クラウドプロバイダーは、カスタムデータをベンダーデータファイルに保存できます。このファイルは、メタデータサービスを介してインスタンスで利用でき、config-drive のレンダリングで利用できます。このデフォルトのクラス JsonFileVendorData は、このオプションで設定したパスを持つ JSON ファイルからこの情報を読み込みます。このオプションでパスが設定されていない場合、クラスは空のディクショナリーを返します。

このパラメーターを使用して、コンフィグドライブに静的ベンダーデータを提供する場合には、nova-compute サービスをこのオプションと共に設定して、ファイルは nova-compute ホストからアクセスできる必要があることに注意してください。

値:

  • データファイルへのパスを表す任意の文字列、または空の文字列 (デフォルト)。

vendordata_providers = ['StaticJSON']

リスト値

ベンダーデータプロバイダーのリスト。

ベンダーデータプロバイダーは、デプロイヤーがデプロイメント固有の configdrive およびメタデータを使用してメタデータを提供する方法です。

vendordata 動的エンドポイントの実装要件の詳細は、nova developer reference の vendordata.rst ファイルを参照してください。

関連するオプション:

  • vendordata_dynamic_targets
  • vendordata_dynamic_ssl_certfile
  • vendordata_dynamic_connect_timeout
  • vendordata_dynamic_read_timeout
  • vendordata_dynamic_failure_fatal

9.1.3. api_database

以下の表は、/etc/nova/nova.conf ファイルの [api_database] グループで使用できるオプションの概要をまとめたものです。

表9.2 api_database
設定オプション = デフォルト値タイプ説明

backend = sqlalchemy

文字列値

データベースに使用するバックエンド。

connection = None

文字列値

データベースへの接続に使用する SQLAlchemy 接続文字列。

connection_debug = 0

整数値

SQL デバッグ情報の冗長性: 0=なし、100=すべて。

`connection_parameters = `

文字列値

接続時に接続 URL に追加するオプションの URL パラメーター。param1=value1&param2=value2&…​ として指定します。

connection_recycle_time = 3600

整数値

この秒数より長く接続プールに存在していた接続は、次にプールからチェックアウトされたときに新しい接続に置き換えられます。

connection_trace = False

ブール値

Python スタックトレースをコメント文字列として SQL に追加します。

db_inc_retry_interval = True

ブール値

True の場合には、db_max_retry_interval までのデータベース操作の再試行回数を長くします。

db_max_retries = 20

整数値

エラーが発生する前に接続エラーまたはデッドロックが発生した場合の最大再試行。再試行回数を無限に指定するには -1 に設定します。

db_max_retry_interval = 10

整数値

db_inc_retry_interval が設定されている場合は、データベース操作を再試行するまでの最大秒数です。

db_retry_interval = 1

整数値

データベーストランザクションの再試行間の秒数。

max_overflow = 50

整数値

設定されている場合、この値を SQLAlchemy で max_overflow に使用します。

max_pool_size = 5

整数値

プールに開いたままにする SQL 接続の最大数。値を 0 に設定すると無制限を意味します。

max_retries = 10

整数値

起動時のデータベース接続の最大再試行数。再試行回数を無限に指定するには -1 に設定します。

mysql_enable_ndb = False

ブール値

True の場合には、MySQL Cluster (NDB) の処理のサポートを透過的に有効にします。12.1.0 以降 非推奨

*理由:*MySQL NDB Cluster ストレージエンジンのサポートは非推奨となり、今後のリリースで削除される予定です。

mysql_sql_mode = TRADITIONAL

文字列値

MySQL セッションに使用する SQL モード。このオプション (デフォルトを含む) は、サーバーセット SQL モードを上書きします。サーバー設定で設定された SQL モードを使用するには、これを no value に設定します。例: mysql_sql_mode=

mysql_wsrep_sync_wait = None

整数値

Galera の場合に限り、新しい接続で wsrep_sync_wait 因果関係チェックを設定します。デフォルトは None、つまり何も設定しません。

pool_timeout = None

整数値

設定されている場合は、この値を SQLAlchemy で pool_timeout に使用します。

retry_interval = 10

整数値

SQL 接続を開く再試行の間隔。

slave_connection = None

文字列値

スレーブデータベースへの接続に使用する SQLAlchemy 接続文字列。

sqlite_synchronous = True

ブール値

True の場合、SQLite は同期モードを使用します。

9.1.4. barbican

以下の表は、/etc/nova/nova.conf ファイルの [barbican] グループで使用できるオプションの概要をまとめたものです。

表9.3 barbican
設定オプション = デフォルト値タイプ説明

auth_endpoint = http://localhost/identity/v3

文字列値

このエンドポイントを使用して Keystone に接続します。

barbican_api_version = None

文字列値

Barbican API のバージョン。例: "v1"

barbican_endpoint = None

文字列値

このエンドポイントを使用して、Barbican に接続します (例: "http://localhost:9311/")。

barbican_endpoint_type = public

文字列値

エンドポイントのタイプを指定します。使用できる値は public、private、および admin です。

barbican_region_name = None

文字列値

選択したエンドポイントのリージョンを指定します。

number_of_retries = 60

整数値

キー作成の完了のためにポーリングを再試行する回数

retry_delay = 1

整数値

キー作成の完了をポーリングを再試行するまで待機する秒数

send_service_user_token = False

ブール値

True の場合には、REST API にユーザートークンを送信すると、サービストークンも送信されます。

Nova は、Cinder、Glance、Neutron などの他の REST API と通信するために、nova-api に提供されたユーザートークンを再利用することがよくあります。要求が Nova に対して行われたときにユーザートークンが有効であったとしても、他のサービスに到達する前にトークンが期限切れになる可能性があります。障害を回避し、Nova がユーザーに代わってサービスを呼び出していることを明確にするために、ユーザートークンと共にサービストークンを含めます。ユーザーのトークンの有効期限が切れた場合でも、有効なサービストークンにより、REST API リクエストが引き続き keystone ミドルウェアによって受け入れられることが保証されます。

verify_ssl = True

ブール値

セキュアでない TLS (https) 要求を指定します。False の場合、サーバーの証明書は検証されません。True の場合は、verify_ssl_path 設定の平均期間を設定できます。

verify_ssl_path = None

文字列値

チェックするバンドルまたは CA 証明書へのパス、または verify_ssh が True である証明書を見つけて使用しようとする要求の場合は None。verify_ssl が False の場合、これは無視されます。

9.1.5. barbican_service_user

以下の表は、/etc/nova/nova.conf ファイルの [barbican_service_user] グループで使用できるオプションの概要をまとめたものです。

表9.4 barbican_service_user
設定オプション = デフォルト値タイプ説明

auth_section = None

文字列値

プラグイン固有のオプションを読み込む config セクション

auth_type = None

文字列値

読み込む認証タイプ

cafile = None

文字列値

HTTP 接続の検証時に使用する PEM でエンコードされた認証局。

certfile = None

文字列値

PEM でエンコードされたクライアント証明書の証明書ファイル

collect-timing = False

ブール値

API ごとの呼び出しタイミング情報を収集します。

insecure = False

ブール値

HTTPS 接続を確認します。

keyfile = None

文字列値

PEM でエンコードされたクライアント証明書キーファイル

split-loggers = False

ブール値

複数のロガーへの要求をログに記録します。

timeout = None

整数値

http 要求のタイムアウト値

9.1.6. cache

以下の表は、/etc/nova/nova.conf ファイルの [cache] グループで使用できるオプションの概要をまとめたものです。

表9.5 cache
設定オプション = デフォルト値タイプ説明

backend = dogpile.cache.null

文字列値

キャッシュバックエンドモジュール。数百のスレッドサーバーを持つイベントレットベースまたは環境の場合は、プーリングを含む Memcache (oslo_cache.memcache_pool) が推奨されます。100 台未満のスレッドサーバーがある環境では、Memcached(dogpile.cache.memcached) または Redis(dogpile.cache.redis) が推奨されます。サーバーの単一のインスタンスを含むテスト環境は、dogpile.cache.memory バックエンドを使用できます。

backend_argument = []

多値

バックエンドモジュールに指定された引数。このオプションは、dogpile.cache バックエンドに渡される引数ごとに 1 回指定します。例: "<argname>:<value>"

config_prefix = cache.oslo

文字列値

キャッシュリージョンの設定ディクショナリーを構築するための接頭辞。同じ設定名を持つ別の dogpile.cache リージョンがない場合は、これを変更する必要はありません。

dead_timeout = 60

浮動小数点の値

HashClient の内部メカニズムでプールにノードを再度追加しようとするまでの時間 (秒)。

debug_cache_backend = False

ブール値

キャッシュバックエンドからの追加デバッグ (キャッシュキー、get/set/delete/etc コール)。これは、キー/値を含む特定の cache-backend get/set/delete 呼び出しを確認する必要がある場合にのみ非常に便利です。通常、これは false に設定されている必要があります。

enable_retry_client = False

ブール値

失敗を処理する再試行クライアントメカニズムを有効にします。これらのメカニズムは、あらゆる種類の pymemcache クライアントをラップするために使用できます。ラッパーを使用すると、試行回数と attemot 間の待機時間を定義できます。

enable_socket_keepalive = False

ブール値

dogpile の pymemcache バックエンドのソケットキープアライブのグローバルトグル

enabled = False

ブール値

キャッシュのグローバル切り替え。

expiration_time = 600

整数値

dogpile.cache リージョンのキャッシュされた項目に対するデフォルトの TTL (秒単位)。これは、キャッシュの有効期限が明示的に定義されていないキャッシュされたメソッドに適用されます。

hashclient_retry_attempts = 2

整数値

HashClient の内部メカニズムでクライアントが無効としてマークされ、プールから削除されるまで、クライアントを試行する必要がある回数。

hashclient_retry_delay = 1

浮動小数点の値

HashClient の内部メカニズムでの再試行の間に経過する時間 (秒単位)。

memcache_dead_retry = 300

整数値

再試行するまで memcached サーバーが停止されているとみなされる秒数 (dogpile.cache.memcache および oslo_cache.memcache_pool バックエンドのみ)。

`memcache_password = `

文字列値

SASL が有効になっている memcached のパスワード

memcache_pool_connection_get_timeout = 10

整数値

操作が memcache クライアント接続を取得するのを待つ秒数。

memcache_pool_flush_on_reconnect = False

ブール値

再接続時に memcache がフラッシュされるかどうかをグローバルに切り替えます (oslo_cache.memcache_pool バックエンドのみ)。

memcache_pool_maxsize = 10

整数値

すべての memcached サーバーへのオープン接続の最大数 (oslo_cache.memcache_pool バックエンドのみ)。

memcache_pool_unused_timeout = 60

整数値

memcached への接続が閉じられる前にプールで未使用のままになる秒数 (oslo_cache.memcache_pool バックエンドのみ)。

memcache_sasl_enabled = False

ブール値

SASL_enable が true の場合は SASL (Simple Authentication and SecurityLayer) を有効にし、それ以外の場合は無効にします。

memcache_servers = ['localhost:11211']

リスト値

"host:port" 形式の memcache サーバー。これは、Memcached に依存するバックエンドによって使用されます。dogpile.cache.memcached または oslo_cache.memcache_pool が使用され、指定されたホストが IPv6 を参照するか、指定されたドメインが IPv6 を参照する場合は、指定されたアドレスの前にアドレスファミリー (inet6) を付ける必要があります (例: inet6[::1]:11211inet6:[fd12:3456:789a:1::1]:11211inet6:[controller-0.internalapi]:11211)。アドレスファミリーが指定されていない場合は、これらのバックエンドは IPv4 に対応するデフォルトの inet アドレスファミリーを使用します。

memcache_socket_timeout = 1.0

浮動小数点の値

サーバーへの呼び出しごとにタイムアウト (秒単位)。(dogpile.cache.memcache および oslo_cache.memcache_pool バックエンドのみ)。

`memcache_username = `

文字列値

SASL が有効になっている memcached のユーザー名

proxies = []

リスト値

dogpile.cache バックエンドの機能に影響を与えるプロキシークラス。changing-backend-behavior に関する dogpile.cache ドキュメントを参照してください。

retry_attempts = 2

整数値

失敗するまでアクションを試行する回数。

retry_delay = 0

浮動小数点の値

各試行の間にスリープする秒数。

socket_keepalive_count = 1

整数値

接続を切断する前に TCP が送信するキープアライブプローブの最大数。ゼロより大きい正の整数である必要があります。

socket_keepalive_idle = 1

整数値

TCP がキープアライブプローブの送信を開始する前に、接続がアイドル状態を維持する必要がある時間 (秒単位)。ゼロより大きい正の整数である必要があります。

socket_keepalive_interval = 1

整数値

個々のキープアライブプローブ間の時間 (秒単位)。ゼロより大きい正の整数である必要があります。

tls_allowed_ciphers = None

文字列値

TLS コンテキストで作成されたソケットで利用可能な暗号を設定します。OpenSSL 暗号リスト形式の文字列である必要があります。指定されていない場合は、OpenSSL 対応の暗号がすべて利用可能になります。

tls_cafile = None

文字列値

キャッシュサーバーの信頼性を確立するのに必要な PEM 形式の連結された CA 証明書のファイルへのパス。tls_enabled が False の場合、このオプションは無視されます。

tls_certfile = None

文字列値

クライアントの証明書と証明書の信頼性を確立するために必要な任意の数の CA 証明書を含む PEM 形式の単一ファイルへのパス。このファイルは、クライアント側の認証が必要な場合にのみ必要です。tls_enabled が False の場合、このオプションは無視されます。

tls_enabled = False

ブール値

キャッシングサーバーと連携する際に、TLS の使用をグローバルに切り替えます。

tls_keyfile = None

文字列値

クライアントの秘密鍵を含む単一ファイルへのパス。それ以外の場合は、秘密鍵は tls_certfile に指定されたファイルから取得されます。tls_enabled が False の場合、このオプションは無視されます。

9.1.7. cinder

以下の表は、/etc/nova/nova.conf ファイルの [cinder] グループで使用できるオプションの概要をまとめたものです。

表9.6 cinder
設定オプション = デフォルト値タイプ説明

auth-url = None

文字列値

認証 URL

auth_section = None

文字列値

プラグイン固有のオプションを読み込む config セクション

auth_type = None

文字列値

読み込む認証タイプ

cafile = None

文字列値

HTTP 接続の検証時に使用する PEM でエンコードされた認証局。

catalog_info = volumev3::publicURL

文字列値

サービスカタログで cinder を検索する際に一致する情報

<service_name> はオプションで、ほとんどのデプロイメントでは不要であるため、デフォルトで省略されます。

値:

  • 形式は <service_type>:<service_name>:<endpoint_type> の形式で区切られた値です。

注意: Nova 17.0.0 Queens リリース以降、Nova は Cinder v2 API をサポートしません。

関連するオプション:

  • endpoint_template - このオプションを設定すると、catalog_info が上書きされます。

certfile = None

文字列値

PEM でエンコードされたクライアント証明書の証明書ファイル

collect-timing = False

ブール値

API ごとの呼び出しタイミング情報を収集します。

cross_az_attach = True

ブール値

異なるアベイラビリティーゾーンのインスタンスとボリューム間の接続を許可します。

False の場合、インスタンスに接続されているボリュームは、Cinder 内のインスタンスアベイラビリティーゾーンと同じアベイラビリティーゾーンにある必要があります。

また、これは、ソースが "ボリューム" ではないボリュームからインスタンスを起動する際には、注意すべきです。Nova は、インスタンスに割り当てられたものと同じアベイラビリティーゾーンを使用してボリュームの作成を試みるためです。

その AZ が Cinder にない (または cinder.conf で allow_availability_zone_fallback=False) 場合、ボリューム作成リクエストは失敗し、インスタンスはビルドリクエストに失敗します。

デフォルトでは、ボリュームの割り当てにはアベイラビリティーゾーンの制限はありません。

関連するオプション:

  • [DEFAULT]/default_schedule_zone

debug = False

ブール値

Nova の残りの部分とは別に、cinderclient と os_brick で DEBUG ログを有効にします。

default-domain-id = None

文字列値

v3 および v2 パラメーターで使用するオプションのドメイン ID。v3 のユーザーおよびプロジェクトドメインに使用され、v2 認証では無視されます。

default-domain-name = None

文字列値

v3 API および v2 パラメーターで使用するオプションのドメイン名です。v3 のユーザーおよびプロジェクトドメインに使用され、v2 認証では無視されます。

domain-id = None

文字列値

スコープするドメイン ID

domain-name = None

文字列値

スコープするドメイン名

endpoint_template = None

文字列値

このオプションを設定すると、cinder エンドポイントに関するこのテンプレートでサービスカタログの検索が上書きされます。

値:

注意: Nova 17.0.0 Queens リリース以降、Nova は Cinder v2 API をサポートしません。

関連するオプション:

  • catalog_info: endpoint_template が設定されていない場合、catalog_info が使用されます。

http_retries = 3

整数値

失敗した http 呼び出しで cinderclient が再試行される回数。0 は、接続が 1 回のみ試行されることを意味します。正の整数に設定すると、接続に失敗すると何度も再試行されます。たとえば、これを 3 に設定すると、接続合計の試みは 4 になります。

値:

  • 整数値。0 は、接続が 1 回のみ試行されることを意味します。

insecure = False

ブール値

HTTPS 接続を確認します。

keyfile = None

文字列値

PEM でエンコードされたクライアント証明書キーファイル

os_region_name = None

文字列値

このノードのリージョン名。これは、サービスカタログで URL を選択する場合に使用されます。

値:

  • リージョン名を表す文字列

password = None

文字列値

ユーザーのパスワード

project-domain-id = None

文字列値

プロジェクトを含むドメイン ID

project-domain-name = None

文字列値

プロジェクトを含むドメイン名

project-id = None

文字列値

スコープするプロジェクト ID

project-name = None

文字列値

スコープするプロジェクト名

split-loggers = False

ブール値

複数のロガーへの要求をログに記録します。

system-scope = None

文字列値

システム操作のスコープ

tenant-id = None

文字列値

テナント ID

tenant-name = None

文字列値

テナント名

timeout = None

整数値

http 要求のタイムアウト値

trust-id = None

文字列値

trustee として使用する信頼の ID

user-domain-id = None

文字列値

ユーザーのドメイン ID

user-domain-name = None

文字列値

ユーザーのドメイン名

user-id = None

文字列値

User ID

username = None

文字列値

Username

9.1.8. compute

以下の表は、/etc/nova/nova.conf ファイルの [compute] グループで使用できるオプションの概要をまとめたものです。

表9.7 compute
設定オプション = デフォルト値タイプ説明

consecutive_build_service_disable_threshold = 10

整数値

スケジューラーへのビルド失敗の報告を有効にします。

ゼロ以外の値を使用すると、BuildFailureWeigher が使用するスケジューラーにビルド失敗統計を送信できるようになります。

値:

  • 任意の正の整数により、ビルドの失敗を報告できます。
  • ゼロの場合、ビルドの失敗の報告を無効にします。

関連するオプション:

  • [filter_scheduler]/build_failure_weight_multiplier

cpu_dedicated_set = None

文字列値

PCPU リソースに使用できるホスト CPU のマスク。

このオプションの動作は、非推奨の vcpu_pin_set オプションの動作に影響します。

  • このオプションが定義されている場合、vcpu_pin_set を定義するとエラーが発生します。
  • このオプションが定義されていない場合には、vcpu_pin_set を使用して VCPU リソースのインベントリーを決定し、ピニングされたインスタンスとピニングされていないインスタンスの両方をスケジューリングできるホスト CPU を制限します。

この動作は、vcpu_pin_set が削除されると、今後のリリースで単純化されます。

値:

  • インスタンスの仮想 CPU の割り当て元となる物理 CPU 番号のコンマ区切りリスト。各要素は、単一の CPU 番号、CPU 番号の範囲、またはその順で、次に除外される CPU 番号のいずれかでなければなりません。

    以前の範囲。以下に例を示します。
    cpu_dedicated_set = "4-12,^8,15"

関連するオプション:

  • [compute] cpu_shared_set: これは、VCPU リソースの割り当て元を定義するための対応するオプションです。
  • vcpu_pin_set: このオプションが部分的に置き換える従来のオプション。

cpu_shared_set = None

文字列値

VCPU リソースに使用可能なホスト CPU をマスクし、エミュレータースレッドをオフロードします。

このオプションの動作は、非推奨の vcpu_pin_set オプションの定義によって異なります。

  • vcpu_pin_set が定義されていない場合、[compute] cpu_shared_set を使用して VCPU インベントリーを提供し、ピニングされていないインスタンスをスケジューリングできるホスト CPU を決定します。また、shareエミュレータースレッドポリシー (hw:emulator_threads_policy = share) で設定されたインスタンスのインスタンスエミュレータースレッドをオフロードする必要があるホスト CPU を決定するためにも使用されます。
  • vcpu_pin_set が定義されている場合、[compute] cpu_shared_set は、share エミュレータースレッドポリシー (hw:emulator_threads_policy=share) で設定されたインスタンスのインスタンスエミュレータースレッドがオフロードされるホスト CPU を決定するためにのみ使用されます。vcpu_pin_set は、VCPU インベントリーを提供し、固定されたインスタンスと固定されていないインスタンスの両方をスケジュールできるホスト CPU を決定するために使用されます。

この動作は、vcpu_pin_set が削除されると、今後のリリースで単純化されます。

値:

  • インスタンスの仮想 CPU の割り当て元となる物理 CPU 番号のコンマ区切りリスト。各要素は、単一の CPU 番号、CPU 番号の範囲、またはその順で、次に除外される CPU 番号のいずれかでなければなりません。

    以前の範囲。以下に例を示します。
    cpu_shared_set = "4-12,^8,15"

関連するオプション:

  • [compute] cpu_dedicated_set: これは、PCPU リソースの割り当て元を定義するための対応するオプションです。
  • vcpu_pin_set: このオプションの動作を変更する定義があるレガシーオプション。

image_type_exclude_list = []

リスト値

このコンピュートノードでは対応していないイメージ形式のリスト。

状況によっては、コンピュートノードが高価なイメージフォーマットまたは複雑なイメージ形式のサポートを拒否することが望ましい場合があります。この要因は、特定のイメージを使用して起動時に選択するコンピュートノードをスケジューラーが決定します。

値:

  • glance イメージの disk_format 名 (rawqcow2 など)

関連するオプション:

  • [scheduler]query_placement_for_image_type_support: サポートされているイメージタイプに基づいてコンピュートをフィルタリングできるようにします。

live_migration_wait_for_vif_plug = True

ブール値

移行元コンピュートホストが (neutron) ネットワークサービスからの network-vif-plugged イベントを待つ必要があるかどうかを判別してから、ゲストから移行先コンピュートホストへの実際の転送を開始します。

このオプションは、ライブマイグレーションの移行先ホストで読み取られることに注意してください。このオプションをすべてのコンピュートホストで同じ設定した場合、同じネットワークバックエンドをユニバーサルに使用する場合には、これを心配する必要はありません。

ゲストの移動を開始する前に、仮想インターフェイスのプラグインなど、移行先のコンピュートホストで一部の設定が行われます。宛先ホスト のネットワークバックエンドによっては、network-vif-plugged イベントがトリガーされ、移行元コンピュートホストで受信される可能性があり、移行元コンピュートは、ハイパーバイザーでゲストの移行を開始する前に、そのイベントでネットワークが移行先ホストで設定されるのを待つことができます。

  1. 注記:

    The compute service cannot reliably determine which types of virtual
    interfaces (`port.binding:vif_type`) will send `network-vif-plugged`
    events without an accompanying port `binding:host_id` change.
    Open vSwitch and linuxbridge should be OK, but OpenDaylight is at least
    one known backend that will not currently work in this case, see bug
    https://launchpad.net/bugs/1755890 for more details.

値:

  • true: network-vif-plugged イベントを待機してからゲストの転送を開始
  • false: ゲスト転送を開始する前に、network-vif-plugged イベントを待機しません (これはレガシー動作です)。

関連するオプション:

  • [DEFAULT]/vif_plugging_is_fatal: live_migration_wait_for_vif_plug が True で、vif_plugging_timeoutが 0 より大きい場合、タイムアウトに達すると、ライブ移行プロセスはエラーで失敗しますが、ゲスト転送は宛先ホストに開始されません
  • [DEFAULT]/vif_plugging_timeout: live_migration_wait_for_vif_plugが True の場合、これはタイムアウトするまで待機する時間を制御し、vif_plugging_is_fatal が True の場合は失敗するか、単にライブ移行を続行します

max_concurrent_disk_ops = 0

整数値

並行して実行する同時ディスク IO 集約操作の数 (glance イメージのダウンロード、イメージフォーマットの変換など)。これが高すぎると、応答時間に影響を与えます。デフォルト値の 0 は無制限を意味します。

max_disk_devices_to_attach = -1

整数値

1 つのサーバーに接続できる最大ディスクデバイス数。サーバーがサポートするディスク数は、使用するバスによって異なることに注意してください。たとえば、ide ディスクバスは、アタッチされている 4 つのデバイスに制限されます。設定された最大値は、サーバーの作成、再構築、退避、取り消し、ライブマイグレーション、および接続時に実施されます。

通常、ディスクバスは、デバイスタイプまたはディスクデバイス、および仮想化タイプから自動的に決定されます。ただし、ディスクバスは、ブロックデバイスのマッピングまたはイメージ属性で指定することもできます。ブロックデバイスマッピングでのディスクバスの指定の詳細は、:doc: /user/block-device-mappingdisk_bus フィールドを参照してください。また、https://docs.openstack.org/glance/latest/admin/useful-image を参照してください。-properties.html で、hw_disk_bus イメージプロパティーの詳細を確認してください。

オペレーターは、サーバーをホストする Compute サービスの [compute]/max_disk_devices_to_attach を変更すると、サーバーにすでにアタッチされているデバイスの数より小さいと、リビルドが失敗する可能性があることを認識する必要があります。たとえば、サーバー A に 26 のデバイスがアタッチされていて、オペレーターが [compute]/max_disk_devices_to_attach を 20 に変更すると、サーバー A の再構築要求が失敗し、26 デバイスがすでに割り当てられ、新たに設定された最大 20 を超えているため、ERROR 状態になります。

[compute]/max_disk_devices_to_attach を設定する Operator は、コールドマイグレーション時にも、設定された最大値がインプレースのみ適用され、移動前に宛先がチェックされないことに注意してください。これは、Operator がコンピュートホスト A に最大 26 個、コンピュートホスト B に最大 20 個を設定した場合、26 個のデバイスがアタッチされたサーバーのコンピュートホスト A からコンピュートホスト B へのコールドマイグレーションが成功することを意味します。次に、サーバーがコンピュートホスト B に置かれると、サーバーを再構築するリクエストが失敗し、26 デバイスがすでにアタッチされ、コンピュートホスト B の設定された最大 20 を超えているため、サーバーを再構築して ERROR 状態になります。

設定された最大値は、コンピュートホストがないため、退避オフロードサーバーには強制されません。

  1. 警告:: このオプションを 0 に設定すると、nova-compute サービスは起動に失敗してしまいます。これは、0 ディスクデバイスは無効な設定で、インスタンスの起動を防ぎます。

値:

  • -1 は無制限を意味します。
  • 整数 >= 1 は最大許容値を表します。0 を値として指定すると、nova-compute サービスが起動に失敗します。これは、0 ディスクデバイスが無効な設定で、インスタンスが起動できなくなるためです。

packing_host_numa_cells_allocation_strategy = False

ブール値

このオプションは、仮想マシンの NUMA セルを配置するためにホスト上の NUMA セルを選択する際に使用される割り当てストラテジーを制御します (NUMA トポロジーが定義されている仮想マシン)。デフォルトでは、より多くのリソースを使用するホストの NUMA セルが、配置試行時に最後に選択されます。packed_host_numa_cells_allocation_strategy 変数が False に設定されている場合、利用可能なリソースがより多いホストの NUMA セルが使用されます。True に設定すると、使用量のあるセルは仮想マシンのセルにパックされ、完全に使い果たされた後、新しい空きホストのセルが使用されます。

値:

  • True: 最も使用されているホスト NUMA セルに仮想マシンの NUMA セルをパックします。
  • False : 仮想マシンの NUMA セルを、利用可能なリソースがより多いホストの NUMA セルに分散します。

provider_config_location = /etc/nova/provider_config/

文字列値

リソースプロバイダーの設定データを含む YAML ファイルの場所。

これらのファイルを使用すると、オペレーターは追加のカスタムインベントリーと特性を指定して、1 つ以上のリソースプロバイダーに割り当てることができます。

追加のドキュメントは次の場所から入手できます。

https://docs.openstack.org/nova/latest/admin/managing-resource-providers.html

resource_provider_association_refresh = 300

整数値

compute ノードリソースプロバイダーのインベントリー、集約、および特性の nova-compute 側のキャッシュを更新する間隔。

このオプションは、コンピュートノードのローカルキャッシュでプロバイダーのインベントリー、集約、および特性の更新を試みる間隔の秒数を指定します。

値をゼロにすると、キャッシュの更新を完全に無効にします。

SIGHUP をコンピュートプロセスに送信して次回データにアクセスしたときに再度入力することで、いつでも手動でキャッシュを消去できます。

値:

  • 正の整数 (秒単位)、または更新を無効にするにはゼロ。

shutdown_retry_interval = 10

整数値

ACPI シャットダウンシグナルをインスタンスに再送信するまでの待機時間 (秒単位)。

全体の待機時間は shutdown_timeout によって設定されます。

値:

  • 0 より大きい整数 (秒単位)

関連するオプション:

  • shutdown_timeout

vmdk_allowed_types = ['streamOptimized', 'monolithicSparse']

リスト値

許可される VMDK の "create-type" サブフォーマットを説明する文字列のリスト。名前付きエクステントの処理によるホストファイルの潜在的な露出を避けるために、スパースヘッダーを持つ単一ファイルのバリアントのみを含めることを推奨します。このリストが空の場合、VMDK イメージの形式は許可されません。

9.1.9. conductor

以下の表は、/etc/nova/nova.conf ファイルの [conductor] グループで使用できるオプションの概要をまとめたものです。

表9.8 conductor
設定オプション = デフォルト値タイプ説明

workers = None

整数値

OpenStack Conductor サービスのワーカー数。デフォルトは、利用可能な CPU の数になります。

9.1.10. console

以下の表は、/etc/nova/nova.conf ファイルの [console] グループで使用できるオプションの概要をまとめたものです。

表9.9 console
設定オプション = デフォルト値タイプ説明

allowed_origins = []

リスト値

コンソールの WebSocket プロキシーに許可されるオリジンのリストを追加して、他の元のホスト名からの接続を許可します。WebSocket プロキシーは、サイト間の要求を防ぐために、ホストヘッダーとオリジンヘッダーと一致します。このリストは、オリジンのヘッダーで host 以外の値が許可されるかどうかを指定します。

値:

  • 各要素が許可される元のホスト名であるリスト。それ以外の場合は空のリスト

ssl_ciphers = None

文字列値

クライアントからの TLS 接続に許可する暗号を指定する OpenSSL 暗号設定文字列。以下に例を示します。

ssl_ciphers = "kEECDH+aECDSA+AES:kEECDH+AES+aRSA:kEDH+aRSA+AES"

暗号設定の文字列形式および許可される値の詳細は、OpenSSL ciphers コマンドの man ページを参照してください。

https://www.openssl.org/docs/man1.1.0/man1/ciphers.html

関連するオプション:

  • [DEFAULT] cert
  • [DEFAULT] key

ssl_minimum_version = default

文字列値

許可される SSL/TLS プロトコルの最低バージョン。

関連するオプション:

  • [DEFAULT] cert
  • [DEFAULT] key

9.1.11. consoleauth

以下の表は、/etc/nova/nova.conf ファイルの [consoleauth] グループで使用できるオプションの概要をまとめたものです。

表9.10 consoleauth
設定オプション = デフォルト値タイプ説明

token_ttl = 600

整数値

コンソール認証トークンの有効期間 (秒単位)。

コンソールの認証トークンは、ユーザーのコンソールアクセスの承認に使用されます。認証トークンの生存期間が経過すると、トークンは期限切れとみなされます。その後、期限切れのトークンが削除されます。

9.1.12. cors

以下の表は、/etc/nova/nova.conf ファイルの [cors] グループで使用できるオプションの概要をまとめたものです。

表9.11 cors
設定オプション = デフォルト値タイプ説明

allow_credentials = True

ブール値

実際の要求にユーザーの認証情報を含めることができることを示します。

allow_headers = ['X-Auth-Token', 'X-Openstack-Request-Id', 'X-Identity-Status', 'X-Roles', 'X-Service-Catalog', 'X-User-Id', 'X-Tenant-Id', 'X-OpenStack-Nova-API-Version', 'OpenStack-API-Version']

リスト値

実際の要求時に使用されるヘッダーフィールド名を示します。

allow_methods = ['GET'、'PUT'、'POST'、'DELETE'、'PATCH']

リスト値

実際の要求時に使用できるメソッドを示します。

allowed_origin = None

リスト値

このリソースがリクエストの "origin" ヘッダーで受信したドメインと共有されるかどうかを示します。形式: "<protocol>://<host>[:<port>]" (行末のスラッシュなし)例: https://horizon.example.com

expose_headers = ['X-Auth-Token', 'X-Openstack-Request-Id', 'X-Subject-Token', 'X-Service-Token', 'X-OpenStack-Nova-API-Version', 'OpenStack-API-Version']

リスト値

API に安全に公開できるヘッダーを示します。デフォルトは HTTP Simple ヘッダーです。

max_age = 3600

整数値

CORS プリフライトリクエストの最大キャッシュ期間。

9.1.13. cyborg

次の表は、/etc/nova/nova.conf ファイルの [cyborg] グループで使用できるオプションの概要を示しています。

表9.12 cyborg
設定オプション = デフォルト値タイプ説明

cafile = None

文字列値

HTTP 接続の検証時に使用する PEM でエンコードされた認証局。

certfile = None

文字列値

PEM でエンコードされたクライアント証明書の証明書ファイル

collect-timing = False

ブール値

API ごとの呼び出しタイミング情報を収集します。

connect-retries = None

整数値

接続エラーに対して試行される再試行の最大数。

connect-retry-delay = None

浮動小数点の値

接続エラーに対する 2 つの再試行の遅延 (秒単位)。設定されていない場合は、最大 60 秒まで 0.5 秒から開始する指数関数の再試行が使用されます。

endpoint-override = None

文字列値

このクライアントのリクエストには常にこのエンドポイント URL を使用します。注意: バージョンを指定しないエンドポイントはここで指定する必要があります。特定の API バージョンを要求するには、versionmin-version オプション、または max-version オプション、もしくはそれを組み合わせてを使用します。

insecure = False

ブール値

HTTPS 接続を確認します。

keyfile = None

文字列値

PEM でエンコードされたクライアント証明書キーファイル

region-name = None

文字列値

エンドポイント URL 検出のデフォルト region_name。

service-name = None

文字列値

エンドポイント URL 検出のデフォルト service_name。

service-type = accelerator

文字列値

エンドポイント URL 検出のデフォルト service_type。

split-loggers = False

ブール値

複数のロガーへの要求をログに記録します。

status-code-retries = None

整数値

再試行可能な HTTP ステータスコードに対して試行される再試行の最大数。

status-code-retry-delay = None

浮動小数点の値

再試行可能なステータスコードに対する 2 つの再試行間の遅延 (秒単位)。設定されていない場合は、最大 60 秒まで 0.5 秒から開始する指数関数の再試行が使用されます。

timeout = None

整数値

http 要求のタイムアウト値

valid-interfaces = ['internal', 'public']

リスト値

エンドポイント URL のインターフェイスのリスト (優先順)。

9.1.14. database

以下の表は、/etc/nova/nova.conf ファイルの [database] グループで使用できるオプションの概要をまとめたものです。

表9.13 database
設定オプション = デフォルト値タイプ説明

backend = sqlalchemy

文字列値

データベースに使用するバックエンド。

connection = None

文字列値

データベースへの接続に使用する SQLAlchemy 接続文字列。

connection_debug = 0

整数値

SQL デバッグ情報の冗長性: 0=なし、100=すべて。

`connection_parameters = `

文字列値

接続時に接続 URL に追加するオプションの URL パラメーター。param1=value1&param2=value2&…​ として指定します。

connection_recycle_time = 3600

整数値

この秒数より長く接続プールに存在していた接続は、次にプールからチェックアウトされたときに新しい接続に置き換えられます。

connection_trace = False

ブール値

Python スタックトレースをコメント文字列として SQL に追加します。

db_inc_retry_interval = True

ブール値

True の場合には、db_max_retry_interval までのデータベース操作の再試行回数を長くします。

db_max_retries = 20

整数値

エラーが発生する前に接続エラーまたはデッドロックが発生した場合の最大再試行。再試行回数を無限に指定するには -1 に設定します。

db_max_retry_interval = 10

整数値

db_inc_retry_interval が設定されている場合は、データベース操作を再試行するまでの最大秒数です。

db_retry_interval = 1

整数値

データベーストランザクションの再試行間の秒数。

max_overflow = 50

整数値

設定されている場合、この値を SQLAlchemy で max_overflow に使用します。

max_pool_size = 5

整数値

プールに開いたままにする SQL 接続の最大数。値を 0 に設定すると無制限を意味します。

max_retries = 10

整数値

起動時のデータベース接続の最大再試行数。再試行回数を無限に指定するには -1 に設定します。

mysql_enable_ndb = False

ブール値

True の場合には、MySQL Cluster (NDB) の処理のサポートを透過的に有効にします。12.1.0 以降 非推奨

*理由:*MySQL NDB Cluster ストレージエンジンのサポートは非推奨となり、今後のリリースで削除される予定です。

mysql_sql_mode = TRADITIONAL

文字列値

MySQL セッションに使用する SQL モード。このオプション (デフォルトを含む) は、サーバーセット SQL モードを上書きします。サーバー設定で設定された SQL モードを使用するには、これを no value に設定します。例: mysql_sql_mode=

mysql_wsrep_sync_wait = None

整数値

Galera の場合に限り、新しい接続で wsrep_sync_wait 因果関係チェックを設定します。デフォルトは None、つまり何も設定しません。

pool_timeout = None

整数値

設定されている場合は、この値を SQLAlchemy で pool_timeout に使用します。

retry_interval = 10

整数値

SQL 接続を開く再試行の間隔。

slave_connection = None

文字列値

スレーブデータベースへの接続に使用する SQLAlchemy 接続文字列。

sqlite_synchronous = True

ブール値

True の場合、SQLite は同期モードを使用します。

use_db_reconnect = False

ブール値

失われた接続でデータベースの実験的な使用を有効にします。

use_tpool = False

ブール値

すべての DB API 呼び出しでスレッドプーリングの実験的な使用を有効にします。非推奨: 10.0.0 以降

*理由:* この機能は実験段階から変化がなく、メンテナンスとテストが不十分であるため削除されます。

9.1.15. devices

以下の表は、/etc/nova/nova.conf ファイルの [devices] グループで使用できるオプションの概要をまとめたものです。

表9.14 devices
設定オプション = デフォルト値タイプ説明

enabled_mdev_types = []

リスト値

コンピュートノードで有効になっている mdev タイプ。

一部のハードウェア (NVIDIA GRID K1 など) は、異なる mdev タイプをサポートしています。ユーザーはこのオプションを使用して、ゲストインスタンスに割り当てることができる有効な mdev タイプのリストを指定できます。

複数の mdev タイプが指定されている場合は、各 mdev タイプ に対して追加のセクション ([mdev_$(MDEV_TYPE)]) を設定ファイルに追加する必要があります。その後、必ず 各セクションを単一の設定オプション (device_addresses) で設定する必要があります。これは、このタイプに割り当てる物理 GPU または mdev 対応ハードウェアの PCI アドレスのリストである必要があります。

1 つ以上のセクションが欠落している場合 (少なくとも 1 つの物理デバイスに特定のタイプを使用しない場合)、またはデバイスアドレスが提供されていない場合、Nova は [devices]/enabled_mdev_types によって提供された最初のタイプのみを使用します。

2 つの異なるタイプに同じ PCI アドレスが指定されている場合、nova-compute は再起動時に InvalidLibvirtMdevConfig 例外を返します。

暫定期間として、[vgpu_$(MDEV_TYPE)] という名前の古い設定グループが受け入れられます。有効な設定は次のようになります。

[devices]
enabled_mdev_types = nvidia-35, nvidia-36
[mdev_nvidia-35]
device_addresses = 0000:84:00.0,0000:85:00.0
[vgpu_nvidia-36]
device_addresses = 0000:86:00.0

9.1.16. ephemeral_storage_encryption

以下の表は、/etc/nova/nova.conf ファイルの [ephemeral_storage_encryption] グループで使用できるオプションの概要をまとめたものです。

表9.15 ephemeral_storage_encryption
設定オプション = デフォルト値タイプ説明

cipher = aes-xts-plain64

文字列値

使用される cipher-mode 文字列。

一時ストレージの暗号化に使用する暗号およびモード。利用可能な暗号モードの組み合わせは、カーネルのサポートによって異なります。dm-crypt のドキュメントによると、暗号は "<cipher>-<chainmode>-<ivmode>" 形式になることが予想されます。

値:

  • /proc/crypto に記載されている crypto オプション。

enabled = False

ブール値

LVM 一時ストレージの暗号化を有効/無効にします。

key_size = 512

整数値

暗号化キーの長さ (ビット単位)。

一時ストレージの暗号化に使用する暗号化キーのビット長。XTS モードでは、ビットの半分のみが暗号化キーに使用されます。

9.1.17. filter_scheduler

以下の表は、/etc/nova/nova.conf ファイルの [filter_scheduler] グループで使用できるオプションの概要をまとめたものです。

表9.16 filter_scheduler
設定オプション = デフォルト値タイプ説明

aggregate_image_properties_isolation_namespace = None

文字列値

ホストアグリゲートで使用するイメージ属性の名前空間。

イメージおよびホストは、特定のアグリゲートのホストのみに特定のイメージをスケジュールできるように設定できます。これは、このオプションの最初に特定されるホストアグリゲートで設定されるメタデータの値で実行されます。ホストがこのようなメタデータキーを持つアグリゲートの一部である場合、スケジューラーがホストを許容可能なとみなすために、要求仕様のイメージにそのメタデータの値をプロパティーに指定する必要があります。

この設定は、AggregateImagePropertiesIsolation フィルターが有効になっている場合にのみスケジュールに影響することに注意してください。

値:

  • 文字列。文字列が image プロパティーの名前空間に対応します。

関連するオプション:

  • [filter_scheduler] aggregate_image_properties_isolation_separator

aggregate_image_properties_isolation_separator = .

文字列値

イメージプロパティーの名前空間および名前に対する区切り文字。

aggregate_image_properties_isolation フィルターを使用する場合には、関連するメタデータキーの前に aggregate_image_properties_isolation_namespace 設定オプションで定義した名前空間にセパレーターが追加されます。このオプションは、使用する区切り文字を定義します。

この設定は、AggregateImagePropertiesIsolation フィルターが有効になっている場合にのみスケジュールに影響することに注意してください。

値:

  • 文字列。文字列がイメージプロパティーの名前空間セパレーターに対応する

関連するオプション:

  • [filter_scheduler] aggregate_image_properties_isolation_namespace

available_filters = ['nova.scheduler.filters.all_filters']

多値

スケジューラーが使用できるフィルター。

nova スケジューラーが適用するフィルタークラスの順不同リスト。[filter_scheduler] enabled_filters オプションで指定されたフィルターのみが使用されますが、そのオプションに表示されるすべてのフィルターもこのリストに含まれている必要があります。

デフォルトでは、nova に含まれる全フィルターに設定されます。

値:

  • ゼロ以上の文字列のリスト。各文字列はホストの選択に使用できるフィルターの名前に対応します。

関連するオプション:

  • [filter_scheduler] enabled_filters

build_failure_weight_multiplier = 1000000.0

浮動小数点の値

直近のビルドに失敗したホストを重み付けするのに使用する乗数。

このオプションは、最新のビルドに失敗して、コンピュートノードに配置される重みを決定します。ビルドの失敗は、失敗、間違った設定、またはコンピュートノードの実行などのことを示し、スケジューリング中にこれを回避するのが有益です。重みは、コンピュートノードが経験した直近のビルド失敗数とは逆に比例します。この値は、利用可能なリソースが原因で、他の有効化された重み付け関数で指定されるオフセットの重みに高い値に設定する必要があります。直近の失敗回数でコンピュートホストを重み付けするには、これをゼロに設定します。

BuildFailureWeigher 重み付け関数が有効になっている場合、この設定はスケジューリングにのみ影響することに注意してください。

値:

  • 整数または浮動小数点の値。ここで、値はこの重み付け関数の乗数比率に対応します。

関連するオプション:

  • [compute] consecutive_build_service_disable_threshold - この重み付けによって考慮されるデータを報告するための計算では、ゼロ以外である必要があります。
  • [filter_scheduler] weight_classes

cpu_weight_multiplier = 1.0

浮動小数点の値

CPU 重みの乗数比率。

空き仮想 CPU の重み付けに使用する乗数。負の数字は、分散ではなくスタックを示します。

この設定は、CPUWeigher 重み付けが有効になっている場合にのみスケジューリングに影響することに注意してください。

値:

  • 整数または浮動小数点の値。ここで、値はこの重み付け関数の乗数比率に対応します。

関連するオプション:

  • [filter_scheduler] weight_classes

cross_cell_move_weight_multiplier = 1000000.0

浮動小数点の値

セル間の移動中にホストの重み付けに使用される乗数。

このオプションは、セル間のサイズ変更などでサーバーを移動するときに、同じソースセル内にあるホストに適用される重みを決定します。デフォルトでは、インスタンスを移動する場合、スケジューラーは同じセル内のホストを優先します。これは、クロスセル移行の複雑な性質により、クロスセル移動操作が遅くなり、リスクが高くなる可能性があるためです。

この設定は、CrossCellWeigher 重み付け関数が有効になっている場合にのみスケジューリングに影響することに注意してください。クロスセル移行をサポートするようにクラウドが設定されていない場合、このオプションは効果がありません。

この設定オプションの値は、同じ名前 (cross_cell_move_weight_multiplier) を持つ集約メタデータキーを設定することにより、ホスト集約ごとにオーバーライドできます。

値:

  • 整数または浮動小数点の値。ここで、値はこの重み付け関数の乗数比率に対応します。正の値は、インスタンスが現在実行されているのと同じセル内のホストを重み付けが優先することを意味します。負の値は、インスタンスが現在実行されている のセル内のホストを重み付けが優先することを意味します。

関連するオプション:

  • [filter_scheduler] weight_classes

disk_weight_multiplier = 1.0

浮動小数点の値

ディスク重量倍数比。

空きディスク容量を重み付けする際に使用する乗数。負の数字は分散ではなくスタックを意味します。

この設定は、DiskWeigher 重み付け関数が有効になっている場合にのみスケジューリングに影響することに注意してください。

値:

  • 整数または浮動小数点の値。ここで、値はこの重み付け関数の乗数比率に対応します。

enabled_filters = ['ComputeFilter', 'ComputeCapabilitiesFilter', 'ImagePropertiesFilter', 'ServerGroupAntiAffinityFilter', 'ServerGroupAffinityFilter']

リスト値

スケジューラーが使用するフィルター。

ホストのフィルタリングに使用されるフィルタークラス名の順序付きリスト。これらのフィルターはリスト順に適用されるため、最も制限の厳しいフィルターを最初に配置して、フィルタリングプロセスを効率化します。

このオプションのすべてのフィルターは、[scheduler_filter] available_filter オプションに存在する 必要 があります。存在しない場合、SchedulerHostFilterNotFound 例外が発生します。

値:

  • ゼロ以上の文字列のリスト。各文字列はホストの選択に使用するフィルターの名前に対応します。

関連するオプション:

  • [filter_scheduler] available_filters

host_subset_size = 1

整数値

スケジューラーが選択する最適なホストのサブセットのサイズ。

新規インスタンスは、N best hosts のサブセットからランダムに選択されたホストでスケジュールされます。N はこのオプションで設定された値です。

これを 1 より大きい値に設定すると、同様の要求を処理する複数のスケジューラープロセスで同じホストが選択され、潜在的な競合状態が発生する可能性があります。要求に最も適した N 台のホストからホストを無作為に選択することで、競合の可能性が低減されます。ただし、この値を高く設定すると、選択されるホストが特定の要求に対して最適ではない可能性が高くなります。

値:

  • 整数。整数はホストサブセットのサイズに対応します。

hypervisor_version_weight_multiplier = 1.0

浮動小数点の値

ハイパーバイザーのバージョンの重み乗数の比。

乗数は、報告されたハイパーバイザーのバージョンに基づきホストを重み付けするために使用されます。負の数値は古いホストから優先されることを示します。デフォルトでは、アップグレードを支援するために新しいホストが優先されます。

値:

  • 整数または浮動小数点の値。ここで、値はこの重み付け関数の乗数比率に対応します。

以下に例を示します。

  • 古いホストを強く優先する

    1. code-block:: ini

      [filter_scheduler]
      hypervisor_version_weight_multiplier=-1000
  • 新しいホストを適度に優先する

    1. code-block:: ini

      [filter_scheduler]
      hypervisor_version_weight_multiplier=2.5
  • 重み付けの影響を無効にする

    1. code-block:: ini

      [filter_scheduler]
      hypervisor_version_weight_multiplier=0

関連するオプション:

  • [filter_scheduler] weight_classes

image_properties_default_architecture = None

文字列値

イメージプロパティーフィルターの使用時に使用されるデフォルトのアーキテクチャー。

ImagePropertiesFilter を使用する場合、デフォルトのアーキテクチャーを定義して、ユーザーエクスペリエンスをより簡単にし、ユーザーが Glance で hw_architecture プロパティーを指定しなかったために x86_64 イメージのようなものが AARCH64 コンピュートノードにランディングするのを避けることができます。

値:

  • x86_64、aarch64、s390x などの CPU アーキテクチャー。

io_ops_weight_multiplier = -1.0

浮動小数点の値

IO 操作の重みの倍率。

このオプションは、ワークロードが異なるホストが重み付けされる方法を決定します。デフォルトなど、負の値を使用すると、スケジューラーはワークロードが若干のホストを優先することになりますが、正の値を指定すると、負荷が重いホストが優先されます。また、このオプションの正の値では、すでにビジー状態のホストにインスタンスをスケジュールする傾向があり、負の値はより多くのホストに分散する傾向があります。正または負の絶対値で、他の重み付け関数に対して io_ops の重み付け関数をどれだけ優先するかを指定します。

この設定は、IoOpsWeigher 重み付け関数が有効になっている場合にのみスケジューリングに影響することに注意してください。

値:

  • 整数または浮動小数点の値。ここで、値はこの重み付け関数の乗数比率に対応します。

関連するオプション:

  • [filter_scheduler] weight_classes

isolated_hosts = []

リスト値

特定のイメージのみを実行できるホストのリスト。

特定のホストでのみイメージを実行するように制限する必要がある場合は、これらのホスト名をリスト表示します。

この設定は、IsolatedHostsFilter フィルターが有効になっている場合にのみスケジュールに影響することに注意してください。

値:

  • 文字列のリスト。各文字列はホストの名前に対応します。

関連するオプション:

  • [filter_scheduler] isolated_images
  • [filter_scheduler] restrict_isolated_hosts_to_isolated_images

isolated_images = []

リスト値

特定のホストでしか実行できないイメージの UUID のリスト。

特定のホストでのみイメージを実行するように制限する必要がある場合は、イメージの UUID をリスト表示します。

この設定は、IsolatedHostsFilter フィルターが有効になっている場合にのみスケジュールに影響することに注意してください。

値:

  • UUID 文字列のリスト。各文字列はイメージの UUID に対応します。

関連するオプション:

  • [filter_scheduler] isolated_hosts
  • [filter_scheduler] restrict_isolated_hosts_to_isolated_images

max_instances_per_host = 50

整数値

ホストに存在できる最大インスタンス数

指定ホスト上のインスタンスの数を制限する必要がある場合は、このオプションで許可する必要のある最大インスタンス数に設定します。NumInstancesFilter および AggregateNumInstancesFilter は、このオプションの値と同じ以上のインスタンスを持つホストをすべて拒否します。

この設定は、NumInstancesFilter または AggregateNumInstancesFilter フィルターが有効になっている場合にのみスケジュールに影響することに注意してください。

値:

  • 整数。この整数は、ホストにスケジュール可能な最大インスタンスに対応します。

関連するオプション:

  • [filter_scheduler] enabled_filters

max_io_ops_per_host = 8

整数値

ホストで IO をアクティブに実行できるインスタンスの数。

IO を実行するインスタンスには、build、resize、snapshot、migrate、rescue、unshelve などの状態が含まれます。

この設定は、IoOpsFilter フィルターが有効になっている場合にのみスケジューリングに影響することに注意してください。

値:

  • 整数。この整数は、任意のホストで IO をアクティブに実行できるインスタンスの最大数に対応します。

関連するオプション:

  • [filter_scheduler] enabled_filters

pci_in_placement = False

ブール値

Placement で PCI デバイスのスケジュールと要求を有効にします。

これは、すべてのコンピュートホストで [pci]report_in_placement が有効になった後に有効化できます。

有効にすると、スケジューラーは Placement に PCI デバイスの可用性をクエリーし、PCI 要求を持つサーバーの宛先を選択します。スケジューラーは、Placement で選択された PCI デバイスも割り当てます。このロジックは PCIPassthroughFilter を置き換えるのではなく、拡張することに注意してください。

  • [pci] report_in_placement
  • [pci] alias
  • [pci] device_spec

pci_weight_multiplier = 1.0

浮動小数点の値

PCI デバイスアフィニティーの重み乗数。

PCI デバイスアフィニティーの重み付け関数上の PCI デバイスの数と、インスタンスが要求する PCI デバイスの数に基づいて重み付けを計算します。

この設定は、PCIWeigher 重み付けと NUMATopologyFilter フィルターが有効になっている場合にのみスケジューリングに影響することに注意してください。

値:

  • 正の整数または浮動小数点値。ここで、値はこの重み付け関数の乗数比率に対応します。

関連するオプション:

  • [filter_scheduler] weight_classes

ram_weight_multiplier = 1.0

浮動小数点の値

RAM 重量倍数比。

このオプションは、利用可能な RAM が多いか、少ないホストを重み付けする方法を決定します。正の値を指定すると、スケジューラーは RAM がより多くなるホストを優先し、スケジューラーが利用可能な RAM が少ないホストを優先します。別の見方をすれば、このオプションの正の値はインスタンスを多くのホストに分散させる傾向があり、負の値は使用頻度の低いホストにスケジュールする前にホストを可能な限りいっぱいにする (スタックする) 傾向があります。絶対値は、正か負かに関係なく、他の重み付け関数と比べて RAM の重み付け関数をどれだけ優先するかを指定します。

この設定は、RAMWeigher 重み付け関数が有効になっている場合にのみスケジューリングに影響することに注意してください。

値:

  • 整数または浮動小数点の値。ここで、値はこの重み付け関数の乗数比率に対応します。

関連するオプション:

  • [filter_scheduler] weight_classes

restrict_isolated_hosts_to_isolated_images = True

ブール値

分離していないイメージが分離したホストにビルドされないようにします。

この設定は、IsolatedHostsFilter フィルターが有効になっている場合にのみスケジュールに影響することに注意してください。それでも、このオプションは分離されたイメージのリクエストの動作には影響しません。分離されたイメージは常に分離されたホストに制限されます。

関連するオプション:

  • [filter_scheduler] isolated_images
  • [filter_scheduler] isolated_hosts

shuffle_best_same_weighed_hosts = False

ブール値

同じ最善の重みを持つホスト間でインスタンスを分散できるようにします。

これを有効にすると、[filter_scheduler] host_subset_size が 1 (デフォルト) であるが、同じ最大重みを持つ多数のホストが存在する場合に役立ちます。このシナリオは、通常、スケジューラーに同一の重みが返されるベアメタルノードが多数ある Ironic デプロイメントでよく見られます。このような場合、このオプションを有効にすると競合が減少し、イベントの再スケジュールの可能性が低くなります。同時に、インスタンスのパッキング (重み付けされていない場合でも) の密度が低くなります。

soft_affinity_weight_multiplier = 1.0

浮動小数点の値

グループのソフトアフィニティーのホストを重み付けするために使用される乗数。

この設定は、ServerGroupSoftAffinityWeigher 重み付けが有効になっている場合にのみスケジューリングに影響することに注意してください。

値:

  • 負の整数または浮動小数点値。この値は、グループのソフトアフィニティーを持つホストの重みの乗数に対応します。

関連するオプション:

  • [filter_scheduler] weight_classes

soft_anti_affinity_weight_multiplier = 1.0

浮動小数点の値

グループのソフト非アフィニティーのホストを重み付けするために使用される乗数。

この設定は、ServerGroupSoftAntiAffinityWeigher 重み付けが有効になっている場合にのみスケジューリングに影響することに注意してください。

値:

  • 負の整数または浮動小数点値。この値は、グループのソフト非アフィニティーを持つホストの重みの乗数に対応します。

関連するオプション:

  • [filter_scheduler] weight_classes

track_instance_changes = True

ブール値

インスタンス情報に対する個別ホストのクエリーを有効にします。

スケジューラーは、フィルターと重み付け関数を評価するために、ホスト上のインスタンスに関する情報が必要になる場合があります。この情報の最も一般的な必要性は、(アンチ) アフィニティーフィルターであり、ホスト上ですでに実行されているインスタンスに基づいてホストを選択する必要があります。

設定したフィルターと重み付け関数がこの情報を必要としない場合、このオプションを無効にするとパフォーマンスが向上します。また、追跡オーバーヘッドが大きすぎると無効にすることもできます。ただし、これにより、ホストの使用データを必要とするクラスが各リクエストでデータベースを照会することになります。

  1. 注記:

    In a multi-cell (v2) setup where the cell MQ is separated from the
    top-level, computes cannot directly communicate with the scheduler. Thus,
    this option cannot be enabled in that scenario. See also the
    `[workarounds] disable_group_policy_check_upcall` option.

関連するオプション:

  • [filter_scheduler] enabled_filters
  • [workarounds] disable_group_policy_check_upcall

weight_classes = ['nova.scheduler.weights.all_weighers']

リスト値

スケジューラーが使用する重み付け関数。

フィルターをパスするホストのみが重み付けされます。ホストの重みは 0 で始まり、以前の重み付け関数により割り当てられた重みから追加または減算することで、これらのホストの順序が重み付けされます。重みが負の値になる可能性があります。インスタンスは、最も重み付けされた N 個のホストの 1 つにスケジュールされます。ここで、N は [filter_scheduler] host_subset_size です。

デフォルトでは、Nova に含まれる全重み付け関数に設定されます。

値:

  • 0 個以上の文字列のリスト。各文字列は、ホストの選択に使用する重み付け関数の名前に対応します。

9.1.18. glance

以下の表は、/etc/nova/nova.conf ファイルの [glance] グループで使用できるオプションの概要をまとめたものです。

表9.17 glance
設定オプション = デフォルト値タイプ説明

api_servers = None

リスト値

nova で利用可能な glance api サーバーエンドポイントのリスト

HTTPS は、ssl ベースの glance api サーバーに使用されます。

注記

エンドポイント検出で優先されるメカニズムは、keystoneauth1 の読み込みオプションを使用することです。複数のエンドポイントが必要で、何らかの理由でロードバランサーを使用できない場合にのみ api_servers を使用します。

値:

  • "scheme://hostname:port[/path]" (つまり、"http://10.0.1.0:9292" または "https://my.glance.server/image") の形式の完全修飾 URL のリスト)。

非推奨: 21.0.0

理由: 標準の keystoneauth1 アダプターオプションによるイメージサービス設定のサポートは、17.0.0 Queens リリースで追加されました。api_servers オプションは、コンシューマーが実際の負荷分散ソリューションに切り替わる時間を確保するために一時的に保持されました。

cafile = None

文字列値

HTTP 接続の検証時に使用する PEM でエンコードされた認証局。

certfile = None

文字列値

PEM でエンコードされたクライアント証明書の証明書ファイル

collect-timing = False

ブール値

API ごとの呼び出しタイミング情報を収集します。

connect-retries = None

整数値

接続エラーに対して試行される再試行の最大数。

connect-retry-delay = None

浮動小数点の値

接続エラーに対する 2 つの再試行の遅延 (秒単位)。設定されていない場合は、最大 60 秒まで 0.5 秒から開始する指数関数の再試行が使用されます。

debug = False

ブール値

glanceclient を使用したデバッグロギングを有効または無効にします。

default_trusted_certificate_ids = []

リスト値

信頼される必要のある証明書の証明書 ID のリスト。

証明書検証の信頼済み証明書 ID のデフォルトリストとして使用できます。このオプションの値は、ユーザーがインスタンス API 要求と共に信頼される証明書 ID のリストを提供した場合は無視されます。署名の検証および証明書の検証が有効で、ユーザーが代替リストを提供しなかった場合には、このオプションの値はインスタンスデータで永続化されます。証明書の検証が有効な場合に空のままにすると、ユーザーは信頼できる証明書 ID のリストを提供しないと、証明書の検証に失敗します。

関連するオプション:

  • verify_glance_signatures と enable_certificate_validation の両方が有効な場合には、このオプションの値を使用することができます。

enable_certificate_validation = False

ブール値

イメージ署名の検証の証明書の検証を有効にします。

イメージの署名の検証中に、nova はまず、インスタンスに関連付けられた信頼された証明書のセットを使用して、イメージの署名証明書の有効性を検証します。証明書の検証が失敗した場合、署名の検証は実行されず、インスタンスはエラー状態になります。これにより、エンドユーザーは、イメージデータが変更されず、信頼できるものであることが保証されます。まだ無効にされている場合、イメージ署名の検証は発生する可能性がありますが、エンドユーザーには、イメージ署名の生成に使用される署名証明書がまだ信頼されているという保証はありません。

関連するオプション:

  • このオプションは、verify_glance_signatures が有効な場合にのみ有効です。
  • このオプションが有効な場合には、default_trusted_certificate_ids の値を使用することができます。

非推奨となったバージョン: 16.0.0

理由: このオプションは、イメージ署名の検証を利用してデプロイメントの移行を容易にすることを目的としています。目的の状態の long-term は、署名の検証と証明書の検証が常に一緒に行われることです。

enable_rbd_download = False

ブール値

RBD 経由で直接 Glance イメージのダウンロードを有効にします。

ローカルストレージを使用する非 rbd コンピュートが、http 経由の Glance API ではなく、rbd 経由で Ceph からイメージをダウンロードしてキャッシュできるようにします。

  1. 注記: このオプションは、コンピュート自体が Ceph をバッキングストアとして使用していない場合にのみ有効にする必要があります。たとえば libvirt ドライバーの場合、:oslo.config:option:libvirt.images_typerbd に設定されていない場合にのみ有効にする必要があります。

関連するオプション:

  • :oslo.config:option:glance.rbd_user
  • :oslo.config:option:glance.rbd_connect_timeout
  • :oslo.config:option:glance.rbd_pool
  • :oslo.config:option:glance.rbd_ceph_conf
  • :oslo.config:option:libvirt.images_type

endpoint-override = None

文字列値

このクライアントのリクエストには常にこのエンドポイント URL を使用します。注意: バージョンを指定しないエンドポイントはここで指定する必要があります。特定の API バージョンを要求するには、versionmin-version オプション、または max-version オプション、もしくはそれを組み合わせてを使用します。

insecure = False

ブール値

HTTPS 接続を確認します。

keyfile = None

文字列値

PEM でエンコードされたクライアント証明書キーファイル

num_retries = 3

整数値

glance 操作の再試行を有効にします。

glance から / にイメージをアップロード/ダウンロードする際の再試行回数を指定します。0 は再試行なしを意味します。

`rbd_ceph_conf = `

文字列値

使用する Ceph 設定ファイルへのパス。

関連するオプション:

  • このオプションは、:oslo.config:option:glance.enable_rbd_downloadTrue に設定されている場合にのみ使用されます。

rbd_connect_timeout = 5

整数値

最初にクラスターに接続するときの RADOS クライアントのタイムアウト (秒単位)。

関連するオプション:

  • このオプションは、:oslo.config:option:glance.enable_rbd_downloadTrue に設定されている場合にのみ使用されます。

`rbd_pool = `

文字列値

Glance イメージが rbd ボリュームとして保存される RADOS プール。

関連するオプション:

  • このオプションは、:oslo.config:option:glance.enable_rbd_downloadTrue に設定されている場合にのみ使用されます。

`rbd_user = `

文字列値

rbd ボリュームとして保存されている Glance イメージにアクセスするための RADOS クライアント名。

関連するオプション:

  • このオプションは、:oslo.config:option:glance.enable_rbd_downloadTrue に設定されている場合にのみ使用されます。

region-name = None

文字列値

エンドポイント URL 検出のデフォルト region_name。

service-name = None

文字列値

エンドポイント URL 検出のデフォルト service_name。

service-type = image

文字列値

エンドポイント URL 検出のデフォルト service_type。

split-loggers = False

ブール値

複数のロガーへの要求をログに記録します。

status-code-retries = None

整数値

再試行可能な HTTP ステータスコードに対して試行される再試行の最大数。

status-code-retry-delay = None

浮動小数点の値

再試行可能なステータスコードに対する 2 つの再試行間の遅延 (秒単位)。設定されていない場合は、最大 60 秒まで 0.5 秒から開始する指数関数の再試行が使用されます。

timeout = None

整数値

http 要求のタイムアウト値

valid-interfaces = ['internal', 'public']

リスト値

エンドポイント URL のインターフェイスのリスト (優先順)。

verify_glance_signatures = False

ブール値

イメージ署名の検証を有効にします。

Nova は glance からのイメージ署名メタデータを使用して、そのイメージのダウンロード中に署名済みイメージの署名を検証します。イメージの署名を検証できない、またはイメージ署名のメタデータが不完全なか、利用できない場合には、nova はそのイメージをブートせず、代わりにインスタンスをエラー状態にします。これにより、エンドユーザーはサーバーを作成するために使用するイメージデータの整合性が強化されます。

関連するオプション:

  • key_manager は署名の検証に使用されるため、key_manager グループのオプション。
  • 以下の enable_certificate_validation と default_trusted_certificate_ids はいずれも、有効になっているこのオプションによって異なります。

9.1.19. guestfs

以下の表は、/etc/nova/nova.conf ファイルの [guestfs] グループで使用できるオプションの概要をまとめたものです。

表9.18 guestfs
設定オプション = デフォルト値タイプ説明

debug = False

ブール値

guestfs ロギングを有効/無効にします。

これにより、guestfs がデバッグメッセージを実行し、それらを OpenStack ロギングシステムにプッシュするように設定されます。True に設定すると、libguestfs API 呼び出しを追跡し、詳細なデバッグメッセージを有効にします。上記の機能を使用するには、"libguestfs" パッケージをインストールする必要があります。

関連するオプション:

libguestfs は libvirt が管理する仮想マシンのアクセスと変更を行うため、以下のオプションを設定して、その仮想マシンのアクセスを付与する必要があります。

  • libvirt.inject_key
  • libvirt.inject_partition
  • libvirt.inject_password

9.1.20. Healthcheck

以下の表は、/etc/nova/nova.conf ファイルの [healthcheck] グループで使用できるオプションの概要をまとめたものです。

表9.19 Healthcheck
設定オプション = デフォルト値タイプ説明

backends = []

リスト値

ヘルスチェックを実施し、リクエストの一部としてその情報を報告できる追加のバックエンド。

detailed = False

ブール値

応答の一部として詳細情報を表示します。セキュリティーメモ: このオプションを有効にすると、監視対象のサービスに関する機密情報が漏洩する可能性があります。セキュリティーポリシーに違反しないことを確認してください。

disable_by_file_path = None

文字列値

ファイルが存在することを確認し、アプリケーションがポート上で実行されているかどうかを確認します。DisableByFileHealthcheck プラグインで使用されます。

disable_by_file_paths = []

リスト値

ポートに基づいてファイルが存在することを確認し、アプリケーションがポート上で実行されているかどうかを判断します。文字列の "port:path" リストを想定します。DisableByFilesPortsHealthcheck プラグインで使用されます。

path = /healthcheck

文字列値

healtcheck 要求に応答するパス。

9.1.21. hyperv

以下の表は、/etc/nova/nova.conf ファイルの [hyperv] グループで使用できるオプションの概要をまとめたものです。

表9.20 hyperv
設定オプション = デフォルト値タイプ説明

config_drive_cdrom = False

ブール値

コンフィグドライブを CD ドライブとしてマウントします。

OpenStack は、インスタンスメタデータをコンフィグドライブに書き込むように設定できます。これは、インスタンスのブート前にアタッチされます。設定ドライブは、ディスクドライブ (デフォルト) または CD ドライブとして接続できます。

関連するオプション:

  • このオプションは、force_config_drive オプションを True に設定したり、インスタンスを作成する REST API 呼び出しに --config-drive=True フラグを付ける場合に意味を持ちます。
  • コンフィグドライブイメージとして CD ドライブを使用するには、config_drive_format オプションを iso9660 に設定する必要があります。
  • Hyper-V でコンフィグドライブを使用するには、mkisofs_cmd の値を mkisofs.exe インストールへの完全パスに設定する必要があります。さらに、qemu_img_cmd の値を qemu-img コマンドインストールへのフルパスに設定する必要があります。
  • force_config_drive オプションを True に設定すると、Compute サービスが常にコンフィグドライブを作成するように設定できます。

config_drive_inject_password = False

ブール値

設定ドライブにパスワードを挿入します。

有効な場合、admin パスワードはコンフィグドライブイメージから利用可能になります。

関連するオプション:

  • このオプションは、force_config_drive など、Hyper-V での設定ドライブの使用を可能にする他のオプションと一緒に使用すると意味があります。

dynamic_memory_ratio = 1.0

浮動小数点の値

動的なメモリー比率

1 より大きい値に設定すると、動的メモリー割り当て (バルーニング) が有効になります。この値は、インスタンスに割り当てられた RAM の合計と、その起動 RAM 容量の比率を表します。たとえば、RAM が 1024MB のインスタンスで 2.0 の比率は、起動時に 512 MB の RAM に割り当てられることを意味します。

値:

  • 1.0: 動的メモリー割り当てを無効にします (デフォルト)。
  • 1.0 より大きい浮動小数点値: 起動時に、この値で割った暗黙の RAM の合計の割り当てを有効にします。

enable_instance_metrics_collection = False

ブール値

インスタンスメトリック収集の有効化

Hyper-V のメトリック API を使用してインスタンスのメトリックコレクションを有効にします。収集したデータは、以下のような他のアプリケーションやサービスで取得できます。例: Ceilometer

enable_remotefx = False

ブール値

RemoteFX 機能の有効化

これには、Windows / Hyper-V Server 2012 R2 以降および RDS-Virtualization 機能に少なくとも 1 つの DirectX 11 対応グラフィックスアダプターが必要です。

RemoteFX を使用するインスタンスは、以下のフレーバーの追加スペックを使用して要求できます。

os:resolution.ゲスト仮想マシン画面の解像度のサイズ。許可される値
1024x768, 1280x1024, 1600x1200, 1920x1200, 2560x1600, 3840x2160

3840x2160 は Windows / Hyper-V Server 2016 でのみ利用できます。

os:monitorsゲスト VM 番号のモニター数。許可される値
[1, 4] - Windows / Hyper-V Server 2012 R2 [1, 8] - Windows / Hyper-V Server 2016

os:vramゲスト仮想マシン VRAM の量。Windows / Hyper-V Server 2016 でのみ利用可能です。Acceptable values::

64, 128, 256, 512, 1024

`instances_path_share = `

文字列値

インスタンスパス共有

"instances_path" ディレクトリーにマッピングされ、変更機能でファイルをターゲットホストにコピーするために使用される Windows 共有の名前。空白のままにすると、管理共有 (非表示のネットワーク共有) が使用され、ローカルで使用されているのと同じ "instances_path" が検索されます。

値:

  • "": 管理共有が使用されます (デフォルト)。
  • Windows 共有の名前。

関連するオプション:

  • "instances_path": このオプションが空白のままの場合に使用されるディレクトリー。

iscsi_initiator_list = []

リスト値

iSCSI セッションを安定させるために使用される iSCSI イニシエーターのリスト。

何も指定しないと、Microsoft iSCSI イニシエーターサービスがイニシエーターを選択します。

limit_cpu_features = False

ブール値

CPU 機能の制限

このフラグは、さまざまな CPU 機能を備えたホストへのライブマイグレーションをサポートするために必要であり、インスタンスによって使用される CPU 機能を制限するためにインスタンスの作成中にチェックされます。

mounted_disk_query_retry_count = 10

整数値

マウントされたディスククエリーの再試行回数

マウントされたディスクの確認を再試行する回数。クエリーは、デバイスが見つかるか、再試行回数に達するまで実行されます。

値:

  • 正の整数値。1 より大きい値を推奨します (デフォルト: 10)。

関連するオプション:

  • ディスクマウントの再試行間の時間間隔は、"mounted_disk_query_retry_interval" オプションで宣言されます。

mounted_disk_query_retry_interval = 5

整数値

マウントされたディスククエリーの再試行間隔

マウントされたディスクのチェック間隔 (秒単位)。

値:

  • 秒単位の時間 (デフォルト: 5)。

関連するオプション:

  • このオプションは、mount_disk_query_retry_count が 1 よりも大きい場合に意味を持ちます。
  • 再試行ループは、mount_disk_query_retry_count および mounted_disk_query_retry_interval 設定オプションで実行されます。

power_state_check_timeframe = 60

整数値

電源状態チェックのタイムフレーム

インスタンスの電源状態の変更のためにチェックする時間枠。このオプションは、指定の時間内に WMI インターフェイスを介して Hyper-V からインスタンスの状態を取得するのに使用します。

値:

  • 秒単位の時間枠 (デフォルト: 60)。

power_state_event_polling_interval = 2

整数値

電源状態イベントのポーリング間隔

インスタンスの電源状態の変更イベントのポーリング頻度。電源状態イベントのリスナー間隔を指定の値に設定します。このオプションは、それ自体を再起動するインスタンスのライフサイクルに関する通知を強化します。Operator はこの値を変更する必要がある訳ではありません。

値:

  • 秒単位の時間 (デフォルト: 2)。

qemu_img_cmd = qemu-img.exe

文字列値

qemu-img コマンド

qemu-img は、異なるイメージタイプ間の変換など、一部のイメージ関連の操作に必要です。ここから入手できます: (http://qemu.weilnetz.de/) または自動的に設定される Cloudbase OpenStack Hyper-V Compute Driver (https://cloudbase.it/openstack-hyperv-driver/) をインストールできますこの設定オプションの適切なパス。qemu-img.exe の完全パスを指定するか、PATH 環境変数でそのパスを設定し、このオプションをデフォルト値のままにします。

値:

  • qemu-img 実行可能ファイルの名前。nova-compute サービスと同じディレクトリーにある場合、またはそのパスが PATH 環境変数にある場合 (デフォルト)。
  • qemu-img コマンドのパス (DRIVELETTER:\ PATH \ TO \ QEMU-IMG \ COMMAND)。

関連するオプション:

  • config_drive_cdrom オプションが False の場合、qemu-img を使用して ISO を VHD に変換し、それ以外の場合はコンフィグドライブは ISO のままになります。Hyper-V でコンフィグドライブを使用するには、mkisofs_cmd の値を mkisofs.exe インストールへの完全パスに設定する必要があります。

use_multipath_io = False

ブール値

iSCSI ディスクまたは FC ディスクを接続する際にマルチパス接続を使用します。

これには、Multipath IO Windows 機能を有効にする必要があります。MPIO は、このようなデバイスを要求するように設定する必要があります。

volume_attach_retry_count = 10

整数値

ボリュームアタッチの再試行回数

ボリュームの割り当てを再試行する回数。ボリュームのアタッチは、成功までか、指定された再試行数に達するまで再試行されます。

値:

  • 正の整数値 (デフォルト: 10)。

関連するオプション:

  • 接続試行の間隔は、volume_attach_retry_interval オプションで宣言されます。

volume_attach_retry_interval = 5

整数値

ボリュームアタッチの再試行の間隔

ボリューム接続の試行間隔 (秒単位)。

値:

  • 秒単位の時間 (デフォルト: 5)。

関連するオプション:

  • このオプションは、volume_attach_retry_count が 1 よりも大きい場合に意味を持ちます。
  • 再試行ループは、volume_attach_retry_count および volume_attach_retry_interval 設定オプションで実行されます。

vswitch_name = None

文字列値

外部仮想スイッチ名

Hyper-V Virtual Switch は、Hyper-V サーバーロールのインストールで利用可能なソフトウェアベースの layer-2 Ethernet ネットワークスイッチです。スイッチには、プログラムで管理され、拡張可能な機能が追加され、仮想マシンを仮想ネットワークと物理ネットワークの両方に接続することができます。また、Hyper-V Virtual Switch は、セキュリティー、分離、およびサービスレベルのポリシー適用を提供します。この設定オプションで表される vSwitch は、外部のものである必要があります (内部またはプライベートではありません)。

値:

  • 指定しないと、利用可能な vswitches リストの最初に使用されます。このリストは WQL を使用してクエリーされます。
  • 仮想スイッチ名。

wait_soft_reboot_seconds = 60

整数値

ソフトリブート秒を待ちます。

ソフトリブート要求後にインスタンスがシャットダウンするのを待機する秒数。インスタンスがこのウィンドウ内でシャットダウンしない場合は、ハードリブートにフォールバックします。

値:

  • 秒単位の時間 (デフォルト: 60)。

9.1.22. image_cache

次の表に、/etc/nova/nova.conf ファイルの [image_cache] グループで使用できるオプションの概要を示します。

表9.21 image_cache
設定オプション = デフォルト値タイプ説明

manager_interval = 2400

整数値

イメージキャッシュマネージャーの実行間で待機する秒数。

複数の nova-compute サービスにわたって [DEFAULT]/instances_path 設定オプションに共有ストレージを使用する場合、この周期は多数のインスタンスを処理する可能性があることに注意してください。同様に、クラスターを管理するコンピューティングドライバー (vmwareapi.VMwareVCDriver など) を使用すると、多数のインスタンスが処理される可能性があります。したがって、予想される負荷に合わせて時間間隔を調整するか、共有ストレージアグリゲート内の 1 つの nova-compute サービスでのみ実行する必要がある場合があります。追加の注意点: image_cache_manager が実行されるたびに、[DEFAULT]/instances_path 内のイメージのタイムスタンプが更新されます。

値:

  • 0: デフォルトの 60 秒間隔で実行 (非推奨)
  • -1: 無効
  • その他の値

関連するオプション:

  • [DEFAULT]/compute_driver
  • [DEFAULT]/instances_path

precache_concurrency = 1

整数値

イメージの事前キャッシュを並行してトリガーする計算ホストの最大数。

イメージの事前キャッシュ要求が行われると、コンピュートノードに接続してダウンロードを開始します。この数は、並行して発生するそれらの数を制限します。数値が大きいと、compute が並行して機能し、操作完了までの時間が短縮される可能性がありますが、Image サービスにも DDoS が実行される可能性があります。数値が小さいと、順次操作が実行され、イメージサービスの負荷は低くなりますが、完了までの実行時間が長くなる可能性が高くなります。

remove_unused_base_images = True

ブール値

未使用のベースイメージを削除するべきか ?

このベースイメージから作成されたインスタンス、またはこのベースイメージにリンクされたインスタンスがハイパーバイザー上に残っていない場合、ベースイメージは未使用であると見なされます。

remove_unused_original_minimum_age_seconds = 86400

整数値

未使用のサイズ変更されたベースイメージは、この期間削除されません。

remove_unused_resized_minimum_age_seconds = 3600

整数値

未使用のサイズ変更されたベースイメージは、この期間削除されません。

subdirectory_name = _base

文字列値

キャッシュされたイメージの場所。

これは完全パスではありません。$instances_path に相対するフォルダー名のみになります。compute-host キャッシュされたイメージの場合は、base$my_ipに設定します。

9.1.23. ironic

以下の表は、/etc/nova/nova.conf ファイルの [ironic] グループで使用できるオプションの概要をまとめたものです。

表9.22 ironic
設定オプション = デフォルト値タイプ説明

api_max_retries = 60

整数値

要求の競合時に再試行する回数。0 に設定される場合、再試行は 1 回のみ試行します。

関連するオプション:

  • api_retry_interval

api_retry_interval = 2

整数値

要求を再試行するまで待機する秒数。

関連するオプション:

  • api_max_retries

auth-url = None

文字列値

認証 URL

auth_section = None

文字列値

プラグイン固有のオプションを読み込む config セクション

auth_type = None

文字列値

読み込む認証タイプ

cafile = None

文字列値

HTTP 接続の検証時に使用する PEM でエンコードされた認証局。

certfile = None

文字列値

PEM でエンコードされたクライアント証明書の証明書ファイル

collect-timing = False

ブール値

API ごとの呼び出しタイミング情報を収集します。

connect-retries = None

整数値

接続エラーに対して試行される再試行の最大数。

connect-retry-delay = None

浮動小数点の値

接続エラーに対する 2 つの再試行の遅延 (秒単位)。設定されていない場合は、最大 60 秒まで 0.5 秒から開始する指数関数の再試行が使用されます。

domain-id = None

文字列値

スコープするドメイン ID

domain-name = None

文字列値

スコープするドメイン名

endpoint-override = None

文字列値

このクライアントのリクエストには常にこのエンドポイント URL を使用します。注意: バージョンを指定しないエンドポイントはここで指定する必要があります。特定の API バージョンを要求するには、versionmin-version オプション、または max-version オプション、もしくはそれを組み合わせてを使用します。

insecure = False

ブール値

HTTPS 接続を確認します。

keyfile = None

文字列値

PEM でエンコードされたクライアント証明書キーファイル

partition_key = None

文字列値

大文字小文字の区別のないキーで、このサービスが管理することのできるノードのセットを、一致する conductor_group プロパティーを持つ Ironic 内のノードセットに制限します。未設定の場合は、このサービスで利用可能なすべてのノードが管理できるようになります。これを空の文字列 ("") に設定すると、デフォルトのコンダクタグループと一致し、オプションを未設定のままにするのとは異なることに注意してください。

password = None

文字列値

ユーザーのパスワード

peer_list = []

リスト値

この partition_key 設定値を持つすべての nova-compute サービス (このホストを含む) のホスト名のリスト。partition_key 値に一致するノードは、ここで指定したすべてのサービス間で分散されます。partition_key が設定されていない場合は、このオプションは無視されます。

project-domain-id = None

文字列値

プロジェクトを含むドメイン ID

project-domain-name = None

文字列値

プロジェクトを含むドメイン名

project-id = None

文字列値

スコープするプロジェクト ID

project-name = None

文字列値

スコープするプロジェクト名

region-name = None

文字列値

エンドポイント URL 検出のデフォルト region_name。

serial_console_state_timeout = 10

整数値

ノードのシリアルコンソールの状態が変更されるのを待つタイムアウト (秒)。タイムアウトを無効にするには 0 に設定します。

service-name = None

文字列値

エンドポイント URL 検出のデフォルト service_name。

service-type = baremetal

文字列値

エンドポイント URL 検出のデフォルト service_type。

split-loggers = False

ブール値

複数のロガーへの要求をログに記録します。

status-code-retries = None

整数値

再試行可能な HTTP ステータスコードに対して試行される再試行の最大数。

status-code-retry-delay = None

浮動小数点の値

再試行可能なステータスコードに対する 2 つの再試行間の遅延 (秒単位)。設定されていない場合は、最大 60 秒まで 0.5 秒から開始する指数関数の再試行が使用されます。

system-scope = None

文字列値

システム操作のスコープ

timeout = None

整数値

http 要求のタイムアウト値

trust-id = None

文字列値

trustee として使用する信頼の ID

user-domain-id = None

文字列値

ユーザーのドメイン ID

user-domain-name = None

文字列値

ユーザーのドメイン名

user-id = None

文字列値

User ID

username = None

文字列値

Username

valid-interfaces = ['internal', 'public']

リスト値

エンドポイント URL のインターフェイスのリスト (優先順)。

9.1.24. key_manager

以下の表は、/etc/nova/nova.conf ファイルの [key_manager] グループで使用できるオプションの概要をまとめたものです。

表9.23 key_manager
設定オプション = デフォルト値タイプ説明

auth_type = None

文字列値

作成する認証認証情報のタイプ。使用できる値は、トークンパスワードkeystone_token、および keystone_password です。コンテキストが認証情報ファクトリーに渡されない場合に必要です。

auth_url = None

文字列値

このエンドポイントを使用して Keystone に接続します。

backend = barbican

文字列値

キーマネージャーの実装を指定します。オプションは "barbican" および "vault" です。デフォルトは "barbican" です。しばらくの間、[key_manager]/api_class を使用して以前に設定された値をサポートします。

domain_id = None

文字列値

ドメインスコーピングのドメイン ID。keystone_token および keystone_password auth_type の場合はオプションです。

domain_name = None

文字列値

ドメインスコーピングのドメイン名。keystone_token および keystone_password auth_type の場合はオプションです。

fixed_key = None

文字列値

16 進法で指定されるキーマネージャーによって返されるキーが修正されました。

値:

  • 空の文字列または 16 進値のキー

password = None

文字列値

認証のパスワード。パスワード および keystone_password auth_type には必須です。

project_domain_id = None

文字列値

プロジェクトのドメイン ID。keystone_token および keystone_password auth_type の場合はオプションです。

project_domain_name = None

文字列値

プロジェクトのドメイン名。keystone_token および keystone_password auth_type の場合はオプションです。

project_id = None

文字列値

プロジェクトスコーピングのプロジェクト ID。keystone_token および keystone_password auth_type の場合はオプションです。

project_name = None

文字列値

プロジェクトスコーピングのプロジェクト名。keystone_token および keystone_password auth_type の場合はオプションです。

reauthenticate = True

ブール値

現在のトークンの有効期限が切れる場合の新規トークンの取得を許可します。keystone_token および keystone_password auth_type の場合はオプションです。

token = None

文字列値

認証のトークン。認証情報ファクトリーにコンテキストが渡されない場合には、トークン および keystone_token auth_type には必須です。

trust_id = None

文字列値

信頼スコープの信頼 ID。keystone_token および keystone_password auth_type の場合はオプションです。

user_domain_id = None

文字列値

認証用のユーザーのドメイン ID。keystone_token および keystone_password auth_type の場合はオプションです。

user_domain_name = None

文字列値

認証用のユーザーのドメイン名。keystone_token および keystone_password auth_type の場合はオプションです。

user_id = None

文字列値

認証のユーザー ID。keystone_token および keystone_password auth_type の場合はオプションです。

username = None

文字列値

認証用のユーザー名。パスワード auth_type には必須です。keystone_password auth_type の場合はオプションです。

9.1.25. keystone

以下の表は、/etc/nova/nova.conf ファイルの [keystone] グループ下で使用できるオプションの概要をまとめたものです。

表9.24 keystone
設定オプション = デフォルト値タイプ説明

auth-url = None

文字列値

認証 URL

auth_section = None

文字列値

プラグイン固有のオプションを読み込む config セクション

auth_type = None

文字列値

読み込む認証タイプ

cafile = None

文字列値

HTTP 接続の検証時に使用する PEM でエンコードされた認証局。

certfile = None

文字列値

PEM でエンコードされたクライアント証明書の証明書ファイル

collect-timing = False

ブール値

API ごとの呼び出しタイミング情報を収集します。

connect-retries = None

整数値

接続エラーに対して試行される再試行の最大数。

connect-retry-delay = None

浮動小数点の値

接続エラーに対する 2 つの再試行の遅延 (秒単位)。設定されていない場合は、最大 60 秒まで 0.5 秒から開始する指数関数の再試行が使用されます。

default-domain-id = None

文字列値

v3 および v2 パラメーターで使用するオプションのドメイン ID。v3 のユーザーおよびプロジェクトドメインに使用され、v2 認証では無視されます。

default-domain-name = None

文字列値

v3 API および v2 パラメーターで使用するオプションのドメイン名です。v3 のユーザーおよびプロジェクトドメインに使用され、v2 認証では無視されます。

domain-id = None

文字列値

スコープするドメイン ID

domain-name = None

文字列値

スコープするドメイン名

endpoint-override = None

文字列値

このクライアントのリクエストには常にこのエンドポイント URL を使用します。注意: バージョンを指定しないエンドポイントはここで指定する必要があります。特定の API バージョンを要求するには、versionmin-version オプション、または max-version オプション、もしくはそれを組み合わせてを使用します。

insecure = False

ブール値

HTTPS 接続を確認します。

keyfile = None

文字列値

PEM でエンコードされたクライアント証明書キーファイル

password = None

文字列値

ユーザーのパスワード

project-domain-id = None

文字列値

プロジェクトを含むドメイン ID

project-domain-name = None

文字列値

プロジェクトを含むドメイン名

project-id = None

文字列値

スコープするプロジェクト ID

project-name = None

文字列値

スコープするプロジェクト名

region-name = None

文字列値

エンドポイント URL 検出のデフォルト region_name。

service-name = None

文字列値

エンドポイント URL 検出のデフォルト service_name。

service-type = identity

文字列値

エンドポイント URL 検出のデフォルト service_type。

split-loggers = False

ブール値

複数のロガーへの要求をログに記録します。

status-code-retries = None

整数値

再試行可能な HTTP ステータスコードに対して試行される再試行の最大数。

status-code-retry-delay = None

浮動小数点の値

再試行可能なステータスコードに対する 2 つの再試行間の遅延 (秒単位)。設定されていない場合は、最大 60 秒まで 0.5 秒から開始する指数関数の再試行が使用されます。

system-scope = None

文字列値

システム操作のスコープ

tenant-id = None

文字列値

テナント ID

tenant-name = None

文字列値

テナント名

timeout = None

整数値

http 要求のタイムアウト値

trust-id = None

文字列値

trustee として使用する信頼の ID

user-domain-id = None

文字列値

ユーザーのドメイン ID

user-domain-name = None

文字列値

ユーザーのドメイン名

user-id = None

文字列値

User ID

username = None

文字列値

Username

valid-interfaces = ['internal', 'public']

リスト値

エンドポイント URL のインターフェイスのリスト (優先順)。

9.1.26. keystone_authtoken

以下の表は、/etc/nova/nova.conf ファイルの [keystone_authtoken] グループで使用できるオプションの概要をまとめたものです。

表9.25 keystone_authtoken
設定オプション = デフォルト値タイプ説明

auth_section = None

文字列値

プラグイン固有のオプションを読み込む config セクション

auth_type = None

文字列値

読み込む認証タイプ

auth_uri = None

文字列値

"パブリック" の Identity API エンドポイントを完了します。このエンドポイントは、すべてのエンドユーザーがアクセスできる必要があるため、"admin" エンドポイントにすることはできません。認証されていないクライアントは、認証のためにこのエンドポイントにリダイレクトされます。このエンドポイントにはバージョンを指定しないことが理想的ですが、ワイルドカードでのクライアントのサポートは異なります。バージョン指定された v2 エンドポイントを使用している場合、通常エンドユーザーがそのエンドポイントに到達できない可能性があるため、これはサービスユーザーがトークンを検証するために使用するエンドポイントにすることはできません。このオプションは www_authenticate_uri が優先されるため非推奨となり、S リリースで削除される予定です。非推奨:Queens 以降

*理由:* auth_uri オプションは www_authenticate_uri が優先されるため非推奨となり、S リリースで削除される予定です。

auth_version = None

文字列値

Identity API エンドポイントの API バージョン。

cache = None

文字列値

Swift キャッシュオブジェクトが保存される環境キーを要求します。auth_token ミドルウェアを Swift キャッシュと共にデプロイする場合は、このオプションを使用して、ミドルウェアが Swift とキャッシングバックエンドを共有するようにします。それ以外の場合は、代わりに memcached_servers オプションを使用します。

cafile = None

文字列値

HTTPs 接続の検証時に使用する PEM でエンコードされた認証局。デフォルトはシステム CA です。

certfile = None

文字列値

ID サーバーでクライアント証明書が必要な場合に必要です。

delay_auth_decision = False

ブール値

ミドルウェア内の認可要求を処理せず、承認の決定をダウンストリームの WSGI コンポーネントに委譲します。

enforce_token_bind = permissive

文字列値

トークンバインディングの使用および種別を制御するために使用されます。トークンバインディングのチェックを無効するには、"disabled" に設定します。バインドタイプがサーバーの認識する形式の場合にはバインディング情報を検証し、そうでない場合には無視するには、"permissive" (デフォルト) に設定します。"strict" は "permissive" と類似していますが、バインドタイプが不明な場合にはトークンが拒否されます。"required" の場合は、いずれかの形式のトークンバインディングが必要です。最後に、トークンに指定する必要のあるバインディングメソッドの名前。

http_connect_timeout = None

整数値

Identity API サーバーと通信する際の要求タイムアウト値。

http_request_max_retries = 3

整数値

Identity API サーバーと通信する際に再接続を試行する回数。

include_service_catalog = True

ブール値

(オプション)X-Service-Catalog ヘッダーを設定するかどうかを示します。False の場合、ミドルウェアはトークンの検証時にサービスカタログを要求せず、X-Service-Catalog ヘッダーを設定しません。

insecure = False

ブール値

HTTPS 接続を確認します。

interface = internal

文字列値

Identity API エンドポイントに使用するインターフェイス。有効な値は、"public"、"internal" (デフォルト)、または "admin" です。

keyfile = None

文字列値

ID サーバーでクライアント証明書が必要な場合に必要です。

memcache_pool_conn_get_timeout = 10

整数値

(オプション) プールから memcached クライアント接続を取得するまで操作が待機する秒数。

memcache_pool_dead_retry = 300

整数値

(オプション)memcached サーバーが停止しているとみなされる秒数。この秒数が経過すると再試行されます。

memcache_pool_maxsize = 10

整数値

(オプション) すべての memcached サーバーへのオープン接続の最大合計数。

memcache_pool_socket_timeout = 3

整数値

(オプション)memcached サーバーと通信する際のソケットのタイムアウト (秒単位)。

memcache_pool_unused_timeout = 60

整数値

(オプション)memcached への接続がプール内で未使用の状態を維持する秒数。この秒数が経過すると終了されます。

memcache_secret_key = None

文字列値

(オプション、memcache_security_strategy が定義されている場合には必須) この文字列は鍵の導出に使用されます。

memcache_security_strategy = None

文字列値

(オプション) 定義されている場合は、トークンデータを認証、または認証して暗号化する必要があるかどうかを示します。MAC の場合、キャッシュでトークンデータが認証されます (HMAC を使用)。ENCRYPT の場合、キャッシュでトークンデータが暗号化され、認証されます。値がこれらのオプションのいずれでもない場合や空の場合には、auth_token は初期化時に例外を発生させます。

memcache_use_advanced_pool = True

ブール値

(オプション) 高度な (eventlet に対して安全な) memcached クライアントプールを使用します。

memcached_servers = None

リスト値

オプションで、キャッシュに使用する memcached サーバーのリストを指定します。未定義のままの場合、トークンは代わりに処理中にキャッシュされます。

region_name = None

文字列値

アイデンティティーサーバーがあるリージョン。

service_token_roles = ['service']

リスト値

サービストークンに存在する必要があるロールの選択。サービストークンは、期限切れのトークンを使用できることを要求できるため、このチェックでは実際のサービスのみがこのトークンを送信するように厳密に制御する必要があります。ここでのロールは ANY チェックとして適用されるため、このリストのロールはすべて存在している必要があります。後方互換性の理由から、現在 allow_expired チェックにのみ影響します。

service_token_roles_required = False

ブール値

後方互換性の理由から、service_token_roles チェックを有効としてパスしない有効なサービストークンをパスさせる必要があります。これを true に設定することが今後のリリースでデフォルトとなり、可能な場合は有効にされる必要があります。

service_type = None

文字列値

サービスカタログに表示されるサービスの名前または種別。これは、制限されたアクセスルールがあるトークンを検証するために使用されます。

token_cache_time = 300

整数値

トークンの検証に過剰な時間を費やすのを防ぐために、ミドルウェアは、設定可能な期間 (秒単位) 中は以前に見たトークンをキャシュします。キャッシュを完全に無効にするには -1 に設定します。

www_authenticate_uri = None

文字列値

"パブリック" の Identity API エンドポイントを完了します。このエンドポイントは、すべてのエンドユーザーがアクセスできる必要があるため、"admin" エンドポイントにすることはできません。認証されていないクライアントは、認証のためにこのエンドポイントにリダイレクトされます。このエンドポイントにはバージョンを指定しないことが理想的ですが、ワイルドカードでのクライアントのサポートは異なります。バージョン指定された v2 エンドポイントを使用している場合、通常エンドユーザーがそのエンドポイントに到達できない可能性があるため、これはサービスユーザーがトークンを検証するために使用するエンドポイントにすることはできません

9.1.27. libvirt

以下の表は、/etc/nova/nova.conf ファイルの [libvirt] グループで使用できるオプションの概要をまとめたものです。

表9.26 libvirt
設定オプション = デフォルト値タイプ説明

`connection_uri = `

文字列値

選択した仮想化タイプのデフォルトの libvirt URI を上書きします。

これが設定されている場合、Nova はこの URI を使用して libvirt に接続します。

値:

  • qemu:///system のような URI。

    This is only necessary if the URI differs to the commonly known URIs
    for the chosen virtualization type.

関連するオプション:

  • virt_type: ここでデフォルト値として使用されるものに影響を与えます。

cpu_mode = None

文字列値

インスタンスが持つ CPU モードの設定に使用されます。

virt_type="kvm&verbar;qemu" の場合、これはデフォルトで host-model になります。それ以外の場合は、デフォルトは none になります。

関連するオプション:

  • cpu_models: これは、cpu_modecustom に設定されている場合にのみ設定する必要があります。そうでない場合にはエラーが生じ、インスタンスの起動は失敗します。

cpu_model_extra_flags = []

リスト値

ゲスト CPU フラグを有効または無効にします。

CPU フラグを明示的に有効または無効にするには、+flag または -flag 表記を使用します。+ 記号を使用すると、ゲストの CPU フラグが有効になります。一方、- 記号はこれを無効にします。+ および - を指定しない場合、フラグが有効になります。これがデフォルトの動作になります。たとえば、次のように指定した場合 (前述の CPU モデルと機能がホストハードウェアとソフトウェアでサポートされていると仮定)::

[libvirt]
cpu_mode = custom
cpu_models = Cascadelake-Server
cpu_model_extra_flags = -hle, -rtm, +ssbd, mtrr

Nova は、ゲストの hle フラグと rtm フラグを無効にします。ssbdmttr が有効になります (+ 接頭辞も - 接頭辞も指定されていないため)。

CPU フラグは大文字と小文字を区別しません。以下の例では、ゲストに対して pdpe1gb フラグが無効になります。vmx フラグおよび pcid フラグが有効になります。

[libvirt]
cpu_mode = custom
cpu_models = Haswell-noTSX-IBRS
cpu_model_extra_flags = -PDPE1GB, +VMX, pcid

追加の CPU フラグを指定することは、cpu_mode config 属性の 3 つの可能な値すべてと組み合わせて有効です: custom (これには、cpu_models config 属性を介して明示的な CPU モデルを指定する必要もあります)、host-model、または host-passthrough

QEMU が特定の CPU 機能を無効にする可能性があるため、host-passthrough CPU モードであっても追加の CPU フラグを設定しなければならない場合があります。この例として、Intel の "invtsc" (不変タイムスタンプカウンター)CPU フラグがあります。このフラグを Nova インスタンスに公開する必要がある場合は、明示的に有効にする必要があります。

cpu_model_extra_flags で使用できる値は、使用中の CPU モデルによって異なります。特定の CPU モデルで使用可能な CPU 機能フラグは、/ usr/share/libvirt/cpu_map/*.xml を参照してください。

特定の CPU フラグに関する特記事項: pcid(Meltdown CVE 修正を適用した結果としてのゲストパフォーマンスの低下を軽減する Intel プロセッサー機能)。custom CPU モードでこのフラグを設定する場合、すべての CPU モデル (QEMU および libvirt で定義されている) が必要なわけではありません。

  • pcid 機能を含む唯一の仮想 CPU モデルは、Intel の "Haswell"、"Broadwell"、および "Skylake" バリアントです。
  • libvirt/QEMU CPU モデル "Nehalem"、"Westmere"、"SandyBridge"、および "IvyBridge" は、同じ名前のホスト CPU に含まれている場合でも、デフォルトで pcid 機能を公開し ません。つまり上記の仮想 CPU モデルを使用する場合は、PCID を明示的に指定する必要があります。

libvirt ドライバーのデフォルトの CPU モードである host-model は、ゲストの PCID CPU フラグの処理に関して正しいことを行います—更新されたプロセッサーマイクロコード、ホストとゲストのカーネル、libvirt、および QEMU を実行していると 仮定します。もう 1 つのモードである host-passthrough は、PCID がハードウェアで使用可能かどうかを確認し、使用可能な場合は直接 Nova ゲストに渡します。したがって、PCID のコンテキストでは、CPU モード (host-model または host-passthrough) のいずれかについては、cpu_model_extra_flags を使用する必要はありません。

関連するオプション:

  • cpu_mode
  • cpu_models

cpu_models = []

リスト値

ホストが対応する CPU モデルの順序付きリスト。

より一般的で詳細度の低い CPU モデルが先にリストされるように、リストが順序付けられることが予想されます。例: SandyBridge,IvyBridge,Haswell,Broadwell、後者の CPU モデルの機能は、以前の CPU モデルに多大なものです。

値:

  • 名前付きの CPU モデルは、virsh cpu-models ARCH から確認でき、ARCH はホストのアーキテクチャーになります。

関連するオプション:

  • cpu_mode: これは、特定の名前付き CPU モデルを (cpu_models を介して) 設定する場合にのみ custom に設定する必要があります。そうでない場合にはエラーが生じ、インスタンスの起動は失敗します。
  • virt_type: 仮想化タイプ kvm および qemu のみがこれを使用します。

    1. 注意:: ハードウェアで完全にサポートできるモデルのみを指定するように注意してください。

cpu_power_governor_high = performance

文字列値

最高の CPU パフォーマンスを得るために使用するガバナー

cpu_power_governor_low = powersave

文字列値

CPU の消費電力を削減するために使用するガバナー

cpu_power_management = False

ブール値

libvirt を使用して CPU コアのパフォーマンスを管理します。

cpu_power_management_strategy = cpu_state

文字列値

未使用時の CPU 消費電力を削減するチューニングストラテジー

device_detach_attempts = 8

整数値

ドライバーが libvirt でデバイスの接続解除を試行する最大試行回数。

関連するオプション:

  • :oslo.config:option:libvirt.device_detach_timeout

device_detach_timeout = 20

整数値

ドライバーが、デバイスの接続解除を再トリガーする前に、libvirt からの成功イベントまたは失敗イベントを待機する最大秒数。

関連するオプション:

  • :oslo.config:option:libvirt.device_detach_attempts

disk_cachemodes = []

リスト値

異なるディスクタイプに使用する特定のキャッシュモード。

例: file=directsync,block=none,network=writeback

ローカルストレージまたは直接接続ストレージの場合は、ライトスルー (デフォルト) モードを使用することを推奨します。これにより、データの整合性が確保され、ゲストで実行されるアプリケーション、特に読み取り操作で許容できる I/O パフォーマンスが得られます。ただし、(O_SYNC を使用する) 同期 I/O 操作よりも、ダイレクト I/O 操作 (O_DIRECT) よりもパフォーマンスが高いため、リモート NFS ストレージにはキャッシュモード none が推奨されます。キャッシュモードは、すべてのゲスト I/O 操作を効果的にホスト上のダイレクト I/O 操作 (この環境の NFS クライアント) に変換します。

可能なキャッシュモード:

  • デフォルト: "It Depends" — Nova マネージドディスクの場合、ホストファイルシステムが Linux の O_DIRECT セマンティクスに対応している場合は none。それ以外の場合は writeback。ボリュームドライバーの場合、デフォルトはドライバーに依存します。SMBFS と Virtuzzo (writeback を使用) を除くすべてのドライバーは、none となります。
  • なし: キャッシングモードを none に設定すると、ホストのページキャッシュは無効になりますが、ゲストのディスクライトキャッシュは有効になります。このモードでは、書き込み操作がホストページキャッシュをバイパスし、ディスク書き込みキャッシュに直接移動するため、ゲストの書き込みパフォーマンスが最適です。ディスク書き込みキャッシュがバッテリバックアップされている場合、またはゲスト内のアプリケーションまたはストレージスタックがデータを適切に転送する場合 (fsync 操作またはファイルシステムバリアを介して)、データの整合性を確保できます。ただし、ホストページキャッシュは無効になっているため、writethrough モードなど、ホストページキャッシュが有効になっているモードの場合、ゲストの読み取りパフォーマンスは適切ではありません。マルチ接続可能なブロックストレージボリュームと同様に、共有可能なディスクデバイスは、設定に関係なくキャッシュモードが none に設定されます。
  • writethrough: caching を writethrough モードに設定したと、ホストページキャッシュが有効になりますが、ゲストのディスク書き込みキャッシュは無効になります。したがって、このキャッシュモードは、ゲスト内のアプリケーションとストレージスタックがデータを永続ストレージに適切に転送しない場合でも (fsync 操作またはファイルシステムバリアを介して) データの整合性を保証します。ホストページキャッシュはこのモードで有効になっているため、ゲストで実行されているアプリケーションの読み取りパフォーマンスが一般的です。ただし、ディスク書き込みキャッシュが無効になるため、書き込みパフォーマンスが低下する可能性があります。
  • writeback: キャッシングを writeback モードに設定すると、ゲストに対してホストページキャッシュとディスク書き込みキャッシュの両方が有効になります。このため、ゲストで実行しているアプリケーションの I/O パフォーマンスは優れていますが、データは電源障害で保護されません。そのため、このキャッシュモードは、潜在的なデータ損失が懸念しない一時的なデータにのみ推奨されます。注意: 定のバックエンドディスクメカニズムは、安全なライトバックキャッシュセマンティクスを提供する場合があります。具体的には、QEMU の統合 RBD ドライバーなどのホストページキャッシュをバイパスします。Ceph ドキュメントは、データの安全性を維持しながら、パフォーマンスを最大化するためにこれをライトバックに設定することを推奨します。
  • directsync: "writethrough" と同様に、ホストページキャッシュはバイパスします。
  • unsafe: 安全でないキャッシュモードは、キャッシュ転送操作を完全に無視します。名前が示すように、このキャッシュモードは、データ損失が懸念しない一時的なデータにのみ使用する必要があります。このモードは、ゲストのインストールを迅速化するのに便利ですが、実稼働環境では別のキャッシュモードに切り替える必要があります。

disk_prefix = None

文字列値

インスタンスに接続されているデバイスのデフォルトディスク接頭辞を上書きします。

これが設定されている場合は、バスの空きディスクデバイス名を特定するために使用されます。

値:

  • たとえば、sdahda などの有効なディスクデバイス名になります。これは、デバイス名が、sd、xvd、uvd、vd などの仮想化タイプの一般的に既知のデバイス名の接頭辞と異なる場合にのみ必要です。

関連するオプション:

  • virt_type: 使用するデバイスの種類に影響します。これにより、デフォルトのディスク接頭辞が決まります。

enabled_perf_events = []

リスト値

統計を監視および収集するパフォーマンスイベント。

これにより、イベントのリストを指定してゲストの低レベルのパフォーマンスを監視し、Linux カーネルの perf インフラストラクチャーを使用する libvirt ドライバーを介して関連する統計を収集できます。この設定属性が設定されると、Nova は libvirt ゲスト XML を生成して指定されたイベントを監視します。

たとえば、CPU サイクルの数 (合計/ 経過) とキャッシュミスの数を監視するには、次のように有効にします。

[libvirt]
enabled_perf_events = cpu_clock, cache_misses

可能な値: 文字列リスト。サポートされているイベントのリストをここで見つけることができます。Intel CMT イベント - `cmtmbmbt および mbml - 最近の Linux カーネルバージョン (4.14+) ではサポートされておらず、nova によって無視されます。

__ https://libvirt.org/formatdomain.html#elementsPerf.

file_backed_memory = 0

整数値

ファイルベースのメモリーに利用可能な容量 (MiB 単位)。

ファイルベースのメモリーを無効にするには 0 に設定します。

有効にすると、インスタンスは /etc/libvirt/qemu.confmemory_backing_dir オプションで指定したディレクトリーにメモリーファイルを作成します。デフォルトの場所は /var/lib/libvirt/qemu/ram です。

有効にすると、このオプションに定義された値はノードのメモリー容量として報告されます。コンピュートノードシステムのメモリーは、カーネルのページキャッシュメカニズムを介してファイルベースのメモリーのキャッシュとして使用されます。

  1. 注意: この機能は hugepages と互換性がありません。
  2. note:: この機能はメモリーのオーバーコミットと互換性がありません。

関連するオプション:

  • virt_typekvm または qemu に設定する必要があります。
  • ram_allocation_ratio は 1.0 に設定する必要があります。

gid_maps = []

リスト値

guid ターゲットと範囲のリスト。Syntax は guest-gid:host-gid:count です。最大 5 つまで許容されます。

hw_disk_discard = None

文字列値

nova 管理ディスク用の discard オプション。

以下が必要です。

  • Libvirt >= 1.0.6
  • Qemu> = 1.5 (raw 形式)
  • Qemu>= 1.6 (qcow2 形式)

hw_machine_type = None

リスト値

qemu ゲストまたは KVM ゲストの場合は、ホストアーキテクチャーごとにデフォルトのマシン種別を指定するには、このオプションを設定します。お使いの環境でサポートされているマシンタイプのリストは、virsh capabilities コマンドの出力を確認することで見つけることができます。この設定オプションの値の形式は host-arch=machine-type です。例: x86_64=machinetype1,armv7l=machinetype2

`images_rbd_ceph_conf = `

文字列値

使用する Ceph 設定ファイルへのパス

images_rbd_glance_copy_poll_interval = 15

整数値

イメージをローカル rbd ストアにコピーするように要求した後、Glance をポーリングする間隔 (秒単位)。これは、Glance にコピー完了の報告を依頼する頻度に影響するため、すぐにわかるように十分に短くする必要がありますが、Glance サーバーに過度の負荷が発生するほど積極的ではありません。

関連するオプション:

  • images_type - rbd に設定する必要があります。
  • images_rbd_glance_store_name - must be set to a store name

images_rbd_glance_copy_timeout = 600

整数値

Glance がローカル rbd ストアへのイメージコピーを完了するまで待機する全体の最大時間。これは、ローカルストアとイメージが通常存在するストアとの間のネットワークリンクを介して大きなイメージをコピーできるようにするのに十分な長さである必要があります。これを長く設定することの欠点は、イメージコピーが停止したり、処理が遅すぎて役に立たない場合を捉えることです。実際のエラーは Glance によって報告され、ポーリング間隔に従って通知されます。

関連するオプション:

  • images_type - rbd に設定する必要があります。
  • images_rbd_glance_store_name - must be set to a store name
  • images_rbd_glance_copy_poll_interval - controls the failure time-to-notice

`images_rbd_glance_store_name = `

文字列値

このノードで使用されている rbd クラスターを表す Glance ストアの名前。設定すると、Nova は既存の非ローカルストアからこのオプションで指定されたストアにイメージをコピーするように、起動前に Glance に要求できるため、適切なコピーオンライト動作が維持されます。

関連するオプション:

  • images_type - rbd に設定する必要があります。
  • images_rbd_glance_copy_poll_interval - ステータスのポーリング頻度を制御します。
  • images_rbd_glance_copy_timeout - 全体的なコピータイムアウトを制御します。

images_rbd_pool = rbd

文字列値

rbd ボリュームが保存される RADOS プール

images_type = default

文字列値

VM イメージの形式。

default が指定されている場合には、このフラグの代わりに use_cow_images フラグが使用されます。

関連するオプション:

  • compute.use_cow_images
  • images_volume_group
  • [workarounds]/ensure_libvirt_rbd_instance_dir_cleanup
  • compute.force_raw_images

images_volume_group = None

文字列値

images_type=lvm を指定すると、仮想マシンイメージに使用される LVM ボリュームグループ

関連するオプション:

  • images_type

inject_key = False

ブール値

起動時に SSH キーの挿入を許可します。

これを実行するために、イメージ内にエージェントは必要ありません。ホストで libguestfs が利用可能な場合は、それが使用されます。それ以外の場合は nbd が使用されます。イメージのファイルシステムがマウントされ、REST API 呼び出しで提供される SSH キーは root ユーザーの SSH キーとして挿入され、そのユーザーの authorized_keys に追加されます。必要に応じて SELinux コンテキストが設定されます。インスタンスがボリュームから起動すると、インジェクションができ ない ことに注意してください。

この設定オプションは、インスタンスディスクを直接変更できるようにし、config_drive オプションまたはメタデータサービスからのデータを使用して cloud-init が実行できる内容には影響しません。

Linux ディストリビューションゲストのみ。

関連するオプション:

  • inject_partition: このオプションは、ファイルシステムの検出および使用方法を決定します。また、インジェクションを無効にすることもできます。

inject_partition = -2

整数値

データを挿入するためにファイルシステムを選択する方法を決定します。

libguestfs は、データの挿入に使用されます。libguestfs がルートパーティションを特定できない場合 (ルートパーティションが複数または少ないため)、またはファイルシステムをマウントできない場合、エラーが発生し、インスタンスは起動しません。

値:

  • -2 ⇒ データの挿入を無効にします。
  • -1 ⇒ libguestfs でマウントするファイルシステムでルートパーティションを見つけます
  • 0 ⇒ イメージが分割されていません
  • >0 ⇒ 注入に使用するパーティションの数

Linux ディストリビューションゲストのみ。

関連するオプション:

  • inject_key: このオプションが SSH キーの挿入を許可する場合、inject_partition の -1 以上の値に依存します。
  • inject_password: このオプションが管理者パスワードの挿入を許可する場合は、inject_partition の -1 以上の値に依存します。
  • [guestfs]/debug この設定オプションで libguestfs のデバッグログレベルを有効にできます。より詳細な出力は、問題のデバッグに役立ちます。
  • virt_type: lxc を virt_type として使用する場合、単一のパーティションイメージとして処理されます。

inject_password = False

ブール値

create および rebuild プロセス時のみなどに、管理者パスワードの挿入を許可します。

これを実行するために、イメージ内にエージェントは必要ありません。ホストで libguestfs が利用可能な場合は、それが使用されます。それ以外の場合は nbd が使用されます。イメージのファイルシステムがマウントされ、管理者パスワードが REST API 呼び出しに提供されたものが root ユーザーのパスワードとしてインジェクトされます。利用可能な root ユーザーがない場合、インスタンスは起動せず、エラーが発生します。インスタンスがボリュームから起動すると、インジェクションができ ない ことに注意してください。

Linux ディストリビューションゲストのみ。

値:

  • インジェクションを許可します。
  • インジェクションを無効にします。REST API が提供する管理者パスワード経由はすべて警告なしで無視されます。

関連するオプション:

  • inject_partition: このオプションは、ファイルシステムの検出および使用方法を決定します。また、インジェクションを無効にすることもできます。

iscsi_iface = None

文字列値

オフロードサポートが必要な場合に、ターゲットへの接続に使用する iSCSI トランスポートが必要です。

デフォルトの形式は <transport_name>.<hwaddress> です。<transport_name> は (be2iscsibnx2icxgb3icxgb4iqla4xxxocstcp) のいずれかであり、<hwaddress> はインターフェイスの MAC アドレスであり、iscsiadm -m iface コマンドで生成されます。ここで指定する iscsi_iface パラメーターと実際のトランスポート名を混同しないでください。

iser_use_multipath = False

ブール値

iSER ボリュームのマルチパス接続を使用します。

iSER ボリュームはマルチパスデバイスとして接続できます。これにより、高可用性とフォルトトレランスが提供されます。

live_migration_bandwidth = 0

整数値

移行時に使用する最大帯域幅 (MiB/秒)。

0 に設定すると、ハイパーバイザーは適切なデフォルトを選択します。一部のハイパーバイザーはこの機能をサポートしておらず、帯域幅が 0 ではない場合はエラーを返します。詳細は libvirt のドキュメントを参照してください。

live_migration_completion_timeout = 800

整数値

操作を中止する前に、移行がデータの転送を正常に完了するまで待機する時間 (秒単位)。

値は、転送されるゲスト RAM あたり 2 GiB あたりで、最小 2 GiB の境界が低くなっています。通常、ダウンタイムの遅延 * ダウンタイムステップよりも大きくする必要があります。タイムアウトを無効にするには 0 に設定します。

関連するオプション:

  • live_migration_downtime
  • live_migration_downtime_steps
  • live_migration_downtime_delay

live_migration_downtime = 500

整数値

メモリーコピーの最後の部分で Nova がインスタンスを一時停止のまま維持しようとする最大目標時間 (ミリ秒)。

最小 100 ミリ秒まで丸められます。ライブマイグレーションをより迅速に完了させたい場合や、ライブマイグレーション間の切り替え中にゲストを一時停止できるようにすることで、ライブマイグレーションのタイムアウトエラーを回避したい場合は、この値を大きくすることができます。仮想マシンが一時停止した後に転送速度が低下した場合、この値を超える可能性があります。

関連するオプション:

  • live_migration_completion_timeout

live_migration_downtime_delay = 75

整数値

移行のダウンタイムが各ステップで増加するまでの待機時間 (秒単位)。

最小遅延は 3 秒です。値は、転送されるゲスト RAM あたり 2 GiB あたりで、デバイスあたり最低 2 GiB のバインドが低くなっています。

live_migration_downtime_steps = 10

整数値

最大ダウンタイム値に達する増分ステップの数。

少なくとも 3 つのステップに丸められます。

live_migration_inbound_addr = None

ホストドメインの値

このホストのライブマイグレーションアドレスとして使用される IP アドレス。

このオプションは、このハイパーバイザーに移行するときにライブマイグレーショントラフィックのターゲットとして使用する IP アドレスを示します。このメタデータは、ライブマイグレーショントラフィックのソースによって使用され、マイグレーション URI が構築されます。

このオプションが None に設定されている場合、移行先のコンピュートノードのホスト名が使用されます。

このオプションは、ライブマイグレーションのトラフィックがネットワークプレーンに大きく影響する環境で役に立ちます。ライブマイグレーショントラフィックに別のネットワークを使用すると、この設定オプションを使用して管理ネットワークに影響が及ばないようにすることができます。

live_migration_permit_auto_converge = False

ブール値

このオプションにより、nova は自動収束を使用してライブマイグレーションを開始できます。

ライブマイグレーションの進行が遅い場合に、自動収束が CPU ダウンします。自動収束は、このフラグが True に設定されている場合にのみ使用されます。また、使用中の libvirt および QEMU のバージョンにより、ポストコピーが許可またはポストコピーが利用できない場合にのみ使用されます。

関連するオプション:

  • live_migration_permit_post_copy

live_migration_permit_post_copy = False

ブール値

このオプションにより、nova は、移行が完了する必要のあるメモリーの上限が上限になるように、ライブマイグレーションをポストコピーモードに切り替えることができます。Post-copy には libvirt>=1.3.3 および QEMU>=2.5.0 が必要です。

live_migration_completion_timeout で定義したタイムアウトに到達し、live_migration_timeout_actionforce_complete に設定されていると、コピー後のモードは自動的にアクティベートされます。タイムアウトなし、または 中止 を選択した場合 (live_migration_completion_timeout = 0)、ポストコピーへの自動切り替えが行われないことに注意してください。

ライブマイグレーションの強制完全な API は、許可された場合にコピー後にも使用します。post-copy モードが利用できない場合は、仮想マシンが一時停止するように強制し、ライブマイグレーションの操作が完了するようにします。

post-copy モードを使用する場合、移行元ホストと移行先ホストがネットワーク接続を失った場合は、ライブマイグレーションされている仮想マシンを再起動する必要があります。詳細は、管理ガイドを参照してください。

関連するオプション:

  • live_migration_permit_auto_converge
  • live_migration_timeout_action

live_migration_scheme = None

文字列値

ライブマイグレーショントラフィックのソースによって使用されるライブマイグレーションの URI スキーム。

デフォルトの libvirt ライブマイグレーションスキームをオーバーライドします (virt_type に依存します)。このオプションが None に設定されている場合、nova はハイパーバイザーに基づいて適切なデフォルトを自動的に選択します。ハイパーバイザーが特定のスキームをサポートしていることが分からない場合は、この変更は推奨されません。

関連するオプション:

  • virt_type: このオプションは、virt_typekvm または qemu に設定されている場合にのみ意味があります。
  • live_migration_uri: live_migration_uri 値が None でない場合、ライブマイグレーションに使用されるスキームは代わりに live_migration_uri から取得されます。

live_migration_timeout_action = abort

文字列値

このオプションは、live_migration_completion_timeout の期限が切れた後に仮想マシンに対して実行するアクションを決定するのに使用します。デフォルトでは、ライブマイグレーション操作は完了タイムアウト後に中止されます。force_complete に設定された場合、ポストコピーが有効で利用可能かどうかによって、コンピュートサービスは VM を一時停止するか、ポストコピーを起動します (live_migration_permit_post_copy が True に設定されている場合)。

関連するオプション:

  • live_migration_completion_timeout
  • live_migration_permit_post_copy

live_migration_tunnelled = False

ブール値

トンネル化された移行を有効にします。

このオプションにより、移行データが libvirtd 接続で転送されるトンネル化された移行機能が有効になります。有効にすると、VIR_MIGRATE_TUNNELLED 移行フラグを使用し、ハイパーバイザーからハイパーバイザーへの直接通信を許可するようにネットワークを設定する必要がなくなります。False の場合は、ネイティブトランスポートを使用します。設定されていない場合、Nova はハイパーバイザーでのネイティブ暗号化サポートの可用性など、適切なデフォルトをベースとして選択します。このオプションを有効にすると、パフォーマンスに大きく影響します。

このオプションは、ブロックマイグレーションの使用と互換性がありません。

非推奨: 23.0.0

理由: "トンネル化されたライブマイグレーション" には固有の制限が 2 つあります。そして、それには莫大なパフォーマンスコストがかかります。これらの問題は両方とも ``live_migration_with_native_tls`` (事前に設定された TLS 環境が必要です) によって解決されます。これは、すべてのライブマイグレーションストリームを保護するための推奨されるアプローチです。

live_migration_uri = None

文字列値

ライブマイグレーショントラフィックのソースによって使用されるライブマイグレーションターゲット URI。

デフォルトの libvirt ライブマイグレーションターゲット URL をオーバーライドします (virt_type に依存します)。含まれる "%s" は、移行ターゲットのホスト名、または設定されている場合は live_migration_inbound_addr に置き換えられます。

このオプションを None に設定すると (これがデフォルトです)、Nova は以下のリストにある 4 つのサポートされる virt_type のみに基づいて live_migration_uri 値を自動的に生成します。

  • kvm: qemu+tcp://%s/system
  • qemu: qemu+tcp://%s/system
  • parallels: parallels+tcp://%s/system

関連するオプション:

  • live_migration_inbound_addr: live_migration_inbound_addr の値が None ではなく、live_migration_tunnelled が False の場合、ライブマイグレーションの uri として live_migration_uri の代わりにターゲットコンピュートノードの IP/ホスト名アドレスが使用されます。
  • live_migration_scheme: live_migration_uri が設定されていない場合、ライブマイグレーションに使用されるスキームは代わりに live_migration_scheme から取得されます。

非推奨となったバージョン: 15.0.0

理由: live_migration_uri は非推奨で、ライブマイグレーションスキームとターゲット URI を変更できる他の 2 つのオプション、``live_migration_scheme`` と ``live_migration_inbound_addr`` に変更されました。

live_migration_with_native_tls = False

ブール値

ライブマイグレーション時に QEMU ネイティブ TLS 暗号化を使用します。

このオプションにより、マイグレーションストリーム (ゲスト RAM とデバイスの状態) ディスクストリームの両方がネイティブ TLS (QEMU に組み込まれた TLS サポート) で転送されるようになります。

前提条件: 関連するすべてのコンピュートノードで TLS 環境が正しく設定されている。つまり、認証局 (CA)、サーバー、クライアント証明書、それらに対応する鍵、およびそれらのファイルパーミッションが適切に配置され、検証されていることを意味する。

注記:

  • マイグレーションストリームとディスクストリームを暗号化する ("ブロックマイグレーション" とも呼ばれる) には、live_migration_tunnelled の代わりに live_migration_with_native_tls が望ましい設定属性です。
  • live_migration_tunnelled は、主要な 2 つの理由により長期で非推奨になりました。(a) は、パフォーマンスが大幅に低下し、ブロックマイグレーションと互換性がない (b) です。したがって、コンピュートノードに libvirt 4.4.0 および QEMU 2.11.0 以上がある場合は、live_migration_with_native_tls を使用することを強く推奨します。
  • live_migration_tunnelled および live_migration_with_native_tls は同時に使用しないでください。
  • live_migration_tunnelled とは異なり、live_migration_with_native_tls ブロック移行と互換性があります。つまり、このオプションを使用すると、ディスクがターゲットホストに移行される NBD ストリームが暗号化されます。

関連するオプション:

live_migration_tunnelled: libvirtd 経由で移行ストリーム (ディスクストリームではない) を転送します。

max_queues = None

整数値

マルチキューゲストの作成時に有効にできる virtio キューペアの最大数。割り当てられる virtio キューの数は、ゲストによって要求される CPU と定義される最大値のどちらか小さい方です。デフォルトでは、この値は none に設定されています。つまり、報告されたカーネルのメジャーバージョンに基づくレガシー制限が使用されます。

mem_stats_period_seconds = 10

整数値

メモリー使用量の統計期間の秒数。ゼロまたは負の値を指定すると、メモリー使用率の統計が無効になります。

nfs_mount_options = None

文字列値

NFS クライアントに渡されるマウントオプション。詳細は、nfs の man ページのセクションを参照してください。

マウントオプションは、ファイルシステムのマウント方法と、このマウントポイント上のファイルへのアクセス時に NFS クライアントがどのように動作するかを制御します。

値:

  • コンマで区切られたマウントオプションを表す文字列。
  • 例の文字列: vers=3,lookupcache=pos

nfs_mount_point_base = $state_path/mnt

文字列値

NFS ボリュームがコンピュートノードにマウントされているディレクトリー。デフォルトは、nova の Python モジュールがインストールされている場所の mnt ディレクトリーです。

NFS は、OpenStack Block Storage サービスの共有ストレージを提供します。

値:

  • マウントポイントの絶対パスを表す文字列。

num_aoe_discover_tries = 3

整数値

AoE ターゲットを再検出してボリュームを見つける回数。

Nova は、AOE (ATA over Ethernet) 経由でホストに接続するブロックストレージをサポートしています。このオプションを使用すると、ユーザーは AoE デバイスを検出できる再試行の最大試行回数を指定できます。

num_iser_scan_tries = 5

整数値

ボリュームを見つけるために iSER ターゲットをスキャンする回数。

iSER は、RDMA (Remote Direct Memory Access) を使用するように iSCSI プロトコルを拡張するサーバーネットワークプロトコルです。このオプションを使用すると、ユーザーは iSER ボリュームを検索することができるスキャン試行の最大数を指定できます。

num_memory_encrypted_guests = None

整数値

このコンピュートホストで同時に実行できる、暗号化されたメモリーを持つゲストの最大数。

現在、これは SEV (Secure Encrypted Virtualization) をサポートする AMD マシンにのみ関連します。このようなマシンには、暗号鍵を格納するためのメモリーコントローラー内のスロット数が限定されています。暗号化したメモリーを持つ実行中のゲストは、これらのスロットの 1 つを消費します。

このオプションは、今後、他の同等の技術で再利用できます。マシンがメモリーの暗号化に対応していない場合、オプションは無視され、インベントリーが 0 に設定されます。

マシンがメモリーの暗号化に対応している場合、現在None という値は、実質的に無制限のインベントリーを意味します。つまり、基盤のハードウェアが独自の制限を実施する場合でも、Nova が起動できる SEV ゲストの数に制限はありません。ただし、今後は、ハードウェアからのインベントリーの自動検出が可能となることが予想され、その時点で None の場合、自動検出が自動的に正しい制限を課すことになります。

  1. 注記:

    It is recommended to read :ref:`the deployment documentation's
    section on this option <num_memory_encrypted_guests>` before
    deciding whether to configure this setting or leave it at the
    default.

関連するオプション:

  • :oslo.config:option:libvirt.virt_typekvm に設定する必要があります。
  • :oslo.config:option:libvirt.hw_machine_typex86_64=q35 を含めることが推奨されます。詳細は、:ref:deploying-sev-capable-infrastructure を参照してください。

num_nvme_discover_tries = 5

整数値

ボリュームを見つけるために NVMe ターゲットを再検出する回数

Nova は、NVMe (Non-Volatile Memory Express) 経由でホストにアタッチするブロックストレージをサポートします。このオプションを使用すると、ユーザーは NVMe デバイスを検出できる再試行の最大数を指定できます。

num_pcie_ports = 0

整数値

インスタンスが取得する PCIe ポートの数。

libvirt では、対象のインスタンスが取得する PCIe ポートの数をカスタマイズすることができます (pcie-root-port コントローラー)。一部はデフォルトで使用されますが、残りはホットプラグの使用に利用されます。

デフォルトでは、ホットプラグを制限する空きポートが 1 - 2 だけあります。

詳細: https://github.com/qemu/qemu/blob/master/docs/pcie.txt

aarch64/virt の最大値の QEMU の制限により、28 に設定されます。

デフォルト値 0 は、libvirt へのポート数の計算を行います。

num_volume_scan_tries = 5

整数値

ボリュームを検索するために特定のストレージプロトコルをスキャンする回数。

pmem_namespaces = []

リスト値

永続メモリー (pmem) 名前空間を設定します。

これらの名前空間は、すでにホスト上に作成されている必要があります。この設定オプションは、以下の形式になります。

"$LABEL:$NSNAME[&verbar;$NSNAME][,$LABEL:$NSNAME[&verbar;$NSNAME]]"
  • $NSNAME は pmem 名前空間の名前です。
  • $LABEL は 1 つのリソースクラスを表し、これはリソースクラス名を CUSTOM_PMEM_NAMESPACE_$LABEL として生成するために使用されます。

    以下に例を示します。
    [libvirt] pmem_namespaces=128G:ns0|ns1|ns2|ns3,262144MB:ns4|ns5,MEDIUM:ns6|ns7

quobyte_client_cfg = None

文字列値

Quobyte クライアント設定ファイルへのパス。

quobyte_mount_point_base = $state_path/mnt

文字列値

Quobyte ボリュームがコンピュートノードにマウントされているディレクトリー。

Nova は Quobyte ストレージバックエンドに Block Storage サービスボリュームの格納を可能にする Quobyte ボリュームドライバーをサポートします。このオプションは、Quobyte ボリュームをマウントするディレクトリーのパスを指定します。

値:

  • マウントポイントの絶対パスを表す文字列。

rbd_connect_timeout = 5

整数値

最初にクラスターに接続するときの RADOS クライアントのタイムアウト (秒単位)。

rbd_destroy_volume_retries = 12

整数値

RBD ボリュームを破棄するための再試行回数。

関連するオプション:

  • [libvirt]/images_type = rbd

rbd_destroy_volume_retry_interval = 5

整数値

RBD ボリュームを破棄するための連続した各再試行の間に待機する秒数。

関連するオプション:

  • [libvirt]/images_type = rbd

rbd_secret_uuid = None

文字列値

rbd_user ボリュームのシークレットの libvirt UUID。

rbd_user = None

文字列値

rbd(RADOS Block Devices) ボリュームにアクセスするための RADOS クライアント名。

libvirt は、Ceph RBD サーバーへの接続および認証時にこのユーザーを参照します。

realtime_scheduler_priority = 1

整数値

リアルタイムホストコンテキストの仮想 CPU は、そのスケジューリングの優先度で実行されます。優先順位は、ホストカーネル (通常は 1-99) に依存します。

remote_filesystem_transport = ssh

文字列値

libvirt のリモートファイル操作のためのトランスポートメソッド。

libvirt は、ネットワークを介して他のコンピュートノードにファイルをコピーするために RPC を使用できないため、以下の場合に他の方法を使用する必要があります。

  • リモートホストでのディレクトリーの作成
  • リモートホストでのファイルの作成
  • リモートホストからのファイルの削除
  • リモートホストへのファイルのコピー

rescue_image_id = None

文字列値

破損したインスタンスからレスキューデータにブートするイメージの ID。

レスキュー REST API オペレーションが使用するイメージの ID を提供しない場合、この ID によって参照されるイメージが使用されます。このオプションが設定されていない場合には、インスタンスのイメージが使用されます。

値:

  • イメージの ID、または何もしない。Amazon Machine Image (AMI) を参照する場合は、設定オプション rescue_kernel_idrescue_ramdisk_id も設定することを検討してください。何も設定しないと、インスタンスのイメージが使用されます。

関連するオプション:

  • rescue_kernel_id: 選択したレスキューイメージでカーネルディスクを個別に定義できる場合、このオプションの値が指定されていれば、それが使用されます。これは、Amazon の AMI/AKI/ARI イメージフォーマットがレスキューイメージに使用される場合です。
  • rescue_ramdisk_id: 選択したレスキューイメージで RAM ディスクを個別に定義できる場合、このオプションの値が指定されている場合に使用されます。これは、Amazon の AMI/AKI/ARI イメージフォーマットがレスキューイメージに使用される場合です。

rescue_kernel_id = None

文字列値

レスキューイメージで使用するカーネル (AKI) イメージの ID。

選択したレスキューイメージがカーネルディスクの個別の定義を許可する場合は、指定した場合はこのオプションの値が使用されます。これは、Amazon の AMI/AKI/ARI イメージフォーマットがレスキューイメージに使用される場合です。

値:

  • カーネルイメージの ID または何もしない。何も指定しないと、インスタンスのカーネルディスクが使用されます (いずれか 1 つで起動した場合)。

関連するオプション:

  • rescue_image_id: そのオプションが Amazon の AMI/AKI/ARI イメージ形式のイメージを指している場合は、rescue_kernel_id も使用すると便利です。

rescue_ramdisk_id = None

文字列値

レスキューイメージで使用する RAM ディスク (ARI) イメージの ID。

選択したレスキューイメージが RAM ディスクの個別の定義を許可する場合は、指定した場合はこのオプションの値が使用されます。これは、Amazon の AMI/AKI/ARI イメージフォーマットがレスキューイメージに使用される場合です。

値:

  • RAM ディスクイメージの ID。何も指定しないと、インスタンスの RAM ディスクは、インスタンスの RAM ディスクを使用して起動されます。

関連するオプション:

  • rescue_image_id: そのオプションが Amazon の AMI/AKI/ARI イメージ形式のイメージを指している場合は、rescue_ramdisk_id も使用すると便利です。

rng_dev_path = /dev/urandom

文字列値

ホストのエントロピーのソースとして使用される RNG (乱数ジェネレーター) デバイスへのパス。libvirt 1.3.4 以降、任意のパス (読み取りの場合は乱数を返す) が受け入れられます。推奨されるエントロピーソースは /dev/urandom です。これは非ブロッキングであるため、比較的高速であり、レガシーインターフェイスである /dev/random の制限を回避します。詳細 (および異なる RNG ソース間の比較) は、Linux カーネル API ドキュメントの[u]random: http://man7.org/linux/man-pages/man4/urandom.4.html およびhttp://man7.org/linux/man-pages/man7/random.7.html の "Usage" の項を参照してください。

rx_queue_size = None

整数値

virtio rx キューサイズを設定します。

このオプションは、vhost および vhost-user バックエンドを使用する virtio-net デバイスでのみ利用できます。QEMU/KVM でのみ利用できます。libvirt v2.3 QEMU v2.7 が必要です。

`smbfs_mount_options = `

文字列値

SMBFS クライアントに渡されるマウントオプション。

SMBFS オプションを、すべてのパラメーターを含む単一の文字列として提供します。詳細は、man ページの mount.cifs を参照してください。libvirt-qemu uid および gid を指定する必要があることに注意してください。

smbfs_mount_point_base = $state_path/mnt

文字列値

SMBFS 共有が、コンピュートノードにマウントされているディレクトリー。

snapshot_compression = False

ブール値

qcow2 イメージのスナップショット圧縮を有効にします。

注記: snapshot_image_formatqcow2 に設定すると、元のイメージタイプとは別に、すべてのスナップショットが qcow2 形式で強制的に設定できます。

関連するオプション:

  • snapshot_image_format

snapshot_image_format = None

文字列値

イメージサービスに送信する際に、スナップショットイメージの形式を決定します。

これが設定されている場合は、スナップショットをイメージサービスに送信する際に使用される形式を決定します。設定されていない場合、デフォルトはソースイメージと同じタイプになります。

snapshots_directory = $instances_path/snapshots

文字列値

libvirt ドライバーがイメージサービスにアップロードする前にスナップショットを保存する場所

sparse_logical_volumes = False

ブール値

このフラグが True に設定されている場合、スパース論理ボリューム (virtualsize を使用) を作成します。

非推奨となったバージョン: 18.0.0

理由: スパース論理ボリュームは、テストされていないのでサポートされていない機能です。LVM 論理ボリュームは、デフォルトで事前に割り当てられます。シンプロビジョニングが必要な場合は、Cinder のシンプロビジョニングボリュームを使用します。

swtpm_enabled = False

ブール値

ゲストでエミュレーションされた TPM (Trusted Platform Module) を有効にします。

swtpm_group = tss

文字列値

swtpm バイナリーが実行されるグループ。

エミュレーションされた TPM を使用すると、swtpm バイナリーが実行されて TPM デバイスがエミュレーションされます。このバイナリーが実行されるユーザーは libvirt の設定に依存し、デフォルトは tss です。

コールドマイグレーションとサイズ変更をサポートするために、nova は、swtpm バイナリーが実行されているグループを認識して、ノード間で移動された後にファイルが適切な所有権を取得できるようにする必要があります。

関連するオプション:

  • swtpm_user も設定する必要があります。

swtpm_user = tss

文字列値

swtpm バイナリーを実行するユーザー。

エミュレーションされた TPM を使用すると、swtpm バイナリーが実行されて TPM デバイスがエミュレーションされます。このバイナリーが実行されるユーザーは libvirt の設定に依存し、デフォルトは tss です。

コールドマイグレーションとサイズ変更をサポートするために、nova は、swtpm バイナリーが実行されているユーザーを認識して、ノード間で移動された後にファイルが適切な所有権を取得できるようにする必要があります。

関連するオプション:

  • swtpm_group も設定する必要があります。

sysinfo_serial = unique

文字列値

仮想 BIOS でゲストに公開されるホスト "serial" UUID の設定に使用するデータソース。unique 以外の選択肢はすべて、インスタンスを別のホストに移行する際にシリアルを変更します。このオプションの選択を変更すると、停止して再起動されると、このホストの既存のインスタンスにも影響します。インスタンスの移行時に変更されないため、デフォルトの選択 (unique) を使用することが推奨されます。ただし、インスタンスごとのシリアル番号に加えてホストごとのシリアル番号が必要な場合は、ホストアグリゲートを使用してフレーバーを制限することを検討してください。

tx_queue_size = None

整数値

virtio tx キューサイズを設定します。

このオプションは、vhost-user バックエンドを使用する virtio-net デバイスでのみ利用できます。QEMU/KVM でのみ利用できます。libvirt v3.7 QEMU v2.10 が必要です。

uid_maps = []

リスト値

uid ターゲットと範囲のリスト。Syntax は guest-uid:host-uid:count です。最大 5 つまで許容されます。

use_virtio_for_bridges = True

ブール値

KVM/QEMU のブリッジインターフェイスに virtio を使用

virt_type = kvm

文字列値

libvirt が使用する仮想化タイプ (またはドメインタイプと呼ばれるもの) を記述します。

このタイプの選択は、このホストに選択した基礎となる仮想化ストラテジーと一致する必要があります。

関連するオプション:

  • connection_uri: これに依存します。
  • disk_prefix: これにより異なります。
  • cpu_mode: これによって異なります。
  • cpu_models: これによって異なります。

volume_clear = zero

文字列値

一時ディスクの削除時に、一時ディスクを消去する方法。LVM がバッキングストレージとして設定されている場合に限り有効です。

関連するオプション:

  • images_type - lvmに設定する必要があります。
  • volume_clear_size

volume_clear_size = 0

整数値

volume_clear オプションで設定した方法でクリアされる、割り当てられたボリュームの開始からカウントされるエリアのサイズ (MiB 単位)。

値:

  • 0 - ボリューム全体を消去
  • >0 - 明確に指定した MiB の量です。

関連するオプション:

  • images_type - lvmに設定する必要があります。
  • volume_clear - を設定する必要があります。この値は、このオプションに影響を与えるために none とは異なる必要があります。

volume_use_multipath = False

ブール値

iSCSI または FC ボリュームのマルチパス接続を使用します。

ボリュームは、マルチパスデバイスとして LibVirt で接続できます。これにより、高可用性とフォルトトレランスが提供されます。

vzstorage_cache_path = None

文字列値

SSD キャッシュファイルへのパス。

SSD ドライブをクライアントに割り当て、ドライブを設定して頻繁にアクセスされるデータのローカルキャッシュを保存できます。クライアントの SSD ドライブにローカルキャッシュがあると、クラスター全体のパフォーマンスを最大 10 以上に増やすことができます。WARNING!サーバーグレードにはない SSD モデルが多数あり、電源損失時に任意のデータセットが遅れる可能性があります。このような SSD は、Vstorage で使用しないでください。データの破損や不整合が発生する可能性があるため、危険です。安全であることが分かっている SSD モデルを手動で参照するか、vstorage-hwflush-check(1) ユーティリティーを使用して検証してください。

このオプションは、複数の共有からキャッシュを分離するために "%(cluster_name)s" テンプレートを含むパスを定義します。

関連するオプション:

  • vzstorage_mount_opts には、より詳細なキャッシュオプションが含まれる場合があります。

vzstorage_log_path = /var/log/vstorage/%(cluster_name)s/nova.log.gz

文字列値

vzstorage クライアントログへのパス。

このオプションは、クラスター操作のログを定義します。これには、複数の共有からのログを分離するために "%(cluster_name)s" テンプレートを含める必要があります。

関連するオプション:

  • vzstorage_mount_opts には、より詳細なロギングオプションが含まれる場合があります。

vzstorage_mount_group = qemu

文字列値

所有者グループ名をマウントします。

このオプションは、Vzstorage クラスターのマウントポイントの所有者グループを定義します。

関連するオプション:

  • vzstorage_mount_* group of parameters

vzstorage_mount_opts = []

リスト値

pstorage-mount の追加マウントオプション

これらの詳細な説明は、https://static.openvz.org/vz-man/man1/pstorage-mount.1.gz.html を参照してください。形式は、"[-v, -R, 500]" などの引数リストを示す Python 文字列です。-c、-l、-C、-u、-g、-m などの引数リストの Python 文字列表現です。これらのオプションは、明示的な vzstorage_* オプションであるためです。

関連するオプション:

  • 他のすべての vzstorage_* オプション

vzstorage_mount_perms = 0770

文字列値

マウントアクセスモード。

このオプションは、Vzstorage クラスターマウントポイントのアクセスビットを、chmod(1) ユーティリティーの 1 つと同様の形式 (0770 など) で定義します。0 から 7 までの 1 桁から 4 桁で構成され、先頭の桁が欠落している場合は 0 と見なされます。

関連するオプション:

  • vzstorage_mount_* group of parameters

vzstorage_mount_point_base = $state_path/mnt

文字列値

Virtuozzo Storage クラスターがコンピュートノードにマウントされているディレクトリー。

このオプションは、Vzstorage クラスターの標準以外のマウントポイントを定義します。

関連するオプション:

  • vzstorage_mount_* group of parameters

vzstorage_mount_user = stack

文字列値

所有者のユーザー名をマウントします。

このオプションは、Vzstorage クラスターのマウントポイントの所有者ユーザーを定義します。

関連するオプション:

  • vzstorage_mount_* group of parameters

wait_soft_reboot_seconds = 120

整数値

ソフトリブート要求後にインスタンスがシャットダウンするのを待機する秒数。インスタンスがこのウィンドウ内でシャットダウンしない場合は、ハードリブートにフォールバックします。

9.1.28. metrics

以下の表は、/etc/nova/nova.conf ファイルの [metrics] グループで使用できるオプションの概要をまとめたものです。

表9.27 metrics
設定オプション = デフォルト値タイプ説明

required = True

ブール値

指標が必要かどうか。

この設定は、使用できないメトリックの処理方法を決定します。このオプションを True に設定すると、メトリクスが利用できない場合に例外が発生するため、MetricFilter を使用してホストを重み付けする前に使用することが推奨されます。

値:

  • ブール値。False の場合、ホストで使用できないメトリックはホストの重みを [metrics] weight_of_unavailable に設定します。

関連するオプション:

  • [metrics] weight_of_unavailable

weight_multiplier = 1.0

浮動小数点の値

報告された指標に基づいてホストを重み付けするために使用される乗数。

メトリックを使用してホストの適合性を重み付けするには、このオプションを使用して、以下のように、計算された重みがホストに割り当てられた重みにどのように影響するかを変更することができます。

  • >1.0: 全体の重みに対するメトリックの影響を増加します。
  • 1.0: 計算された重みに変更なし。
  • >0.0,<1.0: 全体の重みに対するメトリックの影響を減少します。
  • 0.0: メトリック値は無視され、代わりに [metrics] weight_of_unavailable オプションの値が返されます。
  • >-1.0,<0.0: 効果が減少し、逆になります。
  • -1.0: 効果が反転します。
  • <-1.0: 効果が比例して増加し、逆になります。

値:

  • 整数または浮動小数点の値。ここで、値はこの重み付け関数の乗数比率に対応します。

関連するオプション:

  • [filter_scheduler] weight_classes
  • [metrics] weight_of_unavailable

weight_of_unavailable = -10000.0

浮動小数点の値

使用できないメトリックのデフォルトの重み。

以下の条件が満たされると、実際のメトリック値の代わりにこの値が使用されます。

  • [metrics] weight_setting で指定されたメトリックの 1 つがホストで使用できず、required の値が False です。
  • [metrics] weight_setting でメトリックに指定された比率が 0 です。
  • [metrics] weight_multiplier オプションは 0 に設定されています。

値:

  • 整数または浮動小数点の値。ここで、値はこの重み付け関数の乗数比率に対応します。

関連するオプション:

  • [metrics] weight_setting
  • [metrics] required
  • [metrics] weight_multiplier

weight_setting = []

リスト値

重量修飾子へのメトリックのマッピング。

この設定は、重み付けするメトリックと各メトリックの相対比率を指定します。これは,コンマで区切られた一連の 1 つ以上のname=ratio の組から構成される単一の文字列値であるべきで、ここで name は計量されるメートル法の名前、ratio はそのメートル法に対する相対的な重量です。

比率が 0 に設定されている場合、メトリック値は無視され、代わりに重みが [metrics] weight_of_unavailable オプションの値に設定されることに注意してください。

たとえば、このオプションが設定されているケースを見てみましょう。

`name1=1.0, name2=-1.3`

最終的な重みは以下のようになります。

`(name1.value * 1.0) + (name2.value * -1.3)`

値:

  • コンマで区切られた 0 個以上のキー/値のペアのリストです。キーは、メトリックの名前を表す文字列で、値はそのメトリックの数値の重みになります。いずれかの値が 0 に設定されている場合、その値は無視され、重みは [metrics] weight_of_unavailable オプションの値に設定されます。

関連するオプション:

  • [metrics] weight_of_unavailable

9.1.29. mks

以下の表は、/etc/nova/nova.conf ファイルの [mks] グループで使用できるオプションの概要をまとめたものです。

表9.28 mks
設定オプション = デフォルト値タイプ説明

enabled = False

ブール値

仮想マシンのグラフィカルコンソールアクセスを有効にします。

mksproxy_base_url = http://127.0.0.1:6090/

URI 値

MKS Web コンソールプロキシーの場所

応答の URL は、WebMKS プロキシーをポイントします。これは、クライアントと、インスタンスが実行される対応する vCenter サーバーとの間のプロキシーを開始します。Web ベースのコンソールアクセスを使用するには、WebMKS プロキシーをインストールし、設定する必要があります。

値:

  • http://host:port/ または https://host:port/形式の有効な URL でなければなりません。

9.1.30. neutron

以下の表は、/etc/nova/nova.conf ファイルの [neutron] グループで使用できるオプションの概要をまとめたものです。

表9.29 neutron
設定オプション = デフォルト値タイプ説明

auth-url = None

文字列値

認証 URL

auth_section = None

文字列値

プラグイン固有のオプションを読み込む config セクション

auth_type = None

文字列値

読み込む認証タイプ

cafile = None

文字列値

HTTP 接続の検証時に使用する PEM でエンコードされた認証局。

certfile = None

文字列値

PEM でエンコードされたクライアント証明書の証明書ファイル

collect-timing = False

ブール値

API ごとの呼び出しタイミング情報を収集します。

connect-retries = None

整数値

接続エラーに対して試行される再試行の最大数。

connect-retry-delay = None

浮動小数点の値

接続エラーに対する 2 つの再試行の遅延 (秒単位)。設定されていない場合は、最大 60 秒まで 0.5 秒から開始する指数関数の再試行が使用されます。

default-domain-id = None

文字列値

v3 および v2 パラメーターで使用するオプションのドメイン ID。v3 のユーザーおよびプロジェクトドメインに使用され、v2 認証では無視されます。

default-domain-name = None

文字列値

v3 API および v2 パラメーターで使用するオプションのドメイン名です。v3 のユーザーおよびプロジェクトドメインに使用され、v2 認証では無視されます。

default_floating_pool = nova

文字列値

Floating IP プールのデフォルト名。

Floating IP アドレスの割り当てに使用する Floating IP プールの名前を指定します。このオプションは、ポートバインディング応答で Neutron が Floating IP プール名を指定しない場合にのみ使用されます。

domain-id = None

文字列値

スコープするドメイン ID

domain-name = None

文字列値

スコープするドメイン名

endpoint-override = None

文字列値

このクライアントのリクエストには常にこのエンドポイント URL を使用します。注意: バージョンを指定しないエンドポイントはここで指定する必要があります。特定の API バージョンを要求するには、versionmin-version オプション、または max-version オプション、もしくはそれを組み合わせてを使用します。

extension_sync_interval = 600

整数値

Neutron に拡張機能を問い合わせるまで待機する秒数を表す整数値。この秒数の後、次に Nova が Neutron でリソースを作成する必要がある場合、Neutron にロードした拡張機能を要求します。値を 0 に設定すると、待機なしで拡張機能が更新されます。

http_retries = 3

整数値

失敗した http 呼び出しで neutronclient が再試行される回数。

0 は、接続が 1 回のみ試行されることを意味します。正の整数に設定すると、接続に失敗すると何度も再試行されます。たとえば、これを 3 に設定すると、接続合計の試みは 4 になります。

値:

  • 整数値。0 は、接続が 1 回のみ試行されることを意味します。

insecure = False

ブール値

HTTPS 接続を確認します。

keyfile = None

文字列値

PEM でエンコードされたクライアント証明書キーファイル

`metadata_proxy_shared_secret = `

文字列値

このオプションは、Neutron メタデータ要求に対するプロキシー要求の検証に使用される共有シークレット文字列を保持します。使用するには、X-Metadata-Provider-Signature ヘッダーをリクエストに指定する必要があります。

関連するオプション:

  • service_metadata_proxy

ovs_bridge = br-int

文字列値

Open vSwitch 統合ブリッジのデフォルト名。

OpenvSwitch が使用する統合ブリッジインターフェイスの名前を指定します。このオプションは、Neutron がポートバインディング応答で OVS ブリッジ名を指定しない場合にのみ使用されます。

password = None

文字列値

ユーザーのパスワード

physnets = []

リスト値

このホストに存在する物理ネットワークのリスト。

リストされた各 physnet 似対して、[neutron_physnet_$PHYSNET] という追加のセクションが設定ファイルに追加されます。各セクションには、単一の設定オプション numa_nodes を指定する必要があります。これは、この物理ネットワークに関連付けられたすべての NUMA ノードに対するノード ID のリストでなければなりません。以下に例を示します。

[neutron]
physnets = foo, bar
[neutron_physnet_foo]
numa_nodes = 0
[neutron_physnet_bar]
numa_nodes = 0,1

このオプションを使用して記載されていない 物理 ネットワークは、特定の NUMA ノードアフィニティーを持つものとして処理されます。

トンネル型ネットワーク (VXLAN, GRE, …​) はこの方法では説明できず、代わりに [neutron_tunnel] グループを使用して設定されます。以下に例を示します。

[neutron_tunnel]
numa_nodes = 1

関連するオプション:

  • [neutron_tunnel] numa_nodes を使用して、すべてのトンネリングネットワークの NUMA アフィニティーを設定できます。
  • [neutron_physnet_$PHYSNET] numa_nodes は、このオプションで指定した $PHYSNET の各値に対して設定する必要があります。

project-domain-id = None

文字列値

プロジェクトを含むドメイン ID

project-domain-name = None

文字列値

プロジェクトを含むドメイン名

project-id = None

文字列値

スコープするプロジェクト ID

project-name = None

文字列値

スコープするプロジェクト名

region-name = None

文字列値

エンドポイント URL 検出のデフォルト region_name。

service-name = None

文字列値

エンドポイント URL 検出のデフォルト service_name。

service-type = network

文字列値

エンドポイント URL 検出のデフォルト service_type。

service_metadata_proxy = False

ブール値

True に設定すると、このオプションは Neutron を使用してメタデータ要求をプロキシー送信し、インスタンス ID を解決することを示しています。それ以外の場合は、インスタンス ID を X-Instance-ID ヘッダーのメタデータ要求に渡す必要があります。

関連するオプション:

  • metadata_proxy_shared_secret

split-loggers = False

ブール値

複数のロガーへの要求をログに記録します。

status-code-retries = None

整数値

再試行可能な HTTP ステータスコードに対して試行される再試行の最大数。

status-code-retry-delay = None

浮動小数点の値

再試行可能なステータスコードに対する 2 つの再試行間の遅延 (秒単位)。設定されていない場合は、最大 60 秒まで 0.5 秒から開始する指数関数の再試行が使用されます。

system-scope = None

文字列値

システム操作のスコープ

tenant-id = None

文字列値

テナント ID

tenant-name = None

文字列値

テナント名

timeout = None

整数値

http 要求のタイムアウト値

trust-id = None

文字列値

trustee として使用する信頼の ID

user-domain-id = None

文字列値

ユーザーのドメイン ID

user-domain-name = None

文字列値

ユーザーのドメイン名

user-id = None

文字列値

User ID

username = None

文字列値

Username

valid-interfaces = ['internal', 'public']

リスト値

エンドポイント URL のインターフェイスのリスト (優先順)。

9.1.31. notifications

以下の表は、/etc/nova/nova.conf ファイルの [notifications] グループで使用できるオプションの概要をまとめたものです。

表9.30 notifications
設定オプション = デフォルト値タイプ説明

bdms_in_notifications = False

ブール値

有効な場合は、バージョン付けされた通知ペイロードにブロックデバイス情報を含めます。情報をデータベースから読み込む必要があるため、デフォルトでブロックデバイス情報の送信は、システムでオーバーヘッドが発生する可能性があるため、デフォルトで無効になっています。

default_level = INFO

文字列値

送信通知のデフォルト通知レベル。

notification_format = unversioned

文字列値

nova が出力すべき通知形式を指定します。

バージョン付けされた通知インターフェイスはレガシーインターフェイスと同等で、バージョン化されたインターフェイスはアクティブに開発され、新しいコンシューマーはバージョン付けされたインターフェイスを使用する必要があります。

ただし、従来のインターフェイスは ceilometer と他の成熟した OpenStack コンポーネントによって多用化されているため、デフォルトのままです。

[oslo_messaging_notifications] グループに driver=noop を設定して、通知を完全に無効にできることに注意してください。

バージョン付けされた通知のリストは、https://docs.openstack.org/nova/latest/reference/notifications.html に表示されます。

notify_on_state_change = None

文字列値

設定されている場合は、インスタンスの状態の変更時に compute.instance.update 通知を送信します。

通知の詳細は、https://docs.openstack.org/nova/latest/reference/notifications.html を参照してください。

versioned_notifications_topics = ['versioned_notifications']

リスト値

nova が発行するバージョン化された通知のトピックを指定します。

デフォルト値はほとんどのデプロイメントでは問題ありませんが、変更が必要になることはほとんどありません。ただし、バージョン付けされた通知を使用するサードパーティーのサービスがある場合は、そのサービスのトピックを取得することが望ましい場合があります。Nova は、バージョン別の通知ペイロードを含むメッセージを、このリストの各トピックキューに送信します。

バージョン付けされた通知のリストは、https://docs.openstack.org/nova/latest/reference/notifications.html に表示されます。

9.1.32. oslo_concurrency

以下の表では、/etc/nova/nova.conf ファイルの [oslo_concurrency] グループで利用可能なオプションを説明しています。

表9.31 oslo_concurrency
設定オプション = デフォルト値タイプ説明

disable_process_locking = False

ブール値

プロセス間ロックを有効または無効にします。

lock_path = None

文字列値

ロックファイルに使用するディレクトリー。セキュリティー上、指定したディレクトリーは、ロックが必要なプロセスを実行しているユーザーのみが書き込み可能である必要があります。デフォルトは環境変数 OSLO_LOCK_PATH です。外部ロックを使用する場合は、ロックパスを設定する必要があります。

9.1.33. oslo_messaging_amqp

以下の表では、/etc/nova/nova.conf ファイルの [oslo_messaging_amqp] グループで利用可能なオプションの概要を説明します。

表9.32 oslo_messaging_amqp
設定オプション = デフォルト値タイプ説明

addressing_mode = dynamic

文字列値

ドライバーが使用するアドレスモードを示します。許可される値:legacy - レガシーのルーティング不可能なアドレス指定を使用します。routable - ルーティング可能なアドレスを使用します。dynamic - メッセージバスがルーティングをサポートしていない場合はレガシーのアドレスを使用します。それ以外の場合は、ルーティング可能なアドレスを使用します。

anycast_address = anycast

文字列値

コンシューマーのグループに送信する際に、アドレス接頭辞に追加されます。コンシューマー間でラウンドロビン方式で配信される必要のあるメッセージを特定するために、メッセージバスで使用されます。

broadcast_prefix = broadcast

文字列値

すべてのサーバーにブロードキャストする場合に使用されるアドレス接頭辞

connection_retry_backoff = 2

整数値

フェイルオーバーの試みに失敗するたびに、connection_retry_interval をこの秒数だけ増やします。

connection_retry_interval = 1

整数値

再接続を試みる前に一時停止する秒数。

connection_retry_interval_max = 30

整数値

connection_retry_interval + connection_retry_backoff の上限

container_name = None

文字列値

AMQP コンテナーの名前。グローバルで一意でなければなりません。デフォルトは、生成された UUID です。

default_notification_exchange = None

文字列値

通知アドレスで使用される変換名。エクスチェンジ名の解決の優先順位:Target.exchange、他に設定されている場合は default_notification_exchange、他に設定されている場合は control_exchange、他に設定されている場合は notify

default_notify_timeout = 30

整数値

送信された通知メッセージ配信の期限。呼び出し元がタイムアウトを明示的に指定しない場合にのみ使用されます。

default_reply_retry = 0

整数値

リカバリー可能なエラーが原因で失敗した返信メッセージを再送信する最大試行回数。

default_reply_timeout = 30

整数値

rpc 返信メッセージ配信の期限。

default_rpc_exchange = None

文字列値

RPC アドレスで使用される変換名。エクスチェンジ名の解決の優先順位:Target.exchange、他に設定されている場合は default_rpc_exchange、他に設定されている場合は control_exchange、他に設定されている場合は rpc

default_send_timeout = 30

整数値

rpc キャストまたは呼び出しメッセージ配信の期限。呼び出し元がタイムアウトを明示的に指定しない場合にのみ使用されます。

default_sender_link_timeout = 600

整数値

アイドル状態の送信者リンクのパージをスケジュールする時間。期限切れ後にリンクの割り当てを解除します。

group_request_prefix = unicast

文字列値

グループの任意のサーバーに送信する際のアドレス接頭辞

idle_timeout = 0

整数値

非アクティブな接続のタイムアウト (秒単位)

link_retry_delay = 10

整数値

リカバリー可能なエラーが原因で失敗した AMQP 1.0 リンクの再接続間に一時停止する時間。

multicast_address = multicast

文字列値

ファンアウトメッセージを送信するときにアドレス接頭辞に追加されます。ファンアウトメッセージを識別するためにメッセージバスによって使用されます。

notify_address_prefix = openstack.org/om/notify

文字列値

すべての生成される通知アドレスのアドレス接頭辞

notify_server_credit = 100

整数値

受信通知メッセージのウィンドウサイズ

pre_settled = ['rpc-cast', 'rpc-reply']

多値

このタイプのメッセージを事前処置状態で送信します。事前処置されたメッセージは、ピアから確認応答を受信しません。注記: 事前処置されたメッセージは、配信に失敗した場合に警告なしに破棄される可能性があります。許可される値:rpc-call - RPC 呼び出しを事前処置状態で送信します。rpc-reply- RPC 返信を事前処置状態で送信します。rpc-cast - RPC キャストを事前処置状態で送信します。notify - 通知を事前処置状態で送信します。

pseudo_vhost = True

ブール値

仮想ホスト (qpidd など) をネイティブにサポートしていないメッセージバスの仮想ホストサポートを有効にします。true に設定すると、仮想ホスト名はすべてのメッセージバスアドレスに追加され、結果として仮想ホストごとにプライベート サブネット を作成します。メッセージバスが仮想ホストの名前として AMQP 1.0 オープン遂行動詞の hostname フィールドを使用して仮想ホストをサポートする場合は False に設定します。

reply_link_credit = 200

整数値

受信する RPC 返信メッセージのウィンドウサイズ。

rpc_address_prefix = openstack.org/om/rpc

文字列値

すべての生成される RPC アドレスのアドレス接頭辞

rpc_server_credit = 100

整数値

受信する RPC リクエストメッセージのウィンドウサイズ。

`sasl_config_dir = `

文字列値

SASL 設定が含まれるディレクトリーへのパス

`sasl_config_name = `

文字列値

設定ファイルの名前 (.conf 接尾辞なし)

`sasl_default_realm = `

文字列値

ユーザー名にレルムが存在しない場合に使用する SASL レルム

`sasl_mechanisms = `

文字列値

許可される SASL メカニズムのスペース区切りリスト

server_request_prefix = exclusive

文字列値

特定のサーバーに送信する時に使用するアドレス接頭辞

ssl = False

ブール値

SSL 経由で接続を試みます。その他の ssl 関連のパラメーターが指定されていない場合、システムの CA バンドルを使用してサーバーの証明書を検証します。

`ssl_ca_file = `

文字列値

サーバーの証明書の検証に使用する CA 証明書 PEM ファイル

`ssl_cert_file = `

文字列値

クライアント認証用の自己識別証明書 PEM ファイル

`ssl_key_file = `

文字列値

ssl_cert_file 証明書の署名に使用される秘密鍵 PEM ファイル (オプション)

ssl_key_password = None

文字列値

ssl_key_file を復号するためのパスワード (暗号化されている場合)

ssl_verify_vhost = False

ブール値

デフォルトでは、SSL は、サーバーの証明書の名前が transport_url のホスト名と一致することを確認します。設定によっては、代わりに仮想ホスト名を使用することが望ましい場合があります。たとえば、サーバーが Server Name Indication TLS 拡張 (rfc6066) を使用して、仮想ホストごとの証明書を提供する場合などです。サーバーの SSL 証明書が DNS 名ではなく仮想ホスト名を使用する場合は、ssl_verify_vhost を True に設定します。

trace = False

ブール値

デバッグ: AMQP フレームを標準出力 (stdout) にダンプします。

unicast_address = unicast

文字列値

特定の RPC/通知サーバーに送信する際に、アドレス接頭辞に追加されます。単一の送信先に送信されたメッセージを識別するためにメッセージバスによって使用されます。

9.1.34. oslo_messaging_kafka

以下の表は、/etc/nova/nova.conf ファイルの [oslo_messaging_kafka] グループで使用できるオプションの概要をまとめたものです。

表9.33 oslo_messaging_kafka
設定オプション = デフォルト値タイプ説明

compression_codec = none

文字列値

プロデューサーによって生成されたすべてのデータの圧縮コーデック。設定されていない場合、圧縮は使用されません。この設定に許可される値は、kafka バージョンに依存することに注意してください。

conn_pool_min_size = 2

整数値

接続有効期限ポリシーのプールサイズ制限

conn_pool_ttl = 1200

整数値

プールのアイドル状態の接続の存続期間 (秒単位)

consumer_group = oslo_messaging_consumer

文字列値

Kafka コンシューマーのグループ ID。あるグループのコンシューマーは、メッセージ消費を調整します。

enable_auto_commit = False

ブール値

非同期コンシューマーコミットを有効にします。

kafka_consumer_timeout = 1.0

浮動小数点の値

Kafka コンシューマーのデフォルトタイムアウト

kafka_max_fetch_bytes = 1048576

整数値

Kafka コンシューマーの最大フェッチバイト

max_poll_records = 500

整数値

ポーリング呼び出しで返されるレコードの最大数

pool_size = 10

整数値

Kafka コンシューマーのプールサイズ

producer_batch_size = 16384

整数値

プロデューサーの非同期送信のバッチサイズ

producer_batch_timeout = 0.0

浮動小数点の値

KafkaProducer バッチ処理の遅延の上限 (秒単位)

sasl_mechanism = PLAIN

文字列値

セキュリティープロトコルが SASL である際のメカニズム

security_protocol = PLAINTEXT

文字列値

ブローカーとの通信に使用されるプロトコル

`ssl_cafile = `

文字列値

サーバーの証明書の検証に使用する CA 証明書 PEM ファイル

`ssl_client_cert_file = `

文字列値

認証に使用されるクライアント証明書の PEM ファイル。

`ssl_client_key_file = `

文字列値

認証に使用されるクライアントキーの PEM ファイル。

`ssl_client_key_password = `

文字列値

認証に使用されるクライアントキーパスワードファイル。

9.1.35. oslo_messaging_notifications

以下の表は、/etc/nova/nova.conf ファイルの [oslo_messaging_notifications] グループで使用できるオプションの概要をまとめたものです。

表9.34 oslo_messaging_notifications
設定オプション = デフォルト値タイプ説明

driver = []

多値

通知の送信を処理するドライバー。使用できる値は messaging、messagingv2、routing、log、test、noop です。

retry = -1

整数値

リカバリー可能なエラーが原因で配信に失敗した通知メッセージを再送信する最大試行回数。0 - 再試行なし、-1 - 無限回

topics = ['notifications']

リスト値

OpenStack の通知に使用する AMQP トピック。

transport_url = None

文字列値

通知に使用するメッセージングドライバーを表す URL。設定されていない場合は、RPC に使用されるものと同じ設定にフォールバックします。

9.1.36. oslo_messaging_rabbit

以下の表は、/etc/nova/nova.conf ファイルの [oslo_messaging_rabbit] グループで使用できるオプションの概要をまとめたものです。

表9.35 oslo_messaging_rabbit
設定オプション = デフォルト値タイプ説明

amqp_auto_delete = False

ブール値

AMQP の自動削除キュー。

amqp_durable_queues = False

ブール値

AMQP で永続キューを使用します。rabbit_quorum_queue が有効な場合、キューは永続的になり、この値は無視されます。

direct_mandatory_flag = True

ブール値

(非推奨) ダイレクト送信のための RabbitMQ 必須フラグを有効/無効にします。直接送信は応答として使用されるため、クライアントキューが存在しない場合には MessageUndeliverable 例外が発生します。MessageUndeliverable 例外はタイムアウトをループして、送信者が回復する可能性が高くなります。このフラグは非推奨になり、この機能を非アクティブ化することはできません。

enable_cancel_on_failover = False

ブール値

x-cancel-on-ha-failover フラグを有効にして、rabbitmq サーバーがキューが停止しているときにコンシューマーをキャンセルし、通知できるようにします。

heartbeat_in_pthread = False

ブール値

デフォルトでは、ネイティブ Python スレッドを介してヘルスチェックハートビートスレッドを実行します。このオプションが False の場合、ヘルスチェックハートビートは親プロセスから実行モデルを継承します。たとえば、親プロセスが eventlet/greenlet を使用して stdlib にモンキーパッチを適用した場合、ハートビートはグリーンスレッドを介して実行されます。This option should be set to True only for the wsgi services.

heartbeat_rate = 2

整数値

heartbeat_timeout_threshold 中、ハートビートを確認する回数。

heartbeat_timeout_threshold = 60

整数値

ハートビートの keep-alive が失敗した場合に Rabbit ブローカーがダウンとみなされるまでの秒数 (0 はハートビートを無効にします)。

kombu_compression = None

文字列値

実験的用途: 許容値は gzip、bz2 です。設定されていない場合、圧縮は使用されません。このオプションは、今後のバージョンで利用できない可能性があります。

kombu_failover_strategy = round-robin

文字列値

現在接続しているノードが利用できなくなった場合に、次の RabbitMQ ノードを選択する方法を指定します。設定で複数の RabbitMQ ノードが指定される場合に限り有効になります。

kombu_missing_consumer_retry_timeout = 60

整数値

応答のないクライアントが応答を送信するのを待つ時間。この時間が経過すると無視します。この値は rpc_response_timeout より長くすることはできません。

kombu_reconnect_delay = 1.0

浮動小数点の値

AMQP コンシューマーのキャンセル通知に応答して再接続するまでの待機時間 (秒単位)。

rabbit_ha_queues = False

ブール値

RabbitMQ (x-ha-policy: all) の HA キューの使用を試みます。このオプションを変更する場合は、RabbitMQ データベースを消去する必要があります。RabbitMQ 3.0 では、キューを宣言する際に x-ha-policy 引数によってキューのミラーリングが制御されなくなりました。すべてのキュー (自動生成された名前のキューを除く) がすべてのノードでミラーリングされるようにするには、"rabbitmqctl set_policy HA ^(?!amq\.).* {"ha-mode": "all"}" を実行します。

rabbit_interval_max = 30

整数値

RabbitMQ 接続を再試行する最大間隔。デフォルトは 30 秒です。

rabbit_login_method = AMQPLAIN

文字列値

RabbitMQ ログイン方法

rabbit_qos_prefetch_count = 0

整数値

事前フェッチするメッセージの数を指定します。ゼロに設定すると、無制限のメッセージのフェッチが許可されます。

rabbit_quorum_delivery_limit = 0

整数値

メッセージがコンシューマーに再配信されるたびに、カウンターが増加します。再配信回数が配信制限を超えると、メッセージはドロップされるか、配信不能になります (DLX エクスチェンジが設定されている場合)。rabbit_quorum_queue が有効な場合にのみ使用されます。デフォルトは 0 で、制限を設定しないことを意味します。

rabbit_quorum_max_memory_bytes = 0

整数値

デフォルトでは、すべてのメッセージはメモリー内に保持されますが、クォーラムキューの長さが長くなると、クラスターでメモリーの逼迫が発生する可能性があります。このオプションを使用すると、クォーラムキューで使用されるメモリーバイト数を制限できます。rabbit_quorum_queue が有効な場合にのみ使用されます。デフォルトは 0 で、制限を設定しないことを意味します。

rabbit_quorum_max_memory_length = 0

整数値

デフォルトでは、すべてのメッセージはメモリー内に保持されますが、クォーラムキューの長さが長くなると、クラスターでメモリーの逼迫が発生する可能性があります。このオプションを使用すると、クォーラムキュー内のメッセージの数を制限できます。rabbit_quorum_queue が有効な場合にのみ使用されます。デフォルトは 0 で、制限を設定しないことを意味します。

rabbit_quorum_queue = False

ブール値

RabbitMQ でクォーラムキューを使用します (x-queue-type: quorum)。クォーラムキューは、Raft コンセンサスアルゴリズムに基づきレプリケートされた永続的な FIFO キューを実装する RabbitMQ の最新キュータイプです。RabbitMQ 3.8.0 以降で利用可能です。このオプションを設定すると、HA キュー (rabbit_ha_queues)、つまりミラーリングされたキューと競合します。そのため、HA キューは無効にする必要があります。クォーラムキューはデフォルトで永続的であるため、このオプションを有効にすると amqp_durable_queues オプションは無視されます。

rabbit_retry_backoff = 2

整数値

RabbitMQ に接続する際に再試行間でバックオフする長さ

rabbit_retry_interval = 1

整数値

RabbitMQ との接続を再試行する頻度。

rabbit_transient_queues_ttl = 1800

整数値

キューの TTL (x-expires) の期間 (秒単位) を表す正の整数。TTL の期間使用されないキューは自動的に削除されます。このパラメーターは応答キューとファンアウトキューにのみ影響します。

ssl = False

ブール値

SSL 経由で接続します。

`ssl_ca_file = `

文字列値

SSL 認証局ファイル (SSL が有効な場合にのみ有効)。

`ssl_cert_file = `

文字列値

SSL 証明書ファイル (SSL が有効な場合にのみ有効)。

ssl_enforce_fips_mode = False

ブール値

OpenSSL FIPS モードを強制するためのグローバルトグル。この機能には、Python のサポートが必要です。これはすべての環境の Python 3.9 で利用可能であり、特定の環境では古いバージョンの Python にバックポートされている可能性があります。使用される Python 実行ファイルが OpenSSL FIPS モードをサポートしていない場合は、例外が発生します。

`ssl_key_file = `

文字列値

SSL キーファイル (SSL が有効な場合にのみ有効)。

`ssl_version = `

文字列値

使用する SSL バージョン (SSL が有効な場合にのみ有効)。有効な値は TLSv1 および SSLv23 です。SSLv2、SSLv3、TLSv1_1、および TLSv1_2 は、一部のディストリビューションで利用できます。

9.1.37. oslo_middleware

以下の表は、/etc/nova/nova.conf ファイルの [oslo_middleware] グループで使用できるオプションの概要をまとめたものです。

表9.36 oslo_middleware
設定オプション = デフォルト値タイプ説明

enable_proxy_headers_parsing = False

ブール値

アプリケーションがプロキシーの背後であるかどうか。これにより、ミドルウェアがヘッダーを解析すべきかどうかを決定します。

http_basic_auth_user_file = /etc/htpasswd

文字列値

HTTP Basic 認証パスワードファイル。

max_request_body_size = 114688

整数値

各リクエストの本文の最大サイズ (バイト単位)。

secure_proxy_ssl_header = X-Forwarded-Proto

文字列値

SSL 終端プロキシーによって非表示であった場合でも、元のリクエストプロトコルスキームを決定するために使用される HTTP ヘッダー。

9.1.38. oslo_policy

以下の表は、/etc/nova/nova.conf ファイルの [oslo_policy] グループで使用できるオプションの概要をまとめたものです。

表9.37 oslo_policy
設定オプション = デフォルト値タイプ説明

enforce_new_defaults = True

ブール値

このオプションは、ポリシーを評価するときに古い非推奨のデフォルトを使用するかどうかを制御します。True の場合、古い非推奨のデフォルトは評価されません。これは、既存のトークンが古いデフォルトで許可されているが、新しいデフォルトで許可されていない場合、許可されないことを意味します。新しいデフォルトと scope_type の利点を同時に得られるように、このフラグを enforce_scope フラグと併せて有効にすることが推奨されます。False の場合、非推奨のポリシーチェック文字列は新しいポリシーチェック文字列と論理的に OR 演算され、新しいポリシーを含むリリース間でのデフォルト動作であるグレースフルアップグレードが可能になります。

enforce_scope = True

ブール値

このオプションは、ポリシーを評価する際にスコープを適用するかどうかを制御します。True の場合、リクエストで使用されるトークンのスコープは、適用されるポリシーの scope_types と比較されます。スコープが一致しない場合、InvalidScope 例外が発生します。False の場合、ポリシーが一致しないスコープで呼び出されていることを運用者に通知するメッセージが記録されます。

policy_default_rule = default

文字列値

デフォルトルール。要求されたルールが見つからない場合に適用されます。

policy_dirs = ['policy.d']

多値

ポリシー設定ファイルが保存されるディレクトリー。これは、config_dir オプションで定義される検索パス内の任意のディレクトリーへの相対パスか、絶対パスにすることができます。このディレクトリーの検索には、policy_file で定義されたファイルが存在している必要があります。存在しないディレクトリーまたは空のディレクトリーは無視されます。

policy_file = policy.yaml

文字列値

ロールを指定のサービスのパーミッションにマッピングするファイルの相対パスまたは絶対パス。相対パスは、このオプションを設定する設定ファイルに対する相対パスとして指定する必要があります。

remote_content_type = application/x-www-form-urlencoded

文字列値

REST ベースのポリシーチェックのデータを送受信するコンテンツ種別

remote_ssl_ca_crt_file = None

文字列値

REST ベースのポリシーチェック用の認証局証明書ファイルの絶対パス

remote_ssl_client_crt_file = None

文字列値

REST ベースのポリシーチェック用のクライアント証明書の絶対パス

remote_ssl_client_key_file = None

文字列値

REST ベースのポリシーチェック用のクライアント鍵ファイルの絶対パス

remote_ssl_verify_server_crt = False

ブール値

REST ベースのポリシーチェックのサーバーアイデンティティー検証

9.1.39. pci

以下の表は、/etc/nova/nova.conf ファイルの [pci] グループで使用できるオプションの概要をまとめたものです。

表9.38 pci
設定オプション = デフォルト値タイプ説明

alias = []

多値

PCI パススルーデバイス要件のエイリアス。

これにより、すべての PCI プロパティー要件を繰り返す必要なく、フレーバーの追加スペックでエイリアスを指定できます。

これは nova-api サービス用に設定する必要があり、nova-compute サービスごとに move 操作を使用することを前提とします。

以下の値を使用できます。

  • エイリアスを記述する JSON 値のディクショナリー。以下に例を示します。

    alias = {
      "name": "QuickAssist",
      "product_id": "0443",
      "vendor_id": "8086",
      "device_type": "type-PCI",
      "numa_policy": "required"
    }
    This defines an alias for the Intel QuickAssist card. (multi valued). Valid
    key values are :
    `name`
      Name of the PCI alias.
    `product_id`
      Product ID of the device in hexadecimal.
    `vendor_id`
      Vendor ID of the device in hexadecimal.
    `device_type`
      Type of PCI device. Valid values are: `type-PCI`, `type-PF` and
      `type-VF`. Note that `"device_type": "type-PF"` **must** be specified
      if you wish to passthrough a device that supports SR-IOV in its entirety.
    `numa_policy`
      Required NUMA affinity of device. Valid values are: `legacy`,
      `preferred` and `required`.
    `resource_class`
      The optional Placement resource class name that is used
      to track the requested PCI devices in Placement. It can be a standard
      resource class from the `os-resource-classes` lib. Or it can be an
      arbitrary string. If it is an non-standard resource class then Nova will
      normalize it to a proper Placement resource class by
      making it upper case, replacing any consecutive character outside of
      `[A-Z0-9_]` with a single '_', and prefixing the name with `CUSTOM_` if
      not yet prefixed. The maximum allowed length is 255 character including the
      prefix. If `resource_class` is not provided Nova will generate it from
      `vendor_id` and `product_id` values of the alias in the form of
      `CUSTOM_PCI_{vendor_id}_{product_id}`. The `resource_class` requested
      in the alias is matched against the `resource_class` defined in the
      `[pci]device_spec`. This field can only be used only if
      `[filter_scheduler]pci_in_placement` is enabled.
    `traits`
      An optional comma separated list of Placement trait names requested to be
      present on the resource provider that fulfills this alias. Each trait can
      be a standard trait from `os-traits` lib or it can be an arbitrary
      string. If it is a non-standard trait then Nova will normalize the
      trait name by making it upper case, replacing any consecutive character
      outside of  `[A-Z0-9_]` with a single '_', and  prefixing the name
      with `CUSTOM_` if not yet prefixed. The maximum allowed length of a
      trait name is 255 character including the prefix. Every trait in
      `traits` requested in the alias ensured to be in the list of traits
      provided in the `traits` field of the `[pci]device_spec` when
      scheduling the request. This field can only be used only if
      `[filter_scheduler]pci_in_placement` is enabled.
  • オプションを繰り返すことにより、複数のエイリアスをサポートします (リスト値は

    指定しません)。
    alias = { "name": "QuickAssist-1", "product_id": "0443", "vendor_id": "8086", "device_type": "type-PCI", "numa_policy": "required" } alias = { "name": "QuickAssist-2", "product_id": "0444", "vendor_id": "8086", "device_type": "type-PCI", "numa_policy": "required" }

device_spec = []

多値

仮想マシンで使用可能な PCI デバイスを指定します。

値:

  • PCI デバイスを記述する JSON ディクショナリー。以下の形式を

    使用します。

    ["vendor_id": "<id>",] ["product_id": "<id>",] ["address": "[[[[<domain>]:]<bus>]:][<slot>][.[<function>]]" | "devname": "<name>",] {"<tag>": "<tag_value>",}

    Where `[` indicates zero or one occurrences, `{` indicates zero or
    multiple occurrences, and `&verbar;` mutually exclusive options. Note that any
    missing fields are automatically wildcarded.
    Valid key values are :
    `vendor_id`
      Vendor ID of the device in hexadecimal.
    `product_id`
      Product ID of the device in hexadecimal.
    `address`
      PCI address of the device. Both traditional glob style and regular
      expression syntax is supported. Please note that the address fields are
      restricted to the following maximum values:
  • domain - 0xFFFF
  • bus - 0xFF
  • slot - 0x1F
  • function - 0x7

    `devname`
      Device name of the device (for e.g. interface name). Not all PCI devices
      have a name.
    `<tag>`
      Additional `<tag>` and `<tag_value>` used for specifying PCI devices.
      Supported `<tag>` values are :
    • physical_network
    • trusted
    • remote_managed - VF はオフパスネットワーキングバックエンドによってリモートで管理されます。ブール値のような、大文字と小文字を区別しない文字列 ("true" または "false") を使用できます。デフォルトでは、すべてのデバイスに対して "false" が想定されます。このオプションを使用するには、これらのデバイスを処理できるネットワーキングサービスバックエンドが必要です。PCI デバイスには、カードの (VF 自体または対応する PF 上の) シリアル番号を持つ PCI VPD 機能も必要です。そうでない場合、デバイスは無視され、割り当てに使用できなくなります。
    • resource_class - [pci]device_spec が True の場合に、Placement 内の一致する PCI デバイスを追跡するために使用されるオプションの Placement リソースクラス名。これは、os-resource-classes ライブラリーからの標準リソースクラスにできます。任意の文字列にすることもできます。その場合、Nova はそれを大文字にして、[A-Z0-9_] 以外の連続する文字を単一の _ に置き換え、名前に接頭辞が付いていない場合は CUSTOM_ を接頭辞として付けることで、適切な Placement リソースクラスに正規化します。許容される最大長は接頭辞を含めて 255 文字です。resource_class が指定されていない場合、Nova は PCI デバイスの vendor_idproduct_id から、CUSTOM_PCI_{vendor_id}_{product_id} の形式でそれを生成します。resource_class は、[pci]alias から要求できます
    • traits - 一致する PCI デバイスを表すリソースプロバイダーについて報告する Placement トレイトのオプションのコンマ区切りリスト。各トレイトは、os-traits ライブラリーの標準トレイトにも、任意の文字列にもできます。標準トレイトではない場合、Nova はトレイト名を大文字にして正規化し、[A-Z0-9_] 以外の連続する文字を単一の _ に置き換え、接頭辞が付いていない場合は名前に CUSTOM_ を接頭辞として追加します。トレイト名の許容される最大長は、接頭辞を含めて 255 文字です。[pci]alias からは、traits からの任意の特定を要求できます。

      有効な例:
      device_spec = {"devname":"eth0", "physical_network":"physnet"} device_spec = {"address":":0a:00."} device_spec = {"address":":0a:00.", "physical_network":"physnet1"} device_spec = {"vendor_id":"1137", "product_id":"0071"} device_spec = {"vendor_id":"1137", "product_id":"0071", "address": "0000:0a:00.1", "physical_network":"physnet1"} device_spec = {"address":{"domain": ".", "bus": "02", "slot": "01", "function": "[2-7]"}, "physical_network":"physnet1"} device_spec = {"address":{"domain": ".", "bus": "02", "slot": "0[1-2]", "function": ".*"}, "physical_network":"physnet1"} device_spec = {"devname": "eth0", "physical_network":"physnet1", "trusted": "true"} device_spec = {"vendor_id":"a2d6", "product_id":"15b3", "remote_managed": "true"} device_spec = {"vendor_id":"a2d6", "product_id":"15b3", "address": "0000:82:00.0", "physical_network":"physnet1", "remote_managed": "true"} device_spec = {"vendor_id":"1002", "product_id":"6929", "address": "0000:82:00.0", "resource_class": "PGPU", "traits": "HW_GPU_API_VULKAN,my-awesome-gpu"}
      相互排他的オプションを指定するため、以下は無効です。

      device_spec = {"devname":"eth0", "physical_network":"physnet", "address":":0a:00."}

      The following example is invalid because it specifies the `remote_managed`
      tag for a PF - it will result in an error during config validation at the
      Nova Compute サービスの起動
      device_spec = {"address": "0000:82:00.0", "product_id": "a2d6", "vendor_id": "15b3", "physical_network": null, "remote_managed": "true"}
  • 上記の形式に対応する JSON ディクショナリーの JSON リスト。以下に

    example
    device_spec = [{"product_id":"0001", "vendor_id":"8086"}, {"product_id":"0002", "vendor_id":"8086"}]

report_in_placement = False

ブール値

Placement への PCI リソースインベントリーのレポートを有効にします。有効にすると、nova-compute サービスは [pci]device_spec 設定とハイパーバイザーによって報告された PCI デバイスに従って、PCI リソースインベントリーを Placement に報告します。一度有効にすると無効にできません。今後のリリースでは、この設定のデフォルトは True に変更されます。

関連するオプション:

  • [pci]device_spec: nova が追跡してゲストに割り当てることができる PCI デバイスを定義します。

9.1.40. placement

以下の表は、/etc/nova/nova.conf ファイルの [placement] グループで使用できるオプションの概要をまとめたものです。

表9.39 placement
設定オプション = デフォルト値タイプ説明

auth-url = None

文字列値

認証 URL

auth_section = None

文字列値

プラグイン固有のオプションを読み込む config セクション

auth_type = None

文字列値

読み込む認証タイプ

cafile = None

文字列値

HTTP 接続の検証時に使用する PEM でエンコードされた認証局。

certfile = None

文字列値

PEM でエンコードされたクライアント証明書の証明書ファイル

collect-timing = False

ブール値

API ごとの呼び出しタイミング情報を収集します。

connect-retries = None

整数値

接続エラーに対して試行される再試行の最大数。

connect-retry-delay = None

浮動小数点の値

接続エラーに対する 2 つの再試行の遅延 (秒単位)。設定されていない場合は、最大 60 秒まで 0.5 秒から開始する指数関数の再試行が使用されます。

default-domain-id = None

文字列値

v3 および v2 パラメーターで使用するオプションのドメイン ID。v3 のユーザーおよびプロジェクトドメインに使用され、v2 認証では無視されます。

default-domain-name = None

文字列値

v3 API および v2 パラメーターで使用するオプションのドメイン名です。v3 のユーザーおよびプロジェクトドメインに使用され、v2 認証では無視されます。

domain-id = None

文字列値

スコープするドメイン ID

domain-name = None

文字列値

スコープするドメイン名

endpoint-override = None

文字列値

このクライアントのリクエストには常にこのエンドポイント URL を使用します。注意: バージョンを指定しないエンドポイントはここで指定する必要があります。特定の API バージョンを要求するには、versionmin-version オプション、または max-version オプション、もしくはそれを組み合わせてを使用します。

insecure = False

ブール値

HTTPS 接続を確認します。

keyfile = None

文字列値

PEM でエンコードされたクライアント証明書キーファイル

password = None

文字列値

ユーザーのパスワード

project-domain-id = None

文字列値

プロジェクトを含むドメイン ID

project-domain-name = None

文字列値

プロジェクトを含むドメイン名

project-id = None

文字列値

スコープするプロジェクト ID

project-name = None

文字列値

スコープするプロジェクト名

region-name = None

文字列値

エンドポイント URL 検出のデフォルト region_name。

service-name = None

文字列値

エンドポイント URL 検出のデフォルト service_name。

service-type = placement

文字列値

エンドポイント URL 検出のデフォルト service_type。

split-loggers = False

ブール値

複数のロガーへの要求をログに記録します。

status-code-retries = None

整数値

再試行可能な HTTP ステータスコードに対して試行される再試行の最大数。

status-code-retry-delay = None

浮動小数点の値

再試行可能なステータスコードに対する 2 つの再試行間の遅延 (秒単位)。設定されていない場合は、最大 60 秒まで 0.5 秒から開始する指数関数の再試行が使用されます。

system-scope = None

文字列値

システム操作のスコープ

tenant-id = None

文字列値

テナント ID

tenant-name = None

文字列値

テナント名

timeout = None

整数値

http 要求のタイムアウト値

trust-id = None

文字列値

trustee として使用する信頼の ID

user-domain-id = None

文字列値

ユーザーのドメイン ID

user-domain-name = None

文字列値

ユーザーのドメイン名

user-id = None

文字列値

User ID

username = None

文字列値

Username

valid-interfaces = ['internal', 'public']

リスト値

エンドポイント URL のインターフェイスのリスト (優先順)。

9.1.41. privsep

以下の表は、/etc/nova/nova.conf ファイルの [privsep] グループで使用できるオプションの概要をまとめたものです。

表9.40 privsep
設定オプション = デフォルト値タイプ説明

capabilities = []

リスト値

privsep デーモンによって保持される Linux 機能のリスト。

group = None

文字列値

privsep デーモンを実行する必要のあるグループです。

helper_command = None

文字列値

"fork" メソッドを使用していない場合に privsep デーモンを起動するコマンドを呼び出します。指定のない場合は、現在の設定を再作成するために設計された "sudo privsep-helper" および引数を使用してデフォルト値が生成されます。このコマンドは、適切な --privsep_context および --privsep_sock_path 引数を使用する必要があります。

logger_name = oslo_privsep.daemon

文字列値

Logger name to use for this privsep context.By default all contexts log with oslo_privsep.daemon.

thread_pool_size = <based on operating system>

整数値

privsep が同時にプロセスを実行できるスレッドの数。デフォルトは、システム内の CPU コア数に設定されます。

user = None

文字列値

privsep デーモンを実行する必要のあるユーザー。

9.1.42. profiler

以下の表は、/etc/nova/nova.conf ファイルの [profiler] グループで使用できるオプションの概要をまとめたものです。

表9.41 profiler
設定オプション = デフォルト値タイプ説明

connection_string = messaging://

文字列値

通知バックエンドの接続文字列。

デフォルト値は messaging:// で、通知機能を oslo_messaging に設定します。

使用できる値の例:

  • messaging://: スパンの送信に oslo_messaging ドライバーを使用します。
  • redis://127.0.0.1:6379: スパンの送信に redis ドライバーを使用します。
  • mongodb://127.0.0.1:27017: スパンの送信に mongodb ドライバーを使用します。
  • elasticsearch://127.0.0.1:9200: elasticsearch ドライバーを使用してスパンを送信します。
  • jaeger://127.0.0.1:6831: スパンの送信に jaeger トレースを使用します。

enabled = False

ブール値

このノード上の全サービスのプロファイリングを有効にします。

デフォルト値は False です (プロファイリング機能を無効にします)。

値:

  • True: 機能を有効にします
  • False: 機能を無効にします。このプロジェクトの操作ではプロファイリングを開始できません。プロファイリングが別のプロジェクトでトリガーされた場合には、このプロジェクトの部分は空になります。

es_doc_type = notification

文字列値

elasticsearch の通知インデックスに関するドキュメントタイプ。

es_scroll_size = 10000

整数値

elasticsearch は大規模な要求をバッチに分割します。このパラメーターは、各バッチの最大サイズを定義します (例: es_scroll_size=10000)。

es_scroll_time = 2m

文字列値

このパラメーターは時間値パラメーター (es_scroll_time=2m など) です。これは、検索に参加するノードが継続してサポートするために関連するリソースを維持する時間を示します。

filter_error_trace = False

ブール値

エラー/例外を含むフィルタートレースを分離された場所へ有効にします。

デフォルト値は False に設定されます。

値:

  • True: エラー/例外を含むフィルタートレースを有効にします。
  • False: フィルターを無効にします。

hmac_keys = SECRET_KEY

文字列値

パフォーマンスプロファイリング用にコンテキストデータの暗号化に使用するシークレットキー。

この文字列値は <key1>[,<key2>,…​<keyn>] の形式にする必要があります。各キーはランダムな文字列です。REST API 経由でプロファイリングをトリガーするユーザーは、REST API 呼び出しのヘッダーにこれらのキーの 1 つを設定し、この特定プロジェクトのノードのプロファイリング結果が含まれるようにする必要があります。

プロファイリングを有効にするには、"enabled" フラグと "hmac_keys" 設定オプションの両方を設定する必要があります。また、少なくとも 1 つのキーで全サービス間で正しいプロファイリング情報を生成するには、OpenStack プロジェクト間で一貫性を確保する必要があります。これにより、クライアント側からを使用して、すべての可能なリソースからの情報を含むトレースを生成できます。

sentinel_service_name = mymaster

文字列値

Redissentinel はサービス名を使用してマスターの redis サービスを識別します。このパラメーターは名前を定義します (例: sentinal_service_name=mymaster)。

socket_timeout = 0.1

浮動小数点の値

Redissentinel は、接続に timeout オプションを提供します。このパラメーターは、タイムアウトを定義します (例: socket_timeout=0.1)。

trace_sqlalchemy = False

ブール値

サービスで SQL 要求のプロファイリングを有効にします。

デフォルト値は False です (SQL 要求はトレースされません)。

値:

  • True: SQL 要求のプロファイリングを有効にします。各 SQL クエリーはトレースの一部となり、それにどの程度の時間を費やしたかによって分析できます。
  • False: SQL 要求のプロファイリングを無効にします。費やした時間は、高いレベルの操作でのみ表示されます。単一の SQL クエリーをこのように分析できません。

9.1.43. quota

以下の表は、/etc/nova/nova.conf ファイルの [quota] グループで使用できるオプションの概要をまとめたものです。

表9.42 quota
設定オプション = デフォルト値タイプ説明

cores = 20

整数値

プロジェクトごとに許可されるインスタンスコアまたは vCPU の数。

値:

  • 正の整数または 0。
  • -1: クォータを無効にします。

count_usage_from_placement = False

ブール値

Placement サービスからクォータ使用状況の数を有効にします。

Train からは、セルデータベースからカウントするのではなく、プレイスメントサービスからコアとラム、API データベースからインスタンスのクォータ使用量をカウントすることが可能になりました。

これは、配置デプロイメントごとに 1 つの Nova デプロイメントが実行されている場合に適切に機能します。ただし、オペレーターが配置デプロイメントを共有する複数の Nova デプロイメントを実行している場合は、このオプションを True に設定しないでください。現在配置サービスでは Nova デプロイメントごとにリソースプロバイダーをパーティション分割する方法がないためです。このオプションがデフォルトのまま、または False に設定されている場合には、Nova は従来の counting メソッドを使用して、セルのデータベースからインスタンス、コア、および ram のクォータ使用量をカウントします。

このオプションが True に設定されている場合、サイズ変更に関連するクォータの使用動作は影響を受けることに注意してください。配置リソースの割り当ては、サイズ変更が確認されるか、元に戻されるまで、サイズ変更時にソースの割り当てを保持している間に宛先で要求されます。この間、サーバーが VERIFY_RESIZE 状態にあると、クォータの使用量は送信元と宛先の両方のリソース消費を反映します。これは、ダウンしたサイズを元に戻すために領域を確保するため便利ですが、サイズ変更の確認または元に戻すまでクォータの使用量が平文化されることを意味します。

動作は、ERROR 状態の未スケジュールのサーバーでも異なります。コンピュートホストにスケジュールされていない ERROR 状態のサーバーは配置割り当てを持たないため、コアと ram のクォータ使用量は消費されません。

動作は SHELVED_OFFLOADED 状態のサーバーでは異なります。SHELVED_OFFLOADED 状態のサーバーには配置割り当てがないため、コアと RAM のクォータ使用量は消費しません。このため、ユーザーに、サーバーの状態を外すためにサーバーに必要とされるコアと RAM をサポートできるクォータが十分にない場合、要求が拒否される可能性があります。

使用状況を配置からカウントするには、オンラインデータ移行の populate_queued_for_delete および populate_user_id を完了する必要があります。この設定オプションが True に設定されている場合、データ移行が完了するまで、各クォータチェック中の EXISTS データベースクエリーの結果に応じて、システムはセルデータベースからのレガシークォータ使用量カウントにフォールバックします。EXISTS クエリーによるパフォーマンスの低下を回避したい場合は、nova-manage db online_data_migrations で オンラインデータ移行を完了するまでこの設定オプションを True に設定するのを待つべきです。

driver = nova.quota.DbQuotaDriver

文字列値

クォータチェックの抽象化を提供します。クォータチェックに使用する特定のドライバーを設定できます。

injected_file_content_bytes = 10240

整数値

挿入されたファイルごとに許可されるバイト数。

値:

  • 正の整数または 0。
  • -1: クォータを無効にします。

injected_file_path_length = 255

整数値

許可される最大ファイルパスの長さ。

値:

  • 正の整数または 0。
  • -1: クォータを無効にします。

injected_files = 5

整数値

許可されるインジェクションファイルの数。

ファイルインジェクションにより、ユーザーは起動時にデータをインジェクトしてインスタンスのパーソナリティーをカスタマイズできます。テキストファイルの挿入のみが許可されます: バイナリーまたは ZIP ファイルは許可されません。ファイルインジェクション中に、指定したファイルに一致する既存のファイルの名前が変更され、タイムスタンプで追加された .bak 拡張子が含まれます。

値:

  • 正の整数または 0。
  • -1: クォータを無効にします。

instances = 10

整数値

プロジェクトごとに許可されるインスタンス数。

設定可能な値

  • 正の整数または 0。
  • -1: クォータを無効にします。

key_pairs = 100

整数値

ユーザー 1 つにつき許容されるキーペアの最大数。

ユーザーは、プロジェクトごとに少なくとも 1 つのキーペアを作成し、そのプロジェクトに属する複数のインスタンスにキーペアを使用することができます。

値:

  • 正の整数または 0。
  • -1: クォータを無効にします。

metadata_items = 128

整数値

インスタンスごとに許可されるメタデータ項目の数。

インスタンスの作成時にメタデータをインスタンスに関連付けることができます。このメタデータはキーと値のペアの形式です。

値:

  • 正の整数または 0。
  • -1: クォータを無効にします。

ram = 51200

整数値

プロジェクトごとに許可されるインスタンス RAM のメガバイト数。

値:

  • 正の整数または 0。
  • -1: クォータを無効にします。

recheck_quota = True

ブール値

リソースの作成後にクォータを再チェックして、クォータを超過できないようにします。

デフォルトは True (リソース作成後にクォータを再確認) ですが、レース要求のためにクォータを超過することを許容すると見なされる場合、追加の負荷を避けるために False に設定することが可能です。たとえば、False に設定すると、ユーザーがサーバーを作成するために非常に並列な REST API 要求を行う場合、競合時に許可されたクォータよりも多くのサーバーを作成することができます。クォータが 10 サーバーの場合、それらはバースト中に 50 を作成できる可能性があります。バーストの後には、より多くのサーバーを作成できなくなりますが、サーバーを削除するまで 50 台のサーバーを保持することができます。

最初のクォータチェックはリソースが作成される前に実行されるので、複数の並列要求が同時に到達すると、すべてがクォータチェックとリソースの作成をパスして、クォータを超過する可能性があります。recheck_quota が True の場合、リソースが作成された後に 2 回目のクォータチェックが行われ、リソースが quota を超えている場合は削除されて OverQuota が発生し、通常 REST API ユーザーに対して 403 応答が返されます。これにより、ユーザーがクォータを超過する可能性は不可能になります。ただし、ユーザーが要求を行ったときに利用可能なクォータが十分であっても、競合が近い場合に、REST API ユーザーが 403 応答で拒否される可能性があります。

server_group_members = 10

整数値

サーバーグループごとのサーバーの最大数。

値:

  • 正の整数または 0。
  • -1: クォータを無効にします。

server_groups = 10

整数値

プロジェクトごとのサーバーグループの最大数。

サーバーグループは、サーバーまたはインスタンスのグループに対するアフィニティーおよびアンチアフィニティーのスケジューリングポリシーを制御するために使用されます。クォータを縮小しても、既存のグループには影響はありませんが、クォータを超えるグループには新しいサーバーは許可されません。

値:

  • 正の整数または 0。
  • -1: クォータを無効にします。

9.1.44. rdp

以下の表は、/etc/nova/nova.conf ファイルの [rdp] グループで使用できるオプションの概要をまとめたものです。

表9.43 rdp
設定オプション = デフォルト値タイプ説明

enabled = False

ブール値

Remote Desktop Protocol (RDP) の関連機能を有効にします。

Hyper-V は、Nova コンピュートノードで採用されているハイパーバイザーの大半とは異なり、デスクトップ共有プロトコルとして VNC および SPICE の代わりに RDP を使用して、インスタンスのコンソールアクセスを提供します。このオプションを使用すると、Hyper-V により作成される仮想マシンのグラフィカルコンソールアクセスに RDP が有効になります。

注意: RDP は、Hyper-V 仮想化プラットフォームをサポートするコンピュートノードでのみ有効にする必要があります。

関連するオプション:

  • compute_driver: hyperv である必要があります。

html5_proxy_base_url = http://127.0.0.1:6083/

URI 値

エンドユーザーが RDP HTML5 コンソールプロキシーへの接続に使用する URL。コンソールプロキシーサービスは、この token-embedded URL で呼び出され、適切なインスタンスへの接続を確立します。

RDP HTML5 コンソールプロキシーサービスは、ここで設定されたアドレスをリッスンするように設定する必要があります。通常、コンソールプロキシーサービスはコントローラーノードで実行されます。デフォルトで使用されている localhost アドレスは、単一ノード環境 (devstack など) でのみ動作するものです。

RDP HTML5 プロキシーを使用すると、ユーザーは RDP を使用して Windows サーバーまたはワークステーションのテキストまたはグラフィカルコンソールを介してアクセスできます。RDP HTML5 コンソールプロキシーサービスには、FreeRDP、wsgate があります。https://github.com/FreeRDP/FreeRDP-WebConnect を参照してください。

値:

  • <scheme>://<ip-address>:<port-number>/

    The scheme must be identical to the scheme configured for the RDP HTML5
    console proxy service. It is `http` or `https`.
    The IP address must be identical to the address on which the RDP HTML5
    console proxy service is listening.
    The port must be identical to the port on which the RDP HTML5 console proxy
    service is listening.

関連するオプション:

  • rdp.enabled: html5_proxy_base_url を有効にするには、True に設定する必要があります。

9.1.45. remote_debug

以下の表は、/etc/nova/nova.conf ファイルの [remote_debug] グループで使用できるオプションの概要をまとめたものです。

表9.44 remote_debug
設定オプション = デフォルト値タイプ説明

host = None

ホストのアドレス値

接続するホスト (IP または名前) のデバッグ。

このコマンドラインパラメーターは、別のホストで実行しているデバッガーを使用して nova サービスに接続する場合に使用されます。

リモートデバッグオプションを使用すると、nova がイベントレットライブラリーを使用して非同期 IO をサポートする方法が変わることに注意してください。これにより、通常の操作でエラーが発生しない可能性がありました。自己責任でお使いください。

以下の値を使用できます。

  • nova サービスに対するコマンドラインパラメーターとしてリモートホストの IP アドレス

    以下に例を示します。
    nova-compute --config-file /etc/nova/nova.conf --remote_debug-host <IP address of the debugger>

port = None

ポート値

接続するポートをデバッグします。

このコマンドラインパラメーターを使用すると、異なるホストで実行しているデバッガーで nova サービスへの接続に使用するポートを指定できます。

リモートデバッグオプションを使用すると、nova がイベントレットライブラリーを使用して非同期 IO をサポートする方法が変わることに注意してください。これにより、通常の操作でエラーが発生しない可能性がありました。自己責任でお使いください。

以下の値を使用できます。

  • nova サービスのコマンドラインパラメーターとして使用するポート番号。

    以下に例を示します。
    nova-compute --config-file /etc/nova/nova.conf --remote_debug-host <IP address of the debugger> --remote_debug-port <port debugger is listening on>.

9.1.46. scheduler

以下の表は、/etc/nova/nova.conf ファイルの [scheduler] グループで使用できるオプションの概要をまとめたものです。

表9.45 scheduler
設定オプション = デフォルト値タイプ説明

discover_hosts_in_cells_interval = -1

整数値

定期的なタスク間隔。

この値は、セルに追加された新規ホストの検出をスケジューラーが試みる頻度 (秒単位) です。負の値 (デフォルト) の場合、自動検出は行われません。

コンピュートノードが頻繁に出入りするような環境では、この機能を有効にした方が良いでしょうし、ホストが追加されたときに手動で検出する方が、常にチェックすることによるオーバーヘッドを避けられます。有効にすると、この実行のたびに、各セルデータベースからマッピングされていないホストを選択するようになります。

値:

  • 整数。整数は秒単位の定期的なタスク間隔に対応します。0 はデフォルトの間隔 (60 秒) を使用します。負の値を指定すると、定期的なタスクが無効になります。

enable_isolated_aggregate_filtering = False

ブール値

集計の使用を一致するメタデータを持つインスタンスに制限します。

この設定により、スケジューラーは、アグリゲートメタデータおよびインスタンスのフレーバー/イメージの要求される特性のマッチングに基づき、アグリゲートのホストを制限することができます。アグリゲートにキー trait:$TRAIT_NAME と値が required 属性が設定されている場合、そのアグリゲートのホストにスケジューリングされるためには、インスタンスのフレーバー extra_specs またはイメージのメタデータにも trait:$TRAIT_NAME=required が含まれている必要があります。その他の技術詳細: https://docs.openstack.org/nova/latest/reference/isolate-aggregates.html

値:

  • ブール値。

image_metadata_prefilter = False

ブール値

配置を使用して、イメージメタデータに基づいてホストをフィルタリングします。

この設定により、スケジューラーは、イメージメタデータに基づいてホストをフィルタリングするために、既知のイメージメタデータプロパティーを配置に必要な特性に変換します。この機能にはホストサポートが必要であり、現在、次のコンピューティングドライバーでサポートされています。

  • libvirt.LibvirtDriver (Ussuri (21.0.0) 以降)

値:

  • ブール値。

関連するオプション:

  • [compute] compute_driver

limit_tenants_to_placement_aggregate = False

ブール値

テナントを特定の配置集約に制限します。

この設定により、スケジューラーは、受信リクエストのプロジェクトに設定された filter_tenant_id のメタデータキーを持つホストアグリゲートを検索し、配置からのリクエスト結果をそのアグリゲートに限定するようになります。filter_tenant_id:123 などのシリアル番号をキーに追加して、複数のテナントを単一のアグリゲートに追加できます。

一致するアグリゲートの UUID は、適切な操作のために配置にミラーリングする必要があります。テナント ID を持つホストアグリゲートが見つからない場合や、そのアグリゲートが配置のものと一致しない場合、リクエストに適したホストが見つからない場合と同じ結果になります。

値:

  • ブール値。

関連するオプション:

  • [scheduler] placement_aggregate_required_for_tenants

max_attempts = 3

整数値

スケジュール試行の最大数。

これは、指定のインスタンスのビルド/移動操作に対して行われる最大試行回数です。スケジューラーによって返される代替ホストの数を制限します。ホストのリストが使い果たされると、MaxRetriesExceeded 例外が発生し、インスタンスはエラー状態に設定されます。

値:

  • 正の整数。この整数は、インスタンスを構築または移動する際に行うことができる最大試行回数に対応する。

max_placement_results = 1000

整数値

リクエストする配置結果の最大数。

この設定は、スケジューリング中に配置サービスから受け取る結果の上限を決定します。これは、多数の候補に一致するスケジュール要求について考慮される可能性のあるホストの数を制限します。

1(最小値) を指定すると、"適合する" かどうかという理由だけで、事実上、配置サービスにスケジュールを委ねることになります。高い値を設定すると、スケジューラーがフィルタリングと重み付けの過程で考慮する結果の数に上限が設定されます。大規模な環境では、スケジューラーのメモリー消費量やネットワークトラフィックなどを制限するために、この値を利用可能なホストの総数よりも少なく設定する必要があるかもしれません。

値:

  • 返される配置結果の数に対応する整数。

placement_aggregate_required_for_tenants = False

ブール値

すべてのテナントに配置集約の関連付けを要求します。

limit_tenants_to_placement_aggregate=True に設定すると、アグリゲートアフィニティーが設定されていないテナントを任意のノードにスケジュールできるかどうかを制御します。アグリゲートを使用して一部のテナントだけを制限する場合は、このパラメーターを False に設定する必要があります。すべてのテナントをアグリゲートで制限する必要がある場合には、利用可能なノードに対して無制限のスケジューリングを受け取れないように True にする必要があります。

値:

  • ブール値。

関連するオプション:

  • [scheduler] placement_aggregate_required_for_tenants

query_placement_for_availability_zone = True

ブール値

配置を使用して可用性ゾーンを決定します。

この設定により、スケジューラーは availability_zone のメタデータキーが受信要求により提供された値に設定されたホストアグリゲートを検索し、配置結果をそのアグリゲートに制限するように要求します。

一致するアグリゲートの UUID は、適切な操作のために配置にミラーリングする必要があります。availability_zone キーを持つホストアグリゲートが見つからない場合や、そのアグリゲートが配置にあるものと一致しない場合、結果は適切なホストを見つけられないのと同じになります。

このフラグを無効にする場合は、スケジューラーで (効率の低い) AvailabilityZoneFilter必ず 有効にする必要があることに注意してください。そうしない場合、アベイラビリティーゾーンは正しく機能しません。

値:

  • ブール値。

関連するオプション:

  • [filter_scheduler] enabled_filters

非推奨: 24.0.0 以降

理由: 18.0.0 (Rocky) で配置の事前フィルターが導入されて以来、配置でネイティブに、または従来の ``AvailabilityZoneFilter`` スケジューラーフィルターを使用して、アベイラビリティーゾーンを追跡することがサポートされています。24.0.0 (Xena) では、フィルターベースのアプローチは非推奨となり、代わりに配置ベースのアプローチが採用されました。その結果、この設定オプションも非推奨となり、``AvailabilityZoneFilter` フィルターの削除と併せて削除される予定です。

query_placement_for_image_type_support = False

ブール値

配置を使用して、インスタンスのイメージタイプに対するホストサポートを決定します。

この設定により、スケジューラーは、要求で使用されるイメージの disk_format をサポートするコンピュートホストの配置だけを要求するようになります。

値:

  • ブール値。

query_placement_for_routed_network_aggregates = False

ブール値

スケジューラーを有効にして、ルーティングされたネットワークセグメントアグリゲートに関連付けられたコンピューティングホストをフィルタリングします。

詳細は、https://docs.openstack.org/neutron/latest/admin/config-routed-networks.html を参照してください。

workers = None

整数値

nova-scheduler サービスのワーカー数。

デフォルトは、使用可能な CPU の数です。

値:

  • 整数。整数はワーカープロセスの数に対応します。

9.1.47. serial_console

以下の表は、/etc/nova/nova.conf ファイルの [serial_console] グループで使用できるオプションの概要をまとめたものです。

表9.46 serial_console
設定オプション = デフォルト値タイプ説明

base_url = ws://127.0.0.1:6083/

URI 値

エンドユーザーが nova-serialproxy サービスへの接続に使用する URL。

nova-serialproxy サービスは、このトークンの強化 URL を使用して呼び出され、適切なインスタンスへの接続を確立します。

関連するオプション:

  • IP アドレスは、nova-serialproxy サービスがリッスンしているアドレスと同じである必要があります (このセクションのオプション serialproxy_host を参照)。
  • ポートは、このセクションの serialproxy_port オプションと同じでなければなりません。
  • セキュリティーで保護された WebSocket 接続を使用する場合は、セキュリティーで保護されていない ws:// ではなく wss:// でこのオプションを開始します。そのためには、[DEFAULT] セクションのオプション certkey を設定する必要があります。

enabled = False

ブール値

シリアルコンソール機能を有効にします。

この機能を使用するには、サービス nova-serialproxy を実行する必要があります。このサービスは通常、コントローラーノードで実行されます。

port_range = 10000:20000

文字列値

ゲストがバックエンドに使用できる TCP ポートの範囲。

作成される各インスタンスは、この範囲から 1 つのポートを使用します。新しいインスタンスに別のポートを提供する上で範囲が十分に大きくない場合は、このインスタンスは起動されません。

値:

  • 正規表現 ^\d+:\d+$ を渡す各文字列 (例: 10000:20000)。最初のポート番号が 2 番目のポート番号より小さく、両方が 0 から 65535 の範囲内にあることを確認してください。

proxyclient_address = 127.0.0.1

文字列値

インスタンスのシリアルコンソールを取得するために、プロキシークライアント (nova-serialproxy など) が接続する IP アドレス。

これは通常、nova-compute サービスのホストの IP アドレスになります。

serialproxy_host = 0.0.0.0

文字列値

nova-serialproxy サービスが着信要求をリッスンするために使用する IP アドレス。

nova-serialproxy サービスは、シリアルコンソールを公開するインスタンスへの着信接続要求をこの IP アドレスでリッスンします。

関連するオプション:

  • これが、このセクションのオプション base_url で定義されているものと同じ IP アドレスであることを確認するか、0.0.0.0 を使用してすべてのアドレスをリッスンします。

serialproxy_port = 6083

ポート値

nova-serialproxy サービスが受信リクエストをリッスンするために使用するポート番号。

nova-serialproxy サービスは、シリアルコンソールを公開するインスタンスへの着信接続要求をこのポート番号でリッスンします。

関連するオプション:

  • これが、このセクションのオプション base_url で定義されているポート番号と同じであることを確認してください。

9.1.48. service_user

以下の表は、/etc/nova/nova.conf ファイルの [service_user] グループで使用できるオプションの概要をまとめたものです。

表9.47 service_user
設定オプション = デフォルト値タイプ説明

auth-url = None

文字列値

認証 URL

auth_section = None

文字列値

プラグイン固有のオプションを読み込む config セクション

auth_type = None

文字列値

読み込む認証タイプ

cafile = None

文字列値

HTTP 接続の検証時に使用する PEM でエンコードされた認証局。

certfile = None

文字列値

PEM でエンコードされたクライアント証明書の証明書ファイル

collect-timing = False

ブール値

API ごとの呼び出しタイミング情報を収集します。

default-domain-id = None

文字列値

v3 および v2 パラメーターで使用するオプションのドメイン ID。v3 のユーザーおよびプロジェクトドメインに使用され、v2 認証では無視されます。

default-domain-name = None

文字列値

v3 API および v2 パラメーターで使用するオプションのドメイン名です。v3 のユーザーおよびプロジェクトドメインに使用され、v2 認証では無視されます。

domain-id = None

文字列値

スコープするドメイン ID

domain-name = None

文字列値

スコープするドメイン名

insecure = False

ブール値

HTTPS 接続を確認します。

keyfile = None

文字列値

PEM でエンコードされたクライアント証明書キーファイル

password = None

文字列値

ユーザーのパスワード

project-domain-id = None

文字列値

プロジェクトを含むドメイン ID

project-domain-name = None

文字列値

プロジェクトを含むドメイン名

project-id = None

文字列値

スコープするプロジェクト ID

project-name = None

文字列値

スコープするプロジェクト名

send_service_user_token = False

ブール値

True の場合には、REST API にユーザートークンを送信すると、サービストークンも送信されます。

Nova は、Cinder、Glance、Neutron などの他の REST API と通信するために、nova-api に提供されたユーザートークンを再利用することがよくあります。要求が Nova に対して行われたときにユーザートークンが有効であったとしても、他のサービスに到達する前にトークンが期限切れになる可能性があります。障害を回避し、Nova がユーザーに代わってサービスを呼び出していることを明確にするために、ユーザートークンと共にサービストークンを含めます。ユーザーのトークンの有効期限が切れた場合でも、有効なサービストークンにより、REST API リクエストが引き続き keystone ミドルウェアによって受け入れられることが保証されます。

split-loggers = False

ブール値

複数のロガーへの要求をログに記録します。

system-scope = None

文字列値

システム操作のスコープ

tenant-id = None

文字列値

テナント ID

tenant-name = None

文字列値

テナント名

timeout = None

整数値

http 要求のタイムアウト値

trust-id = None

文字列値

trustee として使用する信頼の ID

user-domain-id = None

文字列値

ユーザーのドメイン ID

user-domain-name = None

文字列値

ユーザーのドメイン名

user-id = None

文字列値

User ID

username = None

文字列値

Username

9.1.49. spice

以下の表は、/etc/nova/nova.conf ファイルの [spice] グループで使用できるオプションの概要をまとめたものです。

表9.48 spice
設定オプション = デフォルト値タイプ説明

agent_enabled = True

ブール値

インスタンスで SPICE ゲストエージェントのサポートを有効にします。

Spice エージェントは Spice プロトコルを使用して、より優れたゲストコンソールエクスペリエンスを提供します。ただし、Spice コンソールは、Spice エージェントがなくても使用できます。Spice エージェントをインストールすると、次の機能が有効になります。

  • ゲストとクライアントマシン間でのテキストとイメージのコピーアンドペースト
  • クライアント画面が変更されたときの解像度の自動調整: たとえば、Spice コンソールを全画面表示にすると、ゲストの解像度はレターボックスではなく、全画面表示に合わせて調整されます。
  • マウス統合の改善: コンソール内をクリックしたり、キーを押してリリースしたりすることなく、マウスをキャプチャーしてリリースすることができます。マウス移動のパフォーマンスも向上しています。

enabled = False

ブール値

SPICE 関連の機能を有効にします。

関連するオプション:

  • SPICE コンソールにアクセスするには、VNC を明示的に無効にする必要があります。[vnc] セクションで有効化されているオプションを False に設定して、VNC コンソールを無効にします。

html5proxy_base_url = http://127.0.0.1:6082/spice_auto.html

URI 値

SPICE HTML5 コンソールプロキシーの場所。

エンドユーザーは、この URL を使用して nova-spicehtml5proxy サービスに接続します。このサービスは、リクエストをインスタンスのコンソールに転送します。

SPICE コンソールを使用するには、サービス nova-spicehtml5proxy が実行されている必要があります。このサービスは通常、コントローラーノードで起動されます。

値:

  • http://host:port/spice_auto.html の形式の有効な URL である必要があります。ここで、ホストは nova-spicehtml5proxy を実行しているノードで、ポートは通常 6082 になります。デフォルト値は、実際のデプロイメントでは適切に定義されていないため、使用しないことを検討してください。

関連するオプション:

  • このオプションは、html5proxy_host および html5proxy_port オプションに依存します。コンピュートノードによって返されるアクセス URL には、nova-spicehtml5proxy サービスがリッスンしているホストとポートが含まれている必要があります。

html5proxy_host = 0.0.0.0

ホストのアドレス値

nova-spicehtml5proxy サービスが着信要求をリッスンする IP アドレスまたはホスト名。

関連するオプション:

  • このオプションは、html5proxy_base_url オプションに依存します。nova-spicehtml5proxy サービスは、HTML5 クライアントからアクセスできるホストでリッスンしている必要があります。

html5proxy_port = 6082

ポート値

nova-spicehtml5proxy サービスが受信リクエストをリッスンするポート。

関連するオプション:

  • このオプションは、html5proxy_base_url オプションに依存します。nova-spicehtml5proxy サービスは、HTML5 クライアントからアクセスできるポートでリッスンしている必要があります。

image_compression = None

文字列値

SPICE イメージ圧縮 (ロスレス) を設定します。

jpeg_compression = None

文字列値

SPICE wan イメージ圧縮 (低速リンクの場合は非可逆) を設定します。

playback_compression = None

ブール値

SPICE オーディオストリーム圧縮 (celt を使用) を有効にします。

server_listen = 127.0.0.1

文字列値

インスタンスで実行されている SPICE サーバーがリッスンする必要のあるアドレス。

通常、nova-spicehtml5proxy プロキシークライアントはコントローラーノードで実行され、プライベートネットワークを介してコンピュートノード上のこのアドレスに接続します。

値:

  • リッスンする IP アドレス。

server_proxyclient_address = 127.0.0.1

文字列値

nova-spicehtml5proxy クライアントがインスタンスコンソールに接続するために使用するアドレス。

通常、nova-spicehtml5proxy プロキシークライアントはコントローラーノードで実行され、プライベートネットワークを介してコンピュートノード上のこのアドレスに接続します。

値:

  • コンピュートノード上の任意の有効な IP アドレス。

関連するオプション:

  • このオプションは、server_listen オプションに依存します。プロキシークライアントは、このオプションの値を使用して、server_listen で指定されたアドレスにアクセスできる必要があります。

streaming_mode = None

文字列値

SPICE ビデオストリームの検出と (非可逆) 圧縮を設定します。

zlib_compression = None

文字列値

SPICE wan イメージ圧縮 (低速リンクの場合はロスレス) を設定します。

9.1.50. upgrade_levels

以下の表は、/etc/nova/nova.conf ファイルの [upgrade_levels] グループで使用できるオプションの概要をまとめたものです。

表9.49 upgrade_levels
設定オプション = デフォルト値タイプ説明

baseapi = None

文字列値

Base API RPC API バージョンキャップ。

値:

  • デフォルトでは、クライアントが認識している最新バージョンを送信します。
  • N.N 形式のバージョン番号を表す文字列。たとえば、可能な値は 1.12 または 2.0 などです。
  • mitakaliberty など、小文字の OpenStack リリース名。

cert = None

文字列値

Cert RPC API バージョンキャップ。

値:

  • デフォルトでは、クライアントが認識している最新バージョンを送信します。
  • N.N 形式のバージョン番号を表す文字列。たとえば、可能な値は 1.12 または 2.0 などです。
  • mitakaliberty など、小文字の OpenStack リリース名。

非推奨となったバージョン: 18.0.0

理由: nova-cert サービスは 16.0.0 (Pike) で削除されたため、このオプションは使用されなくなりました。

compute = None

文字列値

Compute RPC API バージョンキャップ。

デフォルトでは、クライアントが認識している最新のバージョンを使用して常にメッセージを送信します。

古いコンピュートサービスと新しいコンピュートサービスを実行している場合は、これを最も低いデプロイされたバージョンに設定する必要があります。これは、すべてのサービスが、いずれかのコンピュートノードが理解できないメッセージを送信することがないことを保証するためです。リリース N からリリース N+1 へのアップグレードのみがサポートされていることに注意してください。

デプロイメント内のサービスバージョンに基づいて、使用するバージョンをコンピュート RPC モジュールに自動的に決定させる場合は、このオプションを "auto" に設定します。

値:

  • デフォルトでは、クライアントが認識している最新バージョンを送信します。
  • auto: デプロイメント内のサービスバージョンに基づいて、使用するバージョンを自動的に決定します。
  • N.N 形式のバージョン番号を表す文字列。たとえば、可能な値は 1.12 または 2.0 などです。
  • mitakaliberty など、小文字の OpenStack リリース名。

conductor = None

文字列値

Conductor RPC API バージョンキャップ。

値:

  • デフォルトでは、クライアントが認識している最新バージョンを送信します。
  • N.N 形式のバージョン番号を表す文字列。たとえば、可能な値は 1.12 または 2.0 などです。
  • mitakaliberty など、小文字の OpenStack リリース名。

scheduler = None

文字列値

Scheduler RPC API バージョンキャップ。

値:

  • デフォルトでは、クライアントが認識している最新バージョンを送信します。
  • N.N 形式のバージョン番号を表す文字列。たとえば、可能な値は 1.12 または 2.0 などです。
  • mitakaliberty など、小文字の OpenStack リリース名。

9.1.51. vault

以下の表は、/etc/nova/nova.conf ファイルの [vault] グループで使用できるオプションの概要をまとめたものです。

表9.50 vault
設定オプション = デフォルト値タイプ説明

approle_role_id = None

文字列値

Vault での認証の場合は AppRole role_id

approle_secret_id = None

文字列値

Vault での認証の場合は AppRole secret_id

kv_mountpoint = secret

文字列値

使用する Vault の KV ストアのマウントポイント (例: secret)。

kv_version = 2

整数値

使用する Vault 内の KV ストアのバージョン。例: 2

namespace = None

文字列値

Vault へのすべてのリクエストに使用する Vault Namespace。Vault Namespace 機能は Vault Enterprise でのみ利用可能です

root_token_id = None

文字列値

Vault の root トークン

ssl_ca_crt_file = None

文字列値

証明書ファイルの絶対パス

use_ssl = False

ブール値

SSL の有効化/無効化

vault_url = http://127.0.0.1:8200

文字列値

このエンドポイントを使用して Vault に接続します (例: "http://127.0.0.1:8200")。

9.1.52. vendordata_dynamic_auth

以下の表は、/etc/nova/nova.conf ファイルの [vendordata_dynamic_auth] グループで使用できるオプションの概要をまとめたものです。

表9.51 vendordata_dynamic_auth
設定オプション = デフォルト値タイプ説明

auth-url = None

文字列値

認証 URL

auth_section = None

文字列値

プラグイン固有のオプションを読み込む config セクション

auth_type = None

文字列値

読み込む認証タイプ

cafile = None

文字列値

HTTP 接続の検証時に使用する PEM でエンコードされた認証局。

certfile = None

文字列値

PEM でエンコードされたクライアント証明書の証明書ファイル

collect-timing = False

ブール値

API ごとの呼び出しタイミング情報を収集します。

default-domain-id = None

文字列値

v3 および v2 パラメーターで使用するオプションのドメイン ID。v3 のユーザーおよびプロジェクトドメインに使用され、v2 認証では無視されます。

default-domain-name = None

文字列値

v3 API および v2 パラメーターで使用するオプションのドメイン名です。v3 のユーザーおよびプロジェクトドメインに使用され、v2 認証では無視されます。

domain-id = None

文字列値

スコープするドメイン ID

domain-name = None

文字列値

スコープするドメイン名

insecure = False

ブール値

HTTPS 接続を確認します。

keyfile = None

文字列値

PEM でエンコードされたクライアント証明書キーファイル

password = None

文字列値

ユーザーのパスワード

project-domain-id = None

文字列値

プロジェクトを含むドメイン ID

project-domain-name = None

文字列値

プロジェクトを含むドメイン名

project-id = None

文字列値

スコープするプロジェクト ID

project-name = None

文字列値

スコープするプロジェクト名

split-loggers = False

ブール値

複数のロガーへの要求をログに記録します。

system-scope = None

文字列値

システム操作のスコープ

tenant-id = None

文字列値

テナント ID

tenant-name = None

文字列値

テナント名

timeout = None

整数値

http 要求のタイムアウト値

trust-id = None

文字列値

trustee として使用する信頼の ID

user-domain-id = None

文字列値

ユーザーのドメイン ID

user-domain-name = None

文字列値

ユーザーのドメイン名

user-id = None

文字列値

User ID

username = None

文字列値

Username

9.1.53. vmware

以下の表は、/etc/nova/nova.conf ファイルの [vmware] グループで使用できるオプションの概要をまとめたものです。

表9.52 vmware
設定オプション = デフォルト値タイプ説明

api_retry_count = 10

整数値

ソケットエラーなどの接続障害が発生した場合に、VMware vCenter Server API を再試行しなければならない回数。

ca_file = None

文字列値

vCenter サーバー証明書の検証に使用する CA バンドルファイルを指定します。

cache_prefix = None

文字列値

このオプションは、キャッシュされたイメージが保存されるフォルダーに接頭辞を追加します。

これは完全なパスではなく、単なるフォルダーの接頭辞です。これは、データストアキャッシュがコンピュートノード間で共有されている場合にのみ使用してください。

注意: これは、コンピュートノードが同じホストで実行されている場合、または共有ファイルシステムがある場合にのみ使用してください。

値:

  • フォルダーのキャッシュ接頭辞を表す任意の文字列

cluster_name = None

文字列値

VMware Cluster ComputeResource の名前。

connection_pool_size = 10

整数値

このオプションは、http 接続プールのサイズを設定します

接続プールサイズは、nova から vSphere への接続の最大数です。これは、接続プールがいっぱいであることを示す警告がある場合にのみ増やす必要があります。それ以外の場合は、デフォルトで十分です。

console_delay_seconds = None

整数値

リモートコンソールに入力するときに文字が繰り返されるネットワーク遅延の増加の影響を受ける場合は、この値を設定します。

datastore_regex = None

文字列値

データストアの名前に一致する正規表現パターン。

datastore_regex 設定は、Compute で使用するデータストアを指定します。たとえば、datastore_regex="nas.*" は、名前が "nas" で始まるすべてのデータストアを選択します。

注記

正規表現が指定されていない場合は、空き容量が最も多いデータストアが選択されます。

値:

  • データストアに一致する正規表現を指定する必要があります。

host_ip = None

ホストのアドレス値

VMware vCenter ホストに接続するためのホスト名または IP アドレス。

host_password = None

文字列値

VMware vCenter ホストに接続するためのパスワード。

host_port = 443

ポート値

VMware vCenter ホストに接続するためのポート。

host_username = None

文字列値

VMware vCenter ホストに接続するためのユーザー名。

insecure = False

ブール値

true の場合、vCenter サーバー証明書は検証されません。false の場合、デフォルトの CA トラストストアが検証に使用されます。

関連するオプション:

  • ca_file: "ca_file" が設定されている場合、このオプションは無視されます。

integration_bridge = None

文字列値

このオプションは、NSX-MH Neutron プラグインを使用する場合にのみ設定する必要があります。これは、ESXi サーバーまたはホスト上の統合ブリッジの名前です。これは、他の Neutron プラグインには設定しないでください。したがって、デフォルト値は設定されていません。

値:

  • 統合ブリッジの名前を表す任意の有効な文字列。

maximum_objects = 100

整数値

このオプションは、1 つの結果で返されるオブジェクトの最大数の制限を指定します。

正の値を指定すると、オブジェクトの数が指定された制限に達したときに操作が取得を一時停止します。サーバーは引き続き、設定された値よりも小さい値に制限する可能性があります。残りのオブジェクトは、追加のリクエストで取得できます。

pbm_default_policy = None

文字列値

このオプションは、使用するデフォルトポリシーを指定します。

pbm_enabled が設定されていて、特定の要求に対してストレージポリシーが定義されていない場合は、このポリシーが使用されます。

値:

  • VSAN のデフォルトストレージポリシーなどの有効なストレージポリシー

関連するオプション:

  • pbm_enabled

pbm_enabled = False

ブール値

このオプションは、ストレージポリシーに基づくインスタンスの配置を有効または無効にします。

関連するオプション:

  • pbm_default_policy

pbm_wsdl_location = None

文字列値

このオプションは、PBM サービスの WSDL ファイルの場所を示す URL を指定します。

これを設定すると、ストレージポリシーに基づくインスタンスの配置が無効になります。

値:

serial_log_dir = /opt/vmware/vspc

文字列値

仮想シリアルポートコンセントレーターがコンソールログファイルを保存するディレクトリーを指定します。VSPC の serial_log_dir 設定値と一致する必要があります。

serial_port_proxy_uri = None

URI 値

serial_port_service_uri へのネットワークアクセスを提供するプロキシーサービスを識別します。

値:

  • 任意の有効な URI (スキームは telnet または telnets です。)

関連するオプション:

serial_port_service_uri が指定されていない場合、このオプションは無視されます。

  • serial_port_service_uri

serial_port_service_uri = None

文字列値

シリアルポートトラフィックが送信されるリモートシステムを識別します。

このオプションは、コンソール出力を設定可能なサービス URI に送信する仮想シリアルポートを追加します。サービス URI アドレスには、コンソールログを収集する仮想シリアルポートコンセントレーターがあります。これが設定されていない場合、作成された VM にシリアルポートは追加されません。

値:

  • 任意の有効な URI

task_poll_interval = 0.5

浮動小数点の値

VMware VC サーバーで呼び出されたリモートタスクをポーリングする時間間隔 (秒単位)。

use_linked_clone = True

ブール値

このオプションは、リンクされたクローンの使用を有効または無効にします。

ESX ハイパーバイザーは、仮想マシンを起動するために VMDK ファイルのコピーを必要とします。コンピュートドライバーは、HTTP 経由で OpenStack Image サービスからハイパーバイザーから見えるデータストアに VMDK をダウンロードし、それをキャッシュする必要があります。VMDK を必要とする後続の仮想マシンは、キャッシュされたバージョンを使用するため、OpenStack Image Service からファイルを再度コピーする必要はありません。

false に設定すると、VMDK がキャッシュされている場合でも、キャッシュの場所から共有データストア内のハイパーバイザーファイルディレクトリーへのコピー操作が実行されます。true に設定すると、仮想ディスクを親 VM と共有する仮想マシンのコピーが作成されるため、上記のコピー操作は回避されます。

vnc_keymap = en-us

文字列値

VNC のキーマップ。

キーボードマッピング (キーマップ) は、VNC セッションがデフォルトで使用するキーボードレイアウトを決定します。

値:

  • このノードの基になるハイパーバイザーによってサポートされるキーボードレイアウト。これは通常、IETF 言語タグ (en-us など) になります。

vnc_port = 5900

ポート値

このオプションは、VNC 開始ポートを指定します。

ESX ホストによって作成されたすべての VM には、リモート接続用に VNC クライアントを有効にするオプションがあります。上記のオプション vnc_port は、VNC クライアントのデフォルトの開始ポートを設定する際に役立ちます。

値:

  • 5900 -(5900 + vnc_port_total) 内の任意の有効なポート番号

関連するオプション:

VNC クライアントを有効にするには、以下のオプションを設定する必要があります。

  • vnc.enabled = True
  • vnc_port_total

vnc_port_total = 10000

整数値

VNC ポートの総数。

9.1.54. vnc

以下の表は、/etc/nova/nova.conf ファイルの [vnc] グループで使用できるオプションの概要をまとめたものです。

表9.53 vnc
設定オプション = デフォルト値タイプ説明

auth_schemes = ['none']

リスト値

コンピュートノードで使用する認証スキーム。

プロキシーとコンピュートホスト間の接続で許可される RFB 認証スキームを制御します。複数のスキームが有効になっている場合、最初に一致するスキームが使用されるため、最も強力なスキームを最初にリストする必要があります。

関連するオプション:

  • [vnc]vencrypt_client_key[vnc]vencrypt_client_cert: これらも設定する必要があります。

enabled = True

ブール値

VNC 関連の機能を有効にします。

ゲストは、これをサポートするためにグラフィカルなデバイスを作成することになります。その後、クライアント (Horizon など) は、ゲストへの VNC 接続を確立できます。

novncproxy_base_url = http://127.0.0.1:6080/vnc_auto.html

URI 値

noVNC VNC コンソールプロキシーのパブリックアドレス。

VNC プロキシーは、コンピュートサービスのユーザーが、VNC クライアントを介してインスタンスにアクセスできるようにする OpenStack コンポーネントです。noVNC は、WebSocket ベースのクライアントを介して VNC サポートを提供します。

このオプションは、クライアントシステムが接続するパブリックベース URL を設定します。noVNC クライアントは、このアドレスを使用して noVNC インスタンスに接続し、エクステンションにより VNC セッションにも接続することができます。

noVNC >= 1.0.0 を使用する場合、vnc_auto.html の代わりに vnc_lite.html を使用する必要があります。

関連するオプション:

  • novncproxy_host
  • novncproxy_port

novncproxy_host = 0.0.0.0

文字列値

noVNC コンソールプロキシーがバインドする必要のある IP アドレス。

VNC プロキシーは、コンピュートサービスのユーザーが、VNC クライアントを介してインスタンスにアクセスできるようにする OpenStack コンポーネントです。noVNC は、WebSocket ベースのクライアントを介して VNC サポートを提供します。

このオプションは、noVNC コンソールプロキシーサービスがバインドする必要のあるプライベートアドレスを設定します。

関連するオプション:

  • novncproxy_port
  • novncproxy_base_url

novncproxy_port = 6080

ポート値

noVNC コンソールプロキシーがバインドする必要のあるポート。

VNC プロキシーは、コンピュートサービスのユーザーが、VNC クライアントを介してインスタンスにアクセスできるようにする OpenStack コンポーネントです。noVNC は、WebSocket ベースのクライアントを介して VNC サポートを提供します。

このオプションは、noVNC コンソールプロキシーサービスがバインドする必要のあるプライベートポートを設定します。

関連するオプション:

  • novncproxy_host
  • novncproxy_base_url

server_listen = 127.0.0.1

ホストのアドレス値

このノードで着信 VNC 接続要求をインスタンスがリッスンする必要がある IP アドレスまたはホスト名。

server_proxyclient_address = 127.0.0.1

ホストのアドレス値

VNC コンソールプロキシーのプライベート、内部 IP アドレスまたはホスト名。

VNC プロキシーは、コンピュートサービスのユーザーが、VNC クライアントを介してインスタンスにアクセスできるようにする OpenStack コンポーネントです。

このオプションは、nova-novncproxy などのプロキシークライアントが接続する必要のあるプライベートアドレスを設定します。

vencrypt_ca_certs = None

文字列値

CA 証明書の PEM ファイルへのパス

コンピュートノード VNC サーバーによって使用される認証局の 1 つ以上の x509 証明書を含む PEM ファイルへの完全修飾パス。

関連するオプション:

  • vnc.auth_schemes : vencrypt を含める必要があります

vencrypt_client_cert = None

文字列値

クライアントキーファイルへのパス (x509 の場合)

VNC 認証中に VNC プロキシーサーバーがコンピュートノードに提示する x509 証明書を含む PEM ファイルへの完全修飾パス。

関連するオプション:

  • vnc.auth_schemes : vencrypt を含める必要があります
  • vnc.vencrypt_client_key: これも設定する必要があります

vencrypt_client_key = None

文字列値

クライアント証明書の PEM ファイルへのパス (x509 の場合)

VNC 認証中に VNC プロキシーサーバーがコンピュートノードに提示する秘密鍵を含む PEM ファイルへの完全修飾パス。

関連するオプション:

  • vnc.auth_schemes : vencrypt を含める必要があります
  • vnc.vencrypt_client_cert: これも設定する必要があります

9.1.55. workarounds

以下の表は、/etc/nova/nova.conf ファイルの [workarounds] グループで使用できるオプションの概要をまとめたものです。

表9.54 workarounds
設定オプション = デフォルト値タイプ説明

disable_compute_service_check_for_ffu = False

ブール値

これが設定されている場合、古いコンピューティングサービスの通常の安全性チェックは、エラーではなく警告として扱われます。これは、コンピュートノードがサービスレコードを更新できるようになる前に、新しい制御サービスが開始される Fast-Forward アップグレードを容易にするためにのみ有効にします。FFU では、データベース内のサービスレコードは、コンピュートノードが起動するまで複数のバージョンが古いものになりますが、制御サービスは最初にオンラインにする必要があります。

disable_deep_image_inspection = False

ブール値

これにより、Glance からのダウンロード時にコンピュートノードが実行する追加の詳細なイメージ検査が無効になります。これには、イメージを qemu-img に渡す のバックアップファイル、データファイル、および既知の機能の検出が含まれます。通常この検査は、最大限の安全性を確保するために有効にする必要がありますが、互換性に懸念がある場合はこの回避策オプションを使用して無効にできます。

disable_fallback_pcpu_query = False

ブール値

固定されたインスタンスを使用する場合、VCPU 割り当てのフォールバックリクエストを無効にします。

Train 以降、libvirt virt ドライバーを使用するコンピュートノードは PCPU インベントリーを報告でき、これを固定されたインスタンスに使用します。スケジューラーは、従来の CPU ピニング関連のフレーバーエクストラ仕様 hw:cpu_policyhw:cpu_thread_policy、それらに相当するイメージメタデータプロパティー、およびエミュレータースレッドピニングフレーバーエクストラ仕様 hw:emulator_threads_policy を使用して、リクエストを新しい配置リクエストに自動的に変換します。ただし、コンピュートノードでは、PCPU インベントリーを報告するために追加の設定が必要であり、この設定はアップグレード直後には存在しない場合があります。この追加設定なしで固定されたインスタンスを確実に作成できるようにするために、スケジューラーは古いスタイルの VCPU ベースの割り当ての配置に対して 2 番目の要求を行い、必要に応じてこれらの割り当て候補にフォールバックします。これはパフォーマンスにわずかな影響を与えますが、新しい設定がすべてのホストに設定されている新規またはアップグレードされたデプロイメントでは必要ありません。このオプションを設定すると、2 番目のルックアップが無効になり、スケジューラーは PCPU ベースの割り当てのみを要求します。

非推奨となったバージョン: 20.0.0

*理由:*None

disable_group_policy_check_upcall = False

ブール値

コンピュートで、サーバーグループポリシーチェックアップコールを無効にします。

サーバーグループアフィニティーポリシーとの競合を検出するために、コンピュートサービスは、ポリシーがスケジューラーによって違反されていないことを検証しようとします。これは、API データベースへのアップコールを行って、起動中のインスタンスのサーバーグループ内のインスタンスをリスト表示することによって行われます。これは、API/セル分離の目標に違反しています。最終的には、スケジューラーと配置サービスでの適切なアフィニティー保証によってこれが解決されますが、それまでは、適切なアフィニティーポリシーを確保するためにこの遅延チェックが必要です。

このチェックで API/セルの分離を望む Operator は、このフラグを有効にする必要があります。これにより、コンピュートからのアップコールが回避されます。

関連するオプション:

  • [filter_scheduler]/track_instance_changes は、コンピュートサービスからスケジューラーサービスへのアップコールにも依存しています。

disable_libvirt_livesnapshot = False

ブール値

libvirt ドライバーを使用する場合は、ライブスナップショットを無効にします。

ライブスナップショットを使用すると、ゲストエージェントと連携してファイルシステムを静止させることで、ゲストを中断することなくディスクのスナップショットを作成できます。

libvirt 1.2.2 を使用すると、負荷がかかるとライブスナップショットが断続的に失敗します (libvirt/qemu の同時操作に関連している可能性があります)。この設定オプションは、この問題が解決されるまでの間、ライブスナップショットを無効にし、コールドスナップショットを優先させるメカニズムを提供します。コールドスナップショットは、ゲストがスナップショットプロセスを実行している間、インスタンスの停止を引き起こします。

詳細は、バグレポートを参照してください。

https://bugs.launchpad.net/nova/+bug/1334398

値:

  • True: libvirt の使用時にライブスナップショットが無効化されます。
  • False: ライブスナップショットは、スナップショットを作成するときに常に使用されます (十分な数の新しい libvirt があり、バックエンドストレージがそれをサポートしている限り)。

非推奨となったバージョン: 19.0.0

理由: このオプションは、libvirt 1.2.2 の問題を回避するために追加されました。このバージョンの libvirt はサポートされなくなりました。つまり、この回避策は不要になりました。これは今後のリリースで削除されます。

disable_rootwrap = False

ブール値

rootwrap の代わりに sudo を使用します。

パフォーマンス上の理由から、sudo へのフォールバックを許可します。

詳細は、バグレポートを参照してください。

https://bugs.launchpad.net/nova/+bug/1415106

値:

  • True: rootwrap の代わりに sudo を使用する
  • False: rootwrap を通常どおり使用します。

他のオプションとの相互依存性:

  • rootwrap に影響するオプションはすべて無視されます。

enable_numa_live_migration = False

ブール値

NUMA トポロジーを使用したインスタンスのライブマイグレーションを有効にします。

libvirt ドライバーを使用する場合の NUMA トポロジーを使用したインスタンスのライブマイグレーションは、Train に完全にアップグレードされたデプロイメントでのみサポートされます。以前のバージョン、またはローリングアップグレードが進行中の Stein/Train 混合デプロイメントでは、libvirt ドライバーを使用する場合、NUMA トポロジーを使用するインスタンスのライブマイグレーションはデフォルトで無効になっています。これには、CPU ピニングまたは hugepage を使用したインスタンスのライブマイグレーションが含まれます。`bug #1289064`_ に記載されているように、そのようなインスタンスの CPU ピニングと huge page の情報は、現時点では再計算されません。これは、インスタンスが宛先ホストにすでに存在する場合、移行されたインスタンスがこれらのインスタンスと同じ専用コアに配置されるか、別のインスタンスに割り当てられた hugepage を使用できることを意味します。また、ホストプラットフォームが同一でない場合、インスタンスが存在しないコアに割り当てられたり、ホスト NUMA ノード間で誤って分割されたりする可能性があります。

これらの既知の問題にもかかわらず、ライブマイグレーションが必要になる場合があります。このオプションを有効にすることで、問題を認識し、手動で回避する意思のあるオペレーターは、これらのインスタンスのライブマイグレーションサポートを有効にすることができます。

関連するオプション:

非推奨となったバージョン: 20.0.0

*理由:* このオプションは、libvirt ドライバーを使用して NUMA トポロジーでインスタンスをライブマイグレーションする際の既知の問題を軽減するために追加されました。これらの問題は、Train で解決されます。libvirt ドライバーを使用し、Train に完全にアップグレードされたクラウドは、NUMA 対応のライブマイグレーションをサポートします。このオプションは、今後のリリースで削除される予定です。

enable_qemu_monitor_announce_self = False

ブール値

これが True に設定されている場合、libvirt ドライバーは、宛先のライブマイグレーション後のフェーズでネットワークスイッチを更新するための RARP フレームを生成するように、QEMU モニターに announce-self コマンドを送信するための最善の努力を試みます。

これにより、ドメインが libvirt によって taint されていると見なされることに注意してください。

関連するオプション:

  • :oslo.config:option:DEFAULT.compute_driver (libvirt)

ensure_libvirt_rbd_instance_dir_cleanup = False

ブール値

rbd を使用する場合、クリーンアップ中にインスタンスディレクトリーが削除されていることを確認します。

この回避策を有効にすると、[libvirt]/images_type=rbd を使用して、ホストでのクリーンアップ中にインスタンスディレクトリーが常に削除されるようになります。これにより、インスタンスディレクトリーがホストに残る原因となる、退避とサイズ変更のクリーンアップの取り消しに関する次のバグが回避されます。

https://bugs.launchpad.net/nova/+bug/1414895

https://bugs.launchpad.net/nova/+bug/1761062

これらのバグは両方とも、インスタンスがホストに戻ろうとすると、DestinationDiskExists エラーが発生する可能性があります。

  1. 警告:: Operator は、この回避策を有効にする前に、[DEFAULT]/instances_path で指定されたインスタンスディレクトリー自体がコンピュート間で共有されていないことを確認する必要があります。そうしないと、実行中のインスタンスによって使用されている console.log、カーネル、ramdisk、および追加のファイルが失われます。

関連するオプション:

  • compute_driver (libvirt)
  • [libvirt]/images_type (rbd)
  • instances_path

handle_virt_lifecycle_events = True

ブール値

コンピュートドライバーから発行されたイベントの処理を有効にします。

多くのコンピュートドライバーは、ライフサイクルイベントを発行します。ライフサイクルイベントは、たとえばインスタンスの開始時や停止時などに発生するイベントです。サイズ変更などの API 操作によってインスタンスのタスク状態が変化している場合、イベントは無視されます。

これは、インスタンスで予期しない状態変化が発生したこと、およびインスタンスを自動的にシャットダウンできることを、ハイパーバイザーがコンピュートサービスに通知できるようにする高度な機能です。残念ながら、これは、たとえば再起動操作中、コンピュートサービスの再起動時、またはホストの再起動時 (計画的または停電による) など、一部の条件で競合する可能性があります。このような競合が一般的である場合は、この機能を無効にすることを推奨します。

この機能が無効化され、sync_power_state_interval が負の値に設定されている場合は、注意が必要です。この場合、ハイパーバイザーと Nova データベースの間で同期が取れなくなったインスタンスは、手動で同期する必要があります。

詳細は、バグレポート (https://bugs.launchpad.net/bugs/1444630) を参照してください。

他のオプションとの相互依存性:

  • sync_power_state_interval が負の値で、この機能が無効になっている場合、ハイパーバイザーと Nova データベースの間で非同期になったインスタンスは、手動で同期する必要があります。

libvirt_disable_apic = False

ブール値

一部のカーネルでゲスト API を初期化すると、ゲストが使用できなくなるカーネルハングが発生する可能性があります。これは、カーネルのバグの結果として発生します。ほとんどの場合、ゲストイメージカーネルをパッチが適用されたカーネルに更新することで修正されますが、これが不可能な場合もあります。この回避策により、API のエミュレーションをホストごとに無効にすることができますが、CI または開発者クラウドの外部で使用することは推奨しません。

never_download_image_if_on_rbd = False

ブール値

ceph でバックアップされたコンピュートノードのイメージから起動する場合、イメージが ceph クラスターにまだ存在しない場合 (glance も同じクラスターを使用している場合など)、nova は glance からイメージをダウンロードし、ceph 自体にアップロードします。複数の ceph クラスターを使用している場合、これにより nova がローカルの ceph デプロイメントで COW を使用できない方法で意図せずにイメージを複製し、スペースを浪費する可能性があります。

詳細は、バグレポートを参照してください。

https://bugs.launchpad.net/nova/+bug/1858877

このオプションを有効にすると、glance からイメージをダウンロードして ceph 自体にアップロードする必要がある場合、nova はインスタンスの起動を 拒否 します。

関連するオプション:

  • compute_driver (libvirt)
  • [libvirt]/images_type (rbd)

qemu_monitor_announce_self_count = 3

整数値

enable_qemu_monitor_announce_self が有効な場合に、QEMU モニターに announcement_self コマンドを送信する合計回数。

関連するオプション:

  • :oslo.config:option:WORKAROUNDS.enable_qemu_monitor_announce_self (libvirt)

qemu_monitor_announce_self_interval = 1

整数値

QEMU モニターに announcement_self コマンドを再送信するまでの待機時間 (秒)。

関連するオプション:

  • :oslo.config:option:WORKAROUNDS.enable_qemu_monitor_announce_self (libvirt)

reserve_disk_resource_for_image_cache = False

ブール値

True に設定されている場合、libvirt ドライバーはイメージキャッシュに保存されているイメージ用に DISK_GB リソースを予約します。:oslo.config:option:DEFAULT.instances_path がイメージキャッシュディレクトリーとは異なるディスクパーティションにある場合、ドライバーはキャッシュ用のリソースを予約しません。

このようなディスクの予約は、:oslo.config:option:update_resources_interval 秒ごとに実行されるリソーストラッカーの定期的なタスクによって行われます。そのため、イメージがキャッシュされても予約はすぐには更新されません。

関連するオプション:

  • :oslo.config:option:DEFAULT.instances_path
  • :oslo.config:option:image_cache.subdirectory_name
  • :oslo.config:option:update_resources_interval

skip_cpu_compare_at_startup = False

ブール値

これにより、Compute サービスの起動時に CPU 比較の呼び出しがスキップされ、libvirt がそれを処理できるようになります。

skip_cpu_compare_on_dest = False

ブール値

libvirt ドライバーを使用している場合に、ライブマイグレーション中にゲスト CPU と宛先ホストの比較をスキップします。QEMU >= 2.9 および libvirt >= 4.4.0 を使用する場合、libvirt は、ライブマイグレーション中に宛先ホストの CPU 互換性をチェックすることについて正しい動作を実行します。

skip_hypervisor_version_check_on_lm = False

ブール値

これを有効にすると、ライブマイグレーション中にハイパーバイザーのバージョンチェックがスキップされます。

skip_reserve_in_use_ironic_nodes = False

ブール値

Ironic ドライバーを使用しているが、Ironic で自動クリーニングが有効になっていない場合、これが役立つ可能性があります。デフォルトでは、Nova は Ironic ノードが使用されるとすぐにそれを予約済みとしてマークします。Ironic ノードを (Nova インスタンスを削除することで) 解放すると、Nova がその Ironic ノードを配置時に予約解除するまでにしばらく時間がかかります。通常、これは適切です。なぜなら、まだクリーンアップ中の Ironic を有効な候補として提供する配置を回避できるからです。ただし、自動クリーニングを使用しない場合、新しい Nova インスタンスをビルドするために Ironic ノードが使用可能になるまでに余分な遅延が発生する可能性があります。

unified_limits_count_pcpu_as_vcpu = False

ブール値

統合制限を使用する場合は、仮想 CPU + PCPU を仮想 CPU クォータ使用量として使用します。

デプロイメントが [quota]driver=nova.quota.UnifiedLimitsDriver を介して統合制限を使用するように設定されている場合、デフォルトで仮想 CPU リソースは PCPU リソースとは独立してカウントされ、配置サービス内での表現と一致します。

従来のクォータ動作では、PCPU を仮想 CPU としてカウントし、仮想 CPU と PCPU の合計使用量を仮想 CPU の使用量カウントとして返します。仮想 CPU および PCPU リソースの合計使用量を使用する場合は、このオプションを True に設定する必要があります。

関連するオプション:

  • :oslo.config:option:quota.driver

wait_for_vif_plugged_event_during_hard_reboot = []

リスト値

libvirt virt ドライバーは、再起動されるインスタンスのすべての vif を破棄してから再度接続することにより、電源オンとハード再起動を実装します。デフォルトでは、nova はインスタンスを実行する前に neutron からの network-vif-plugged イベントを待機しません。これにより、neutron バックエンドが vif プラグの後でネットワークバックエンドをセットアップする前に、インスタンスが DHCP 経由で IP を要求する可能性があります。

このフラグは、ハードリブート時に nova がどの vif から network-vif-plugged イベントを期待するかを定義します。可能な値は、neutron ポートの vnic タイプです。

  • normal
  • direct
  • macvtap
  • baremetal
  • direct-physical
  • virtio-forwarder
  • smart-nic
  • vdpa
  • accelerator-direct
  • accelerator-direct-physical
  • remote-managed

この設定に vnic_type を追加すると、Nova はインスタンスの一時停止を解除する前に、特定の vnic_type を持つインスタンスの各 vif の network-vif-plugged イベントを待機するようになります。

すべての neutron ネットワークバックエンドがプラグタイムイベントを送信するわけではないことに注意してください。特定の vnic_type については、この設定はデフォルトで空です。

ml2/ovs および networking-odl バックエンドは、normal vnic_type を持つポートのプラグ時間イベントを送信することが知られているため、計算ホストでこれらのバックエンドのみを使用している場合は、この設定に normal を追加しても安全です。

neutron in-tree SRIOV バックエンドは、direct vnic_type のポートのプラグ時間中に network-vif-plugged イベントを確実に送信せず、プラグ時間中に direct-physical vnic_type のポートに対してそのイベントを送信しません。他の vnic_type とバックエンドのペアについては、バックエンドの開発者に相談してください。

関連するオプション:

  • :oslo.config:option:DEFAULT.vif_plugging_timeout

9.1.56. wsgi

以下の表は、/etc/nova/nova.conf ファイルの [wsgi] グループで使用できるオプションの概要をまとめたものです。

表9.55 wsgi
設定オプション = デフォルト値タイプ説明

api_paste_config = api-paste.ini

文字列値

このオプションは、nova-api の paste.deploy 設定のファイル名を表します。

値:

  • paste.deploy 設定のファイル名を表す文字列。

client_socket_timeout = 900

整数値

このオプションは、クライアント接続のソケット操作のタイムアウトを指定します。受信接続がこの秒数の間アイドル状態であると、閉じられます。これは、ソケット接続での個々の読み取り/書き込みのタイムアウトを示します。永久に待機するには、0 に設定します。

default_pool_size = 1000

整数値

このオプションは、wsgi が使用する greenthreads のプールのサイズを指定します。このオプションを使用して、同時接続数を制限することができます。

keep_alive = True

ブール値

このオプションを使用すると、単一の要求/応答ペアごとに新しい接続を開くのではなく、同じ TCP 接続を使用して複数の HTTP 要求/応答を送受信できます。HTTP キープアライブは、HTTP 接続の再利用を示します。

値:

  • True : HTTP 接続を再利用します。
  • False: クライアントのソケット接続を明示的に閉じます。

関連するオプション:

  • tcp_keepidle

max_header_line = 16384

整数値

このオプションは、許可されるメッセージヘッダーの行の最大サイズを指定します。大規模なトークン (通常は、大規模なサービスカタログで Keystone v3 API で生成されたもの) を使用する場合に max_header_line を増やす必要がある場合があります。

TCP はストリームベースのプロトコルであるため、接続を再利用するために、HTTP は前の応答の終わりと次の応答の始まりを示す方法を持たなければなりません。したがって、keep_alive の場合、すべてのメッセージは自己定義のメッセージ長を持つ必要があります。

secure_proxy_ssl_header = None

文字列値

このオプションは、SSL 終了プロキシーによって削除された場合でも、元の要求のプロトコルスキームを決定するために使用される HTTP ヘッダーを指定します。

値:

  • なし (デフォルト): リクエストスキームは HTTP ヘッダーの影響を受けません。
  • HTTP_X_FORWARDED_PROTO などの有効な HTTP ヘッダー
警告

よくわからない場合は、設定しないでください。

これを設定する前に、次のすべてが当てはまることを確認してください (上記の例の値を想定)。

  • API はプロキシーの背後にあります。
  • プロキシーは、すべての受信リクエストから X-Forwarded-Proto ヘッダーを削除します。つまり、エンドユーザーがそのヘッダーをリクエストに含めると、プロキシーはそれを破棄します。
  • プロキシーは X-Forwarded-Proto ヘッダーを設定し、それを API に送信しますが、元々 HTTPS 経由で受信したリクエストに対してのみ行います。

これらのいずれかが当てはまらない場合は、この設定をなしのままにしておく必要があります。

ssl_ca_file = None

文字列値

このオプションを使用すると、接続しているクライアントを検証するために使用する必要のある CA 証明書ファイルへのパスを設定できます。

値:

  • CA 証明書ファイルへのパスを表す文字列。

関連するオプション:

  • enabled_ssl_apis

ssl_cert_file = None

文字列値

このオプションを使用すると、API サーバーの SSL 証明書へのパスを設定できます。

値:

  • SSL 証明書へのパスを表す文字列。

関連するオプション:

  • enabled_ssl_apis

ssl_key_file = None

文字列値

このオプションは、SSL が有効な場合に、API サーバーの SSL 秘密鍵が保管されているファイルへのパスを指定します。

値:

  • SSL 秘密鍵へのパスを表す文字列。

関連するオプション:

  • enabled_ssl_apis

tcp_keepidle = 600

整数値

このオプションは、各サーバーソケットの TCP_KEEPIDLE の値を秒単位で設定します。接続をアクティブにしておく時間の長さを指定します。TCP は、接続をアクティブに保つことを要求するアプリケーションに対して KEEPALIVE 送信を生成します。OS X では対応していません。

関連するオプション:

  • keep_alive

wsgi_log_format = %(client_ip)s "%(request_line)s" status: %(status_code)s len: %(body_length)s time: %(wall_seconds).7f

文字列値

これは、ログ行を生成するためのテンプレートとして使用される Python 形式の文字列を表します。client_ip、date_time、request_line、status_code、body_length、wall_seconds などの値をこれにフォーマットすることができます。

このオプションは、eventlet の下で nova-api を実行するときに、カスタムリクエストログラインを作成するために使用されます。uwsgi または apache で使用した場合、このオプションは効果がありません。

値:

  • %(client_ip)s "%(request_line)s" status: %(status_code)s ' 'len: %(body_length)s time: %(wall_seconds).7f (デフォルト)
  • 特定の値で形成された任意のフォーマットされた文字列。

非推奨となったバージョン: 16.0.0

理由: このオプションは、eventlet の下で nova-api を実行している場合にのみ機能し、非常に eventlet 固有の情報をエンコードします。Pike 以降では、nova-api を実行するための推奨モデルは uwsgi または apache mod_wsgi の下にあります。

9.1.57. zvm

以下の表は、/etc/nova/nova.conf ファイルの [zvm] グループで使用できるオプションの概要をまとめたものです。

表9.56 zvm
設定オプション = デフォルト値タイプ説明

ca_file = None

文字列値

TLS が有効になっている httpd サーバーで検証される CA 証明書ファイル

文字列。使用する CA バンドルへのパスである必要があります。

cloud_connector_url = None

URI 値

z/VM Cloud Connector との通信に使用される URL。

image_tmp_path = $state_path/images

文字列値

イメージが保存されるパス (スナップショット、デプロイなど)。

デプロイに使用されるイメージと、スナップショットによってキャプチャーされたイメージは、コンピュートホストのローカルディスクに保存する必要があります。この設定は、ディレクトリーの場所を識別します。

可能な値: コンピューティングサービスを実行しているホスト上のファイルシステムパス。

reachable_timeout = 300

整数値

インスタンスの起動を待機するタイムアウト (秒)。

z/VM ドライバーは、インスタンスとクラウドコネクター間の通信に依存しています。インスタンスが作成された後、すべてのネットワーク情報がユーザーディレクトリーに書き込まれるまで待機する十分な時間が必要です。ドライバーは、タイムアウト値を使用してインスタンスのネットワークステータスを再確認し続けます。ネットワークの設定に失敗した場合、ドライバーはインスタンスの起動に失敗したことをユーザーに通知し、インスタンスを ERROR 状態にします。その後、基盤となる z/VM ゲストが削除されます。

可能な値: 任意の正の整数。300 秒 (5 分) 以上にすることを推奨しますが、インスタンスとシステムの負荷によって異なります。デバッグには値 0 が使用されます。この場合、インスタンスが ERROR 状態でマークされても、基礎となる z/VM ゲストは削除されません。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.