第8章 ironic-inspector

以下の章では、ironic-inspector サービスの設定オプションについて説明します。

8.1. inspector.conf

本項では、/etc/ironic-inspector/inspector.conf ファイルのオプションについて説明します。

8.1.1. DEFAULT

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

表8.1 DEFAULT

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

api_max_limit = 1000

整数値

API list-call が返す要素の数を制限します。

auth_strategy = keystone

文字列値

ironic-inspector API で使用される認証方法noauth または keystone のいずれかが有効なオプションになります。noauth によりすべての認証が無効になります。

clean_up_period = 60

整数値

タイムアウトしたノードと古いノードのステータス情報を繰り返すまでの時間 (秒単位)。

debug = False

ブール値

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

default_log_levels = [u'sqlalchemy=WARNING', u'iso8601=WARNING', u'requests=WARNING', u'urllib3.connectionpool=WARNING', u'keystonemiddleware=WARNING', u'swiftclient=WARNING', u'keystoneauth=WARNING', u'ironicclient=WARNING']

リスト値

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

fatal_deprecations = False

ブール値

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

instance_format = [instance: %(uuid)s]

文字列値

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

instance_uuid_format = [instance: %(uuid)s]

文字列値

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

introspection_delay = 5

整数値

2 つのイントロスペクション間の遅延 (秒単位)。

ipmi_address_fields = [u'ilo_address', u'drac_host', u'drac_address', u'cimc_address']

リスト値

ipmi_address と同等な ironic driver_info フィールド。

listen_address = 0.0.0.0

文字列値

リッスンする IP。

listen_port = 5050

ポート値

リッスンするポート。

log-config-append = None

文字列値

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

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 が設定されている場合は無視されます。

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

文字列値

コンテキスト付きログメッセージに使用するフォーマット文字列。

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

文字列値

メッセージのロギングレベルが DEBUG の場合にログメッセージに追加する追加のデータ。

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

文字列値

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

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

文字列値

この形式で、例外出力の各行の前に接頭辞が付けられます。

logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s

文字列値

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

max_concurrency = 1000

整数値

グリーンスレッドプールのサイズ。

node_status_keep_time = 0

整数値

イントロスペクションが完了した後のノードに関するステータス情報を保持する時間(秒単位)。タイムアウトを無効にするには 0 (デフォルト)に設定します。

publish_errors = False

ブール値

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

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

整数値

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

rootwrap_config = /etc/ironic-inspector/rootwrap.conf

文字列値

root としてコマンドを実行するために使用する rootwrap 設定ファイルへのパス

`ssl_cert_path = `

文字列値

SSL 証明書へのパス

`ssl_key_path = `

文字列値

SSL キーへのパス

syslog-log-facility = LOG_USER

文字列値

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

timeout = 3600

整数値

イントロスペクションが失敗したと見なされるタイムアウトで、無効にするには 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_ssl = False

ブール値

SSL の有効化/無効化

use_stderr = False

ブール値

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

watch-log-file = False

ブール値

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

8.1.2. capabilities

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

表8.2 capabilities

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

boot_mode = False

ブール値

ブートモード (BIOS または UEFI) を保存するかどうか。

cpu_flags = {u'aes': u'cpu_aes', u'svm': u'cpu_vt', u'pdpe1gb': u'cpu_hugepages_1g', u'smx': u'cpu_txt', u'pse': u'cpu_hugepages', u'vmx': u'cpu_vt'}

dict 値

このフラグが存在する場合に設定する CPU フラグと機能間のマッピング。

8.1.3. cors

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

表8.3 cors

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

allow_credentials = True

ブール値

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

allow_headers = ['X-Auth-Token', 'X-OpenStack-Ironic-Inspector-API-Minimum-Version', 'X-OpenStack-Ironic-Inspector-API-Maximum-Version', 'X-OpenStack-Ironic-Inspector-API-Version']

リスト値

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

allow_methods = [u'GET', u'POST', u'PUT', u'HEAD', u'PATCH', u'DELETE', u'OPTIONS']

リスト値

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

allowed_origin = None

リスト値

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

expose_headers = []

リスト値

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

max_age = 3600

整数値

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

8.1.4. database

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

表8.4 database

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

backend = sqlalchemy

文字列値

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

connection = None

文字列値

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

connection_debug = 0

整数値

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

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 に設定します。

min_pool_size = 1

整数値

プールに開いたままにする SQL 接続の最大数。

mysql_enable_ndb = False

ブール値

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

mysql_sql_mode = TRADITIONAL

文字列値

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

pool_timeout = None

整数値

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

retry_interval = 10

整数値

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

slave_connection = None

文字列値

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

sqlite_synchronous = True

ブール値

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

use_db_reconnect = False

ブール値

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

8.1.5. discovery

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

表8.5 discovery

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

enroll_node_driver = fake

文字列値

Ironic に新規ノードを作成する際に enroll フックで使用される Ironic ドライバーの名前。

8.1.6. dnsmasq_pxe_filter

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

表8.6 dnsmasq_pxe_filter

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

dhcp_hostsdir = /var/lib/ironic-inspector/dhcp-hostsdir

文字列値

dnsmasq に公開されている MAC アドレスキャッシュディレクトリー。このディレクトリーはドライバーを排他的に制御する必要があります。

`dnsmasq_start_command = `

文字列値

フィルターの初期化時に dnsmasq サービスを開始する (シェル) コマンドライン。デフォルト: don't start

`dnsmasq_stop_command = `

文字列値

インスペクター (エラー) 終了時に dnsmasq サービスを停止する (シェル) コマンドライン。デフォルト: don't stop

purge_dhcp_hostsdir = True

ブール値

ドライバーの初期化時に hostsdir をパージします。false に設定すると、インスペクターのデプロイメントが、同じホストおよび名前空間内で複数のプロセスが実行される可能性がある場合にのみ実行する必要があります。この場合、Operator はカスタムクリーニング機能を設定します。

8.1.7. iptables

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

表8.7 iptables

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

dnsmasq_interface = br-ctlplane

文字列値

dnsmasq がリッスンするインターフェイスです。デフォルトは仮想マシンの です。

ethoib_interfaces = []

リスト値

DHCP ネットワークへの物理アクセスに使用される Inspector ホストの Etherent Over InfiniBand インターフェイスの一覧です。複数のインターフェイスが dnsmasq_interface に指定されたボンディングまたはブリッジにアタッチされます。望ましい状態にない InfiniBand ノードの MAC は、これらのインターフェイスの隣接する MAC の一覧に基づいてブラックリスト指定されます。

firewall_chain = ironic-inspector

文字列値

使用する iptables チェーン名。

manage_firewall = True

ブール値

PXE ポートのファイアウォールルールを管理するかどうか。この設定オプションは、pxe_filter セクションの driver オプションが優先されるため非推奨になりました。noop フィルタードライバーを使用して、ファイアウォールフィルターリングまたは iptables フィルタードライバーを無効にして有効にします。

8.1.8. ironic

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

表8.8 ironic

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

auth-url = None

文字列値

認証 URL

auth_strategy = keystone

文字列値

認証に使用する方法:noauth または keystone。

auth_type = None

文字列値

読み込む認証タイプ

cafile = None

文字列値

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

certfile = None

文字列値

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

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 接続を確認します。

ironic_url = http://localhost:6385/

文字列値

Ironic API URL。auth_strategy オプションが noauth または auth_type が none で、keystone なしのスタンドアロン Ironic と連携する場合に使用されます。

keyfile = None

文字列値

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

max-version = None

文字列値

特定の API の最大メジャーバージョンで、min_version を持つ範囲の上限として使用されることが意図されています。version と相互に排他的です。

max_retries = 30

整数値

競合エラー時の最大再試行回数 (HTTP 409)。

min-version = None

文字列値

指定の API の最小メジャーバージョンで、max_version を持つ範囲の下限として使用することが意図されています。version と相互に排他的です。max_version なしで min_version が指定されている場合は、max version が latest の場合になります。

os_endpoint_type = internalURL

文字列値

Ironic エンドポイントの種別。

os_region = None

文字列値

Ironic エンドポイントの取得に使用される Keystone リージョン。

os_service_type = baremetal

文字列値

Ironic サービスの種別。

password = None

文字列値

ユーザーのパスワード

project-domain-id = None

文字列値

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

project-domain-name = None

文字列値

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

project-id = None

文字列値

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

project-name = None

文字列値

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

region-name = None

文字列値

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

retry_interval = 2

整数値

競合エラーが発生した場合の再試行の間隔 (HTTP 409)。

service-name = None

文字列値

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

service-type = baremetal

文字列値

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

system-scope = None

文字列値

システム操作のスコープ

tenant-id = None

文字列値

テナント ID

tenant-name = None

文字列値

テナント名

timeout = None

整数値

http 要求のタイムアウト値

trust-id = None

文字列値

Trust ID

user-domain-id = None

文字列値

ユーザーのドメイン ID

user-domain-name = None

文字列値

ユーザーのドメイン名

user-id = None

文字列値

ユーザー ID

username = None

文字列値

Username

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

リスト値

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

version = None

文字列値

エンドポイント URL 検出用に指定の Major API バージョン内の最小の Major API バージョン。min_version および max_version と相互排他的になる

8.1.9. keystone_authtoken

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

表8.9 keystone_authtoken

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

auth_section = None

文字列値

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

auth_type = None

文字列値

読み込む認証タイプ

auth_uri = None

文字列値

パブリックの Identity API エンドポイントを完了します。このエンドポイントは、すべてのエンドユーザーがアクセスできる必要があるため、"admin" エンドポイントにすることはできません。認証されていないクライアントは、認証のためにこのエンドポイントにリダイレクトされます。このエンドポイントにはバージョンを指定しないことが理想的ですが、ワイルドカードでのクライアントのサポートは異なります。バージョン指定された v2 エンドポイントを使用している場合、通常エンドユーザーがそのエンドポイントに到達できない可能性があるため、これはサービスユーザーがトークンを検証するために使用するエンドポイントにすることはできません。このオプションは 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 サーバーでクライアント証明書が必要な場合に必要です。

check_revocations_for_cached = False

ブール値

true の場合、失効リストはキャッシュされたトークンについてチェックされます。これには、PKI トークンを ID サーバーに設定する必要があります。

delay_auth_decision = False

ブール値

ミドルウェア内の承認要求を処理せず、承認の決定をダウンストリームの WSGI コンポーネントに委譲します。

enforce_token_bind = permissive

文字列値

トークンバインディングの使用および種別を制御するために使用されます。トークンバインディングのチェックを無効するには、"disabled"に設定します。バインドタイプがサーバーの認識する形式の場合にはバインディング情報を検証し、そうでない場合には無視するには、"permissive"(デフォルト) に設定します。"strict"は"permissive"と類似していますが、バインドタイプが不明な場合にはトークンが拒否されます。"required"の場合は、いずれかの形式のトークンバインディングが必要です。最後に、トークンに指定する必要のあるバインディングメソッドの名前。

hash_algorithms = [u'md5']

リスト値

PKI トークンのハッシュに使用するハッシュアルゴリズム。これは、単一のアルゴリズムでも複数でも構いません。アルゴリズムは、Python 標準の hashlib.new ()でサポートされているものです。ハッシュは指定の順序で試行されるため、パフォーマンスのために優先します。最初のハッシュの結果はキャッシュに保存されます。これは通常、セキュリティーが低いアルゴリズムからよりセキュアなアルゴリズムに移行している場合にのみ、複数の値に設定されます。すべての古いトークンの有効期限が切れると、パフォーマンスを向上させるために、このオプションを 1 つの値に設定する必要があります。

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 接続を確認します。

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 = False

ブール値

(オプション) 高度な (eventlet に対して安全な) memcached クライアントプールを使用します。高度なプールは python 2.x でのみ動作します。

memcached_servers = None

リスト値

オプションで、キャッシュに使用する memcached サーバーの一覧を指定します。未定義のままの場合、トークンは代わりに処理中にキャッシュされます。

region_name = None

文字列値

アイデンティティーサーバーがあるリージョン。

revocation_cache_time = 10

整数値

失効したトークンのリストが Identity サービス(秒単位)から取得される頻度を決定します。キャッシュ期間が低い状態で多数の失効イベントを組み合わせると、パフォーマンスが大幅に低下する可能性があります。PKI トークンにのみ有効です。このオプションは Ocata リリースで非推奨となり、P リリースで削除されます。

service_token_roles = [u'service']

リスト値

サービストークンに存在する必要があるロールの選択。サービストークンは、期限切れのトークンを使用できることを要求できるため、このチェックでは実際のサービスのみがこのトークンを送信するように厳密に制御する必要があります。ここでのロールは ANY チェックとして適用されるため、この一覧のロールはすべて存在している必要があります。後方互換性の理由から、現在 allow_expired チェックにのみ影響します。

service_token_roles_required = False

ブール値

後方互換性の理由から、service_token_roles チェックを有効としてパスしない有効なサービストークンをパスさせる必要があります。これを true に設定することが今後のリリースでデフォルトとなり、可能な場合は有効にされる必要があります。

signing_dir = None

文字列値

PKI トークンに関連するファイルのキャッシュに使用されるディレクトリー。このオプションは Ocata リリースで非推奨となり、P リリースで削除されます。

token_cache_time = 300

整数値

トークンの検証に過剰な時間を費やすのを防ぐために、ミドルウェアは、設定可能な期間 (秒単位) 中は以前に見たトークンをキャシュします。キャッシュを完全に無効にするには -1 に設定します。

www_authenticate_uri = None

文字列値

パブリックの Identity API エンドポイントを完了します。このエンドポイントは、すべてのエンドユーザーがアクセスできる必要があるため、"admin" エンドポイントにすることはできません。認証されていないクライアントは、認証のためにこのエンドポイントにリダイレクトされます。このエンドポイントにはバージョンを指定しないことが理想的ですが、ワイルドカードでのクライアントのサポートは異なります。バージョン指定された v2 エンドポイントを使用している場合、通常エンドユーザーがそのエンドポイントに到達できない可能性があるため、これはサービスユーザーがトークンを検証するために使用するエンドポイントにすることはできません

8.1.10. oslo_policy

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

表8.10 oslo_policy

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

enforce_scope = False

ブール値

このオプションは、ポリシーを評価する際にスコープを適用するかどうかを制御します。True の場合、リクエストで使用されるトークンのスコープは、適用されるポリシーの scope_types と比較されます。スコープが一致しない場合、InvalidScope 例外が発生します。False の場合、ポリシーが一致しないスコープで呼び出されていることを運用者に通知するメッセージが記録されます。

policy_default_rule = default

文字列値

デフォルトルール。要求されたルールが見つからない場合に適用されます。

policy_dirs = [u'policy.d']

多値

ポリシー設定ファイルが保存されるディレクトリー。これは、config_dir オプションで定義される検索パス内の任意のディレクトリーへの相対パスか、または絶対パスにすることができます。このディレクトリーの検索には、policy_file で定義されたファイルが存在している必要があります。存在しないディレクトリーまたは空のディレクトリーは無視されます。

policy_file = policy.json

文字列値

ポリシーを定義するファイル。

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 ベースのポリシーチェックのサーバーアイデンティティー検証

8.1.11. pci_devices

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

表8.11 pci_devices

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

alias = []

多値

vendor_id フィールドおよび product_id フィールドで識別される PCI デバイスのエイリアス。Format: {"vendor_id": "1234", "product_id": "5678", "name": "pci_dev1"}

8.1.12. 処理

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

表8.12 処理

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

add_ports = pxe

文字列値

イントロスペクション中にポートとして追加する MAC アドレス。使用できる値: all (すべての MAC アドレス)、active (IP アドレスを使用する NIC の MAC アドレス)、pxe (PXE ブート元である NIC ノードの MAC アドレスのみ)、ramdisk で PXE MAC が指定されていない場合のアクティブにフォールバックします。

always_store_ramdisk_logs = False

ブール値

エラーメッセージが返されない場合でも ramdisk ログを保存するかどうか (ramdisk_logs_dir オプションが設定されているかどうか)。

default_processing_hooks = ramdisk_error,root_disk_selection,scheduler,validate_interfaces,capabilities,pci_devices

文字列値

パイプラインを処理するデフォルトフックのコンマ区切りリスト。フック スケジューラー により、Nova スケジューラーが必要とする最低限のプロパティーでノードが更新されます。フック validate_interfaces は、ramdisk が有効な NIC データを提供します。実際に何を行うのかがわかっていない限り、この 2 つを除外しないでください。

disk_partitioning_spacing = True

ブール値

パーティショニングのために 1 GiB のディスクサイズを残すかどうか。IPA で ramdisk として使用する場合に限り、以前の ramdisk local_gb が ramdisk 側で算出されます。

keep_ports = all

文字列値

イントロスペクションの後に保持するポート (ノード上に準備済み) します。使用できる値は、all (何も削除しない)、ind (イントロスペクションデータに存在する MAC ポート)、added (イントロスペクション中に追加した MAC のみ) です。

node_not_found_hook = None

文字列値

インスペクターがノードから検査情報を受け取る際に実行されるフックの名前。このフックはデフォルトで無視されます。

overwrite_existing = True

ブール値

ノードデータベースの既存の値を上書きするかどうか。このオプションを無効にして、非破壊的な操作を行います。

power_off = True

ブール値

イントロスペクションの後にノードの電源をオフにするかどうか。

processing_hooks = $default_processing_hooks

文字列値

パイプラインを処理するための有効なフックのコンマ区切りリスト。このデフォルトは $default_processing_hooks で、"prehook,$default_processing_hooks,posthook" のように、デフォルトの前または後にフックを追加することができます。

ramdisk_logs_dir = None

文字列値

これを設定すると、ramdisk からのログはこのディレクトリーに保存されます。

ramdisk_logs_filename_format = {uuid}_{dt:%Y%m%d-%H%M%S.%f}.tar.gz

文字列値

ramdisk ログを保存するファイル名のテンプレート。{uuid} - node UUID または "unknown", {bmc} - node BMC address or "unknown", {dt} - current UTC date and time, {mac} - PXE boot MAC or "unknown" の代わりとして使用できます。

store_data = none

文字列値

イントロスペクションデータを格納する方法。none に設定すると、イントロスペクションデータは保存されません。

store_data_location = None

文字列値

Ironic データベースの追加列に保存されたデータの場所を保存するキーの名前。

8.1.13. pxe_filter

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

表8.13 pxe_filter

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

driver = iptables

文字列値

iptables など、使用する PXE ブートフィルタードライバー

sync_period = 15

整数値

フィルターの定期的な更新を繰り返すまでの時間 (秒単位)。

8.1.14. swift

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

表8.14 swift

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

auth-url = None

文字列値

認証 URL

auth_type = None

文字列値

読み込む認証タイプ

cafile = None

文字列値

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

certfile = None

文字列値

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

container = ironic-inspector

文字列値

オブジェクトの作成時に使用するデフォルトの Swift コンテナー。

default-domain-id = None

文字列値

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

default-domain-name = None

文字列値

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

delete_after = 0

整数値

Swift オブジェクトが削除されるまでに最後になる秒数です (0 に設定するとオブジェクトは削除されません)。

domain-id = None

文字列値

スコープするドメイン ID

domain-name = None

文字列値

スコープするドメイン名

endpoint-override = None

文字列値

このクライアントのリクエストには常にこのエンドポイント URL を使用します。注意: バージョンを指定しないエンドポイントはここで指定する必要があります。特定の API バージョンを要求するには、versionmin-version オプション、および/または max-version オプションを使用します。

insecure = False

ブール値

HTTPS 接続を確認します。

keyfile = None

文字列値

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

max-version = None

文字列値

特定の API の最大メジャーバージョンで、min_version を持つ範囲の上限として使用されることが意図されています。version と相互に排他的です。

max_retries = 2

整数値

失敗する前に Swift 要求を再試行する最大回数。

min-version = None

文字列値

指定の API の最小メジャーバージョンで、max_version を持つ範囲の下限として使用することが意図されています。version と相互に排他的です。max_version なしで min_version が指定されている場合は、max version が latest の場合になります。

os_endpoint_type = internalURL

文字列値

Swift エンドポイントタイプ。

os_region = None

文字列値

エンドポイントを取得する Keystone リージョン。

os_service_type = object-store

文字列値

Swift サービスタイプ。

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 = object-store

文字列値

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

system-scope = None

文字列値

システム操作のスコープ

tenant-id = None

文字列値

テナント ID

tenant-name = None

文字列値

テナント名

timeout = None

整数値

http 要求のタイムアウト値

trust-id = None

文字列値

Trust ID

user-domain-id = None

文字列値

ユーザーのドメイン ID

user-domain-name = None

文字列値

ユーザーのドメイン名

user-id = None

文字列値

ユーザー ID

username = None

文字列値

Username

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

リスト値

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

version = None

文字列値

エンドポイント URL 検出用に指定の Major API バージョン内の最小の Major API バージョン。min_version および max_version と相互排他的になる