SFCBは、CIMサーバの軽量な実装ですが、高度に設定可能です。複数のオプションによりその動作を制御できます。基本的に、SFCBサーバは次の3つの方法で制御できます。
適切な環境変数を設定する
コマンドラインオプションを使用する
環境設定ファイルを変更する
いくつかの環境変数は、SFCBの動作に直接影響します。これらの環境変数の変更を有効にするには、rcsfcb restartでSFCBデーモンを再起動する必要があります。
SFCB_PAUSE_PROVIDER
プロバイダ名を指定します。SFCBサーバは、プロバイダが最初にロードされた後に一時停止します。その後、デバッグの目的でプロバイダのプロセスにランタイムデバッガを接続できます。
SFCB_PAUSE_CODEC
SFCBコーデックの名前を指定します。SFCBサーバは、コーデックが最初にロードされた後に一時停止します。その後、プロセスにランタイムデバッガを接続できます。
SFCB_TRACE
SFCBのデバッグメッセージレベルを指定します。有効な値は、0(デバッグメッセージなし)、または1(重要なデバッグメッセージ)~4(すべてのデバッグメッセージ)です。デフォルトは1です。
SFCB_TRACE_FILE
有効な値は、0 (デバッグメッセージなし)または1 (主要なデバッグメッセージ)~4 (すべてのデバッグメッセージ)です。この変数を設定すると、指定のファイルにデバッグメッセージが代わりに書き込まれます。
SBLIM_TRACE
SBLIMプロバイダのデバッグメッセージレベルを指定します。有効な値は、0(デバッグメッセージなし)、または1(重要なデバッグメッセージ)~4(すべてのデバッグメッセージ)です。
SBLIM_TRACE_FILE
デフォルトでは、SBLIMプロバイダはトレースメッセージをSTDERRに出力します。この変数を設定すると、指定のファイルにトレースメッセージが代わりに書き込まれます。
SFCBデーモンsfcbdには、特定のランタイム機能をオンまたはオフに切り替える複数のコマンドラインオプションがあります。SFCBデーモンの開始時に、これらのオプションを入力します。
-c, --config-file=FILE
SFCBデーモンの開始時に、デフォルトで/etc/sfcb/sfcb.cfgから設定が読み込まれます。このオプションでは、代替の環境設定ファイルを指定できます。
-d, --daemon
バックグラウンドで実行するようにsfcbdとその子プロセスを強制します。
-s, --collect-stats
ランタイム統計情報の収集をオンにします。現在の作業ディレクトリのsfcbStatファイルに、さまざまなsfcbdランタイム統計情報が書き込まれます。デフォルトでは、統計情報は収集されません。
-l, --syslog-level=LOGLEVEL
syslogの冗長レベルを指定します。LOGLEVELは、LOG_INFO、LOG_DEBUG、またはLOG_ERR(デフォルト)のいずれかになります。
-t, --trace-components=NUM
NUMがトレースするコンポーネントを定義するORビットマスク整数である場合に、コンポーネントレベルのトレースメッセージをアクティブにします。-t ?を指定した後すべてのコンポーネントおよび関連する整数ビットマスクが表示されます。
tux@mercury:~> sfcbd -t ? --- Traceable Components: Int Hex --- providerMgr: 1 0x0000001 --- providerDrv: 2 0x0000002 --- cimxmlProc: 4 0x0000004 --- httpDaemon: 8 0x0000008 --- upCalls: 16 0x0000010 --- encCalls: 32 0x0000020 --- ProviderInstMgr: 64 0x0000040 --- providerAssocMgr: 128 0x0000080 --- providers: 256 0x0000100 --- indProvider: 512 0x0000200 --- internalProvider: 1024 0x0000400 --- objectImpl: 2048 0x0000800 --- xmlIn: 4096 0x0001000 --- xmlOut: 8192 0x0002000 --- sockets: 16384 0x0004000 --- memoryMgr: 32768 0x0008000 --- msgQueue: 65536 0x0010000 --- xmlParsing: 131072 0x0020000 --- responseTiming: 262144 0x0040000 --- dbpdaemon: 524288 0x0080000 --- slp: 1048576 0x0100000
sfcbdの内部機能を表示し、メッセージを生成しすぎない有用な値は-t 2019です。
SFCBは、起動後に環境設定ファイル/etc/sfcb/sfcb.cfgからランタイム設定を読み込みます。この動作は、起動時に-cオプションを使用して上書きできます。
環境設定ファイルには、オプション : 値のペアが1行に1つずつ含まれています。このファイルに変更を加える場合は、使用している環境にネイティブな形式でファイルを保存するどのテキストエディタでも使用できます。
オプションがシャープ記号(#)でコメントアウトされている設定では、デフォルト設定が使用されます。
次のオプションが認識されます。
CIMクライアントからのHTTP(非セキュア)要求を受信するためにsfcbdがリスンするローカルポート値を指定します。デフォルトは5988です。
httpPort: port_number
SFCBがHTTPクライアント接続を受け入れるかどうかを指定します。デフォルトはfalseです。
enableHttp: option
|
オプション |
説明 |
|---|---|
|
true |
HTTP接続を有効にします。 |
|
false |
HTTP接続を無効にします。 |
SFCBがHTTPSクライアント接続を受け入れるかどうかを指定します。デフォルトはtrueです。
enableHttps: option
|
オプション |
説明 |
|---|---|
|
true |
HTTPS接続を有効にします。 |
|
false |
HTTPS接続を無効にします。 |
新しい着信HTTPS要求を拒否するまでの同時HTTPSクライアント接続の最大数を指定します。デフォルトは8です。
httpsProcs: max_number_of_connections
SFCBで表示サポートにinterop名前空間を提供するかどうかを指定します。デフォルトはtrueです。
enableInterOp: option
|
オプション |
説明 |
|---|---|
|
true |
interop名前空間を有効にします。 |
|
false |
interop名前空間を無効にします。 |
同時プロバイダプロセスの最大数を指定します。この時点以降、新しい着信要求により新しいプロバイダのロードが必要になった場合は、既存のプロバイダのいずれかが最初に自動的にアンロードされます。デフォルトは32です。
provProcs: max_number_of_procs
要求を受け入れる前に、クライアントユーザーIDに基づいて基本認証のオンまたはオフを切り替えます。デフォルト値はtrueで、クライアントの基本認証が実行されます。
doBasicAuth: option
|
オプション |
説明 |
|---|---|
|
true |
基本認証を有効にします。 |
|
false |
基本認証を無効にします。 |
ローカルライブラリ名を指定します。SFCBサーバは、クライアントユーザIDを認証するためにライブラリをロードします。デフォルトはsfcBasicPAMAuthenticationです。
provProcs: max_number_of_procs
このオプションは、HTTP/HTTPSの「チャンク」使用のオンまたはオフを切り替えます。オンに切り替えた場合、サーバは大量の応答データを、バッファして1つの「チャンク」ですべてを返信するのではなく、小さなチャンクでクライアントに返信します。デフォルトはtrueです。
useChunking: option
|
オプション |
説明 |
|---|---|
|
true |
HTTP/HTTPSデータチャンクを有効にします。 |
|
false |
HTTP/HTTPSデータチャンクを無効にします。 |
1つの接続で、2つの要求の間、要求がなされてから接続を閉じるまでSFCB HTTPプロセスが待機する最大時間を秒数で指定します。0に設定すると、HTTP keep-aliveが無効になります。デフォルトは0です。
keepaliveTimeout: secs
1つの接続で連続して受け付ける要求の最大数を指定します。0に設定すると、HTTP keep-aliveが無効になります。デフォルト値は10です。
keepaliveMaxRequest: number_of_connections
プロバイダの登録データ、ステージング領域、および静的リポジトリを含む登録ディレクトリを指定します。デフォルトは/var/lib/sfcb/registrationです。
registrationDir: dir
SFCBがプロバイダライブラリを検索するディレクトリのリストをスペースで区切って指定します。デフォルトは/usr/lib64 /usr/lib64 /usr/lib64/cmpiです。
providerDirs: dir
プロバイダ登録ファイルで他のグループを指定しておらず、このオプションをtrueに設定されている場合、同じ共有ライブラリのすべてのプロバイダが同じプロセス内で実行されます。
providerAutoGroup: option
|
オプション |
説明 |
|---|---|
|
true |
プロバイダのグループを有効にします。 |
|
false |
プロバイダのグループを無効にします。 |
サーバ証明書を含むファイルの名前を指定します。ファイルは、PEM (Privacy Enhanced Mail、RFC 1421、およびRFC 1424)フォーマットであることが必要です。このファイルは、enableHttpsがtrueに設定されている場合にのみ必要です。デフォルトは/etc/sfcb/server.pemです。
sslCertificateFilePath: path
サーバ証明書の秘密鍵が含まれるファイルの名前を指定します。このファイルはPEMフォーマットであることが必要であり、パスフレーズによって保護できない場合があります。このファイルは、enableHttpsがtrueに設定されている場合にのみ必要です。デフォルトは/etc/sfcb/file.pemです。
sslKeyFilePath: path
CAまたはクライアントの自己署名付きの証明書のいずれかを含むファイルの名前を指定します。このファイルはPEMフォーマットであることが必要であり、sslClientCertificateがacceptまたはrequireに設定されている場合にのみ必要になります。デフォルトは/etc/sfcb/client.pemです。
sslClientTrustStore: path
SFCBがクライアント証明書に基づく認証を処理する方法を指定します。ignoreに設定した場合、クライアントに証明書は要求されません。acceptに設定した場合、クライアントに証明書が要求されますが、クライアントが証明書を提示しなくとも失敗しません。requireに設定した場合、クライアントが証明書を提示しないときは、クライアント接続が拒否されます。デフォルト値はignoreです。
sslClientCertificate: option
|
オプション |
説明 |
|---|---|
|
ignore |
クライアント証明書の要求を無効にします。 |
|
承諾 |
クライアント証明書の要求を無効にします。 証明書が存在しなくとも失敗しません。 |
|
必要 |
有効な証明書を持たないクライアント接続を拒否します。 |
クライアント証明書に基づいてユーザ認証を要求するローカルライブラリの名前を指定します。この設定は、sslClientCertificateがignoreに設定されていない場合にのみ必要です。デフォルト値はsfcCertificateAuthenticationです。
certificateAuthLib: file
SFCBのトレースレベルを指定します。この設定は、環境変数SFCB_TRACE_LEVELを設定することにより上書きできます。デフォルト値は0です。
traceLevel: num_level