クライアント CPU 使用率の構成
BigFix クライアントがエンドポイント・マシンで使用する CPU の量を構成する方法。
適用先
BigFix プラットフォーム
問題
BigFix クライアントによる CPU 使用率および BigFix クライアントが使用する CPU の量を制御する方法。
解決方法
評価サイクル中にエンドポイント・マシンで BigFix クライアントが使用する CPU の量は、以下の 2 つのクライアント設定によって制御されます。
- _BESClient_Resource_WorkIdle
- _BESClient_Resource_SleepIdle
デフォルトでは、_BESClient_Resource_WorkIdle 設定は 10 に設定され、_BESClient_Resource_SleepIdle 設定は 480 に設定されます。
BigFix クライアントは、指定された時間だけ動作してから (関連度の評価)、指定された時間だけスリープ状態に入ります。WorkIdle 設定では各サイクルでスリープ状態になるまでの時間をミリ秒単位で制御し、SleepIdle 設定ではサイクルで作業を実行した後にスリープする時間をミリ秒単位で制御します。WorkIdle 設定が SleepIdle 設定と比べて高い場合、BigFix クライアントは Fixlet の関連度を迅速に評価しますが、CPU 使用率は高くなります。デフォルトでは、WorkIdle は 10 ミリ秒で、SleepIdle は 480 ミリ秒です。10 は 480 の 2% であるため、BigFix クライアントが使用する CPU は最大でも 2% になると見込まれます。WorkIdle と SleepIdle の両方とも、最大値は 500 に設定されています。
カスタム設定でエージェントが使用する CPU の量の上限を決定するには、以下の式を使用します。
最大エージェント %CPU = workidle / (workidle + sleepidle)
例 (デフォルト設定): 10 / (10 + 480) = 2%
BES サポート・サイトのタスク番号 168 により、容易にこれらの設定を管理し、BigFix クライアントが使用する CPU の量を調整できるようになります。
このタスクでは、クライアント CPU 使用率を 5 種類のモードのいずれかに設定できます (アクション・スクリプトで 5 種類のアクションとプリセット値を使用します)。
_BESClient_Resource_WorkIdle | _BESClient_Resource_SleepIdle | CPU モード | CPU 上限 | Note |
2 | 500 | 非常に低い | < 0.5% | 推奨されません |
10 | 480 | デフォルト | < 1-2% | 「デフォルト」 |
25 | 460 | 中 | < 5% | 推奨されません |
50 | 450 | 高 | < 10% | 推奨されません |
100 | 400 | 非常に高い | < 20% | 推奨されません |
LPAR を使用する AIX コンポーネントの場合:
- 上限なしモードおよび上限付きモードでライセンス済みキャパシティーがある AIX LPAR の最大エージェント % CPU 計算。
- - 上限なしモードで AIX LPAR に _BESClient_Resource_Entitlement=100 を使用するというのは、ライセンス済みキャパシティーによる最大エージェント CPU% の削減を排除するために使用したと考えることができます。
pSeries ハイパーバイザーの動作については、以下の例を参照してください。
モードあり: 上限なし、ライセンス済みキャパシティー: 0.10、AIX LPAR が 0.10 CPU コアを使用する場合は、100% の使用率。物理 CPU コアが
pSeries プールで完全には使用されていない場合、pSeries ハイパーバイザーにより、AIX LPAR が CPU コアをより多く使用できるようになります。また、pSeries LPAR 重み付けを使用して、実稼働など特定の AIX LPAR が、開発など他の AIX LPAR よりも、CPU リソースに対する優先度が高くなるようにすることもできます。
BigFix コンピューター設定 _BESClient_Resource_WorkNormal、_BESClient_Resource_SleepNormal (設定可能なタスクを BigFix エージェントが実行している場合)。
質問および回答:
質問 1:
Red Hat、SLES、Windows の場合:
最大エージェント % CPU = workidle / (workidle + sleepidle)
0.0476 = 20 / (20 + 400)
0.0476 x 100 = 4.76%
...
_BESClient_Resource_WorkIdle ステートメント「ライセンス済みキャパシティー: 0.10」というのは、CPU が 1/10 であるという意味です。そのため、workidle/sleepidle を計算する場合には常に計算値に 0.1 を乗じて、CPU 全体の 10% であるとシステムに通知されるようにする必要があります。
AIX LPAR の場合、以下のように計算されますか?
最大エージェント % CPU = (workidle / (workidle + sleepidle)) x ライセンス済み
キャパシティー
0.00476 = (20 / (20 + 400)) x 0.10
AIX LPAR に使用可能な CPU のうち、0.00476 x 100 / = 0.476% を使用できます。
回答:
BigFix 最大エージェント % CPU に AIX LPAR ライセンス済みキャパシティーを乗じると、上限なしモードまたは上限付きモードで AIX LPAR の BigFix 最大エージェント % CPU をさらに削減できます。BigFix 最大エージェント % CPU は、単一の物理 CPU コアに基づいています。
質問 2:
上限なしモードの AIX LPAR の場合:BigFix AIX コンピューター _BESClient_Resource_Entitlement を 100 に設定することで、lparstat -i ライセンス済みキャパシティーをオフにして、最大エージェント %CPU を削減できますか?
回答:
はい
質問 3:
_BESClient_Resource_Entitlement が 100 である AIX LPAR 上の BigFix エージェントの場合、最大エージェント %CPU を単一の物理 CPU コアに制限するための動作は Intel 上の Linux および VMware 上の Windows と同じですか?
回答:
はい。
また、BigFix コンピューター設定 _BESClient_Resource_WorkNormal、_BESClient_Resource_SleepNormal もあります (設定可能なタスクを BigFix エージェントが実行している場合)。
質問 4:
BigFix クライアント・プロセスの完了後も引き続き CPU% が高いままなのはなぜですか?
回答:
BigFix 実行するアクションがなくなり、アクション・サイトの評価を完了しても、クライアントの CPU% は高いままです。
- これらの設定は、エンドポイント・マシンの限られたセットでテストしてから、デプロイメント・エンドポイント・マシンのほとんどにデプロイしてください。
- 実際には、CPU 使用率は通常、この比率よりも低くなります (エージェントが IO を待機することがよくあり、それで CPU 時間が生じるため)。
- これらの計算はすべて単一のプロセッサーに適用されるため、複数のプロセッサーを使用している場合、エージェント CPU の全体の割合は、プロセッサーの数で除算されるため、大幅に減少します。例えば、エージェントの CPU 使用率が 5% 未満で、4 個のプロセッサーが搭載されている場合、workidle を 100、sleepidle を 400 に設定する必要があります ([100 / (100 + 400)] / 4 = 5%)。
- CPU 使用率をデフォルトとは別の値に調整し、それで問題が発生した場合は、CPU 使用率をデフォルト値に戻してください。
- これらの CPU 設定は、クライアントのサイクルの評価モードでコンテンツを評価する BES クライアントを厳密に制御します。BigFix エージェントは、操作の実行部分 (つまり、インストールの開始) の際に、CPU の最大 50% を使用することがあります。これらの CPU スパイクは通常のことであり、長くは続かず、これが顕著になることは通常ありません。BES クライアントで CPU スパイクが続く場合は、実行中のクライアントでアクションに問題があるか、システム上の問題が発生している可能性があります。この点を調査し、BigFix クライアント・ログや BigFix クライアント・デバッグ・ログを分析して問題を特定する必要があります。
ダウンロード操作を完了するためにクライアントが追加の CPU を使用できるようにする
ダウンロード・アクションの後、BigFix クライアントはダウンロード・ファイルに対して SHA コード評価を実行します。大きいファイルの場合、評価にかかる時間が非常に長くなる可能性があります (特にデフォルトの CPU 2% に制限された BigFix クライアントの場合)。BigFix クライアントがこの操作中に追加の CPU を一時的に使用できるようにすることで、この時間を最適化できます。
パッチ 2 以降では、追加の CPU を一時的に使用するよう BigFix クライアントに指示することで、ダウンロードしたファイルの SHA コードを評価する操作を高速化できます。これにより、使用される CPU が増加するにつれて評価に必要な時間が減少するため、ダウンロード・フェーズの時間の最適化が一貫して行われます。
_BESClient_Resource_WorkFastHashVerify
および _BESClient_Resource_SleepFastHashVerify
構成設定により、BigFix クライアントが使用できる CPU の量を管理できます。
これらの設定について詳しくは、CPU 使用率を参照してください。
_BESClient_Download_FastHashVerify
構成設定を使用すると、BigFix クライアントはハッシュ・コードの評価のために追加の CPU を一時的に使用できます (デフォルトでは 25% に増加します)。
設定について詳しくは、「ダウンロード」を参照してください。