論理システムの CPU 割り当て
論理システムの CPU 割り当ては、ランタイム使用率に基づいて CPU 使用率の計算に使用される論理システムに予約済み CPU リソースを割り当てます。詳細については、以下のトピックを参照してください。
CPU 割り当てと制御について
デバイスCPUの使用率が低い場合、システム全体の使用率が安定した範囲内にある限り、論理システムは割り当てられたリザーブクォータを上回るCPUリソースを取得して使用できます。100%CPU使用率で実行されているデバイスは、管理やシステムイベントへの応答が遅い場合や、トラフィックバーストを処理できない可能性があるため、デバイスのCPU使用率が100%に達することはありません。
CPU リソースは、先着順で使用されます。制御がなければ、論理システムは CPU リソースを競い合い、CPU 使用率を最大 100% まで高めることができます。静的リソースの数が少ない論理システムでは、依然として大量の CPU を消費する可能性があるため、セキュリティ ポリシーやゾーンなどの静的リソースの設定に頼って CPU 使用率を直接制御することはできません。代わりに、プライマリ管理者は CPU リソース制御を有効にし、論理システムの CPU 使用率パラメーターを設定できます。
CPU制御を有効にし、CPU使用率パラメーターを設定できるのは、プライマリ管理者だけです。ユーザー論理システム管理者は、 コマンドを使用して、 show system security-profile cpu
論理システムの CPU 使用率を表示できます。
このトピックには、以下のセクションが含まれています。
CPU制御
プライマリ管理者は、[edit system security-profile resources
]階層レベルのcpu-control
設定ステートメントでCPU制御を有効にします。
resources
セキュリティ プロファイルは、デバイス内のすべての論理システムに適用されるグローバル設定を含む特別なセキュリティ プロファイルです。プライマリ管理者が設定したその他のセキュリティ プロファイルは、特定の論理システムにバインドされます。
CPU制御が有効になっている場合、プライマリ管理者は次のCPU使用率パラメーターを設定できます。
予約済みの CPU クォータは、論理システムで保証される CPU 使用率の割合です。
CPU制御ターゲットは、通常の動作条件下でデバイス上のシステム全体のCPU使用率の上限(%)です。
論理システムの予約済み CPU 使用率クォータ
設定された予約済みCPUクォータは、CPUの指定された割合が論理システムで常に利用可能であることを保証します。実行時には、各論理システムによる CPU 使用率が 2 秒ごとに測定されます。予約された CPU クォータを使用して、各論理システムがランタイム使用率に基づいて使用できる CPU の量を計算します。
1 次管理者は、論理システム・セキュリティー・プロファイルで予約済みの CPU クォータを、 構成ステートメントを cpu reserved
[ ]edit system security-profile
profile-name階層レベルで指定します。セキュリティ プロファイルは、1 つ以上の論理システムにバインドされます。セキュリティー・プロファイル内の論理システムに割り振られる他のリソースとは異なり、CPU 使用率に対して最大許可クォータを構成することはできません。
Junos OS ソフトウェアは、デバイス上のすべての論理システムの予約済み CPU クォータの合計が CPU 制御ターゲット値の 90% 未満であることを確認します。CPU制御が有効で、予約CPUクォータが設定されていない場合、プライマリ論理システムのデフォルトの予約CPUクォータは1%、ユーザー論理システムのデフォルトの予約CPUクォータは0%です。プライマリ管理者は、CPU制御が有効になっていない場合でも、予約済みのCPUクォータを設定できます。プライマリ管理者は、セキュリティプロファイルを変更することなく、CPU制御を有効または無効にすることができます。
トラフィック損失が発生する可能性があるため、プライマリ論理システムは、0%予約CPUクォータで設定されたセキュリティプロファイルにバインドしないでください。
CPU 制御ターゲット
CPU制御ターゲットは、通常の動作状態にあるデバイス上のCPU使用率の上限(%)です。デバイスの CPU 使用率が設定された目標値を超えた場合、Junos OS ソフトウェアは、ターゲット値と目標値の 90% の間で CPU 使用率を得る制御を開始します。例えば、CPU制御ターゲット値が80で、デバイスのCPU使用率が80%を超える場合、制御が開始され、CPU使用率が72(80の90%)と80%の範囲内になります。
実行時には、各論理システムによる CPU 使用率が 2 秒ごとに測定されます。パケットをドロップすると、論理システムの CPU 使用量が減少します。論理システムの CPU 使用率がクォータを超えた場合、CPU 使用率制御はその論理システムで受信したパケットを破棄します。パケットドロップ率は、すべての論理システムのCPU使用率に基づいて、2秒ごとに計算されます。
プライマリ管理者は、[edit system security-profile resources
]階層レベルの設定ステートメントでcpu-control-target
CPU制御ターゲットを設定します。安定した CPU 使用率は、比較的 100% に近いものの、CPU 使用率のバーストを許容します。プライマリ管理者は、デバイス上の論理システムの展開の使用パターンの理解に基づいて、CPU制御ターゲットレベルを設定する必要があります。
Junos OS ソフトウェアが CPU 使用率を制御するには、CPU 制御を有効にする必要があります。プライマリ管理者がCPU制御ターゲット値を指定せずにCPU制御を有効にすると、デフォルトのCPU制御ターゲットは80%になります。
共有CPUリソースとCPUクォータ
デバイス上のすべての論理システムの予約済み CPU クォータの合計は、CPU 制御ターゲットの 90% 未満にする必要があります。その違いを共有CPUリソースと呼んでいます共有CPUリソースは、追加のCPUを必要とする論理システム間で動的に割り当てられます。これは、論理システムが予約されたCPUクォータよりも多くのCPUを使用できることを意味します。
論理システムの CPU クォータは、予約済みの CPU クォータと共有 CPU リソースの部分の合計です。複数の論理システムにさらに CPU リソースが必要な場合、予約済みの CPU クォータの相対重み付けに基づいて共有 CPU リソースが分割されます。予約済み CPU クォータが大きい論理システムは、共有 CPU リソースの大部分を受信します。CPU制御の目標は、論理システムの実際のCPU使用率をCPUクォータに保つことです。論理システムの CPU ニーズが CPU クォータを超える場合、その論理システムのパケットは破棄されます。
以下のシナリオは、論理システムの CPU 制御を示しています。各シナリオでは、CPU制御ターゲット値は80であり、CPU制御は最大システム全体のCPU使用率を72~80%維持することを意味します。論理システムの予約済み CPU クォータは、以下のように構成されています。プライマリおよび lsys1 論理システムはそれぞれ 10%、lsys2 論理システムは 5% です。
CPU 使用率シナリオ 1
このシナリオでは、3 つの論理システムのそれぞれで 40% の CPU が必要です。 表 1 は、各論理システムの CPU クォータを示しています。各論理システムに必要な CPU が CPU クォータを超えているので、各論理システムに対してパケットがドロップされます。
論理システム |
必要な CPU |
CPUクォータ |
パケットドロップ? |
---|---|---|---|
プライマリ |
40% |
28.8% |
はい |
lsys1 |
40% |
28.8% |
はい |
lsys2 |
40% |
14.4% |
はい |
CPU 使用率シナリオ 2
このシナリオでは、プライマリ論理システムは CPU の 25% が必要で、2 つのユーザー論理システムは 40% 必要です。 表2 は、プライマリ論理システムのCPUクォータが必要なCPUと等しいことを示しています。そのため、プライマリ論理システムではパケットがドロップせず、CPU制御がプライマリ論理システムのCPU使用率を監視します。lsys1 および lsys2 の場合、パケットはドロップされます。
論理システム |
必要な CPU |
CPUクォータ |
パケットドロップ? |
---|---|---|---|
プライマリ |
25% |
25% |
いいえ |
lsys1 |
40% |
31.3% |
はい |
lsys2 |
40% |
15.6% |
はい |
CPU 使用率シナリオ 3
このシナリオでは、プライマリとlsys2の論理システムには、それぞれ5%と3%のCPUが必要で、lsys1には40%が必要です。 表 3 は、システム全体の CPU 使用率が 48% で、72% 未満(CPU 制御ターゲットの 90%)であるため、パケットがドロップせず、CPU 制御がすべての論理システムを監視していることを示しています。
論理システム |
必要な CPU |
CPUクォータ |
パケットドロップ? |
---|---|---|---|
プライマリ |
5% |
5% |
いいえ |
lsys1 |
40% |
40% |
いいえ |
lsys2 |
3% |
3% |
いいえ |
CPU 使用率の監視
CPU使用率は、プライマリ管理者またはユーザー論理システム管理者のいずれかによって監視できます。1 次管理者は、1 次論理システム、指定されたユーザー論理システム、またはすべての論理システムの CPU 使用率を監視できます。ユーザー論理システム管理者は、論理システムの CPU 使用率のみを監視できます。
コマンドは show system security-profile cpu
、論理システムに設定された予約済みCPUクォータに加えて、使用率とドロップレートを表示します。実行時には、各論理システムによる CPU 使用率が 2 秒ごとに測定されます。表示される使用率とドロップ・レートは、コマンドが実行される前の間隔の show
値です。オプションを detail
指定しない場合、中央ポイント(CP)の使用率と、すべてのサービス処理ユニット(SPU)の平均使用率が表示されます。オプションは detail
、各SPUのCPU使用率を表示します。
CPU 使用率ログ ファイル lsys-cpu-utilization-log
には、デバイス上のすべての論理システムの使用率データが含まれています。コマンドを使用してログ ファイル show log lsys-cpu-utilization-log
を表示できるのは、プライマリ管理者だけです。
「」も参照
例:CPU 使用率の設定(プライマリ管理者のみ)
プライマリ管理者は、CPU制御を有効にし、CPU使用率パラメーターを設定できます。この例では、CPU使用率制御を有効にし、CPU使用率クォータと制御ターゲットを設定する方法を示しています。
要件
開始する前に、以下を行います。
プライマリー管理者としてプライマリ論理システムにログインします。 「プライマリ論理システムとプライマリ管理者ロールについて」を参照してください。
セキュリティプロファイルを、デバイスに設定されたプライマリ論理システムとユーザー論理システムにバインドします。 例: 論理システムセキュリティプロファイルの設定(プライマリ管理者のみ)を参照してください。
概要
この例では、CPU 制御を有効にし、CPU 制御ターゲットを 85% に設定します。 「例: ユーザー論理システム、管理者、ユーザー、および相互接続論理システムの作成」に示す論理システムに予約済み CPU クォータを割り当てます。論理システムは 、表 4 に示すセキュリティ プロファイルにバインドされ、セキュリティ プロファイルに予約済みの CPU クォータが割り当てられます。
論理システム |
セキュリティ プロファイル |
予約済み CPU クォータ |
---|---|---|
root-logical-system(プライマリ) |
プライマリプロファイル |
2% |
ls-product-design |
ls-design-profile |
2% |
ls-marketing-dept, ls-accounting-dept |
ls-accnt-mrkt-profile |
1% |
構成
手順
CLI クイックコンフィギュレーション
この例を迅速に設定するには、以下のコマンドをコピーしてテキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致させる必要がある詳細情報を変更し、コマンドを 階層レベルの [edit]
CLI にコピー アンド ペーストして、設定モードから を入力 commit
します。
set system security-profile resources cpu-control set system security-profile resources cpu-control-target 85 set system security-profile master-profile cpu reserved 2 set system security-profile ls-design-profile cpu reserved 2 set system security-profile ls-accnt-mrkt-profile cpu reserved 1
手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。その方法の詳細については、 Junos OS CLIユーザーガイド の 設定モードでのCLIエディターの使用 を参照してください。
CPU使用率制御パラメーターを設定するには:
プライマリ管理者としてプライマリ論理システムにログインし、設定モードに入ります。
[edit] admin@host> configure admin@host#
CPU制御を有効にします。
[edit system security-profile resources] admin@host# set cpu-control
CPU制御ターゲットを設定します。
[edit system security-profile resources] admin@host# set cpu-control-target 85
セキュリティプロファイルで予約済みのCPUクォータを設定します。
[edit system] admin@host# set security-profile security-profile master-profile cpu reserved 2 admin@host# set security-profile security-profile ls-design-profile cpu reserved 2 admin@host# set security-profile security-profile ls-accnt-mrkt-profile cpu reserved 1
結果
設定モードから、 コマンドを入力して設定を show system security-profile
確認します。出力結果に意図した設定が表示されない場合は、この例の\の手順を繰り返して設定を修正します。
簡潔にするために、この show
コマンド出力には、この例に関連する設定のみが含まれています。システム上の他の設定はすべて省略記号(...)で置き換えられました。
[edit] admin@host# show system security-profile resources { cpu-control; cpu-control-target 85; } ls-accnt-mrkt-profile { ... cpu { reserved 1; } logical-system [ ls-marketing-dept ls-accounting-dept ]; } ls-design-profile { ... cpu { reserved 2; } logical-system ls-product-design; } master-profile { ... cpu { reserved 2; } logical-system root-logical-system; }
デバイスの設定が完了したら、設定モードから を入力します commit
。
検証
設定が正しく機能していることを確認します。
CPU使用率の確認
目的
設定された予約済みCPUクォータ、実際のCPU使用率、およびドロップレートを表示します。
アクション
動作モードから、 コマンドを show system security-profile cpu logical-system all
入力します。
admin@host> show system security-profile cpu logical-system all CPU control: TRUE CPU control target: 85.00% logical system name profile name CPU name usage(%) reserved(%) drop rate(%) root-logical-system master-profile CP 0.10% 2.00% 0.00% root-logical-system master-Profile SPU 0.25% 2.00% 0.00% ls-product-design ls-design-profile CP 0.53% 2.00% 0.00% ls-product-design ls-design-profile SPU 0.26% 2.00% 0.00% ls-marketing-dept ls-acct-mrkt-profile CP 0.10% 1.00% 0.00% ls-marketing-dept ls-acct-mrkt-profile SPU 0.15% 1.00% 0.00% ls-accounting-dept ls-acct-mrkt-profile CP 0.23% 1.00% 0.00% ls-accounting-dept ls-acct-mrkt-profile SPU 0.34% 1.00% 0.00%