6.11. ガベージコレクションを使用しているノードリソースの解放
管理者は、OpenShift Container Platform を使用し、ガベージコレクションによってリソースを解放することにより、ノードを効率的に実行することができます。
OpenShift Container Platform ノードは、2 種類のガベージコレクションを実行します。
- コンテナーのガベージコレクション: 終了したコンテナーを削除します。
- イメージのガベージコレクション: 実行中のどの Pod からも参照されていないイメージを削除します。
6.11.1. 終了したコンテナーがガベージコレクションによって削除される仕組みについて リンクのコピーリンクがクリップボードにコピーされました!
コンテナーのガベージコレクションを使用して終了したコンテナーを削除することで、ノードが効率的に動作するようにすることができます。
退避しきい値がガーベージコレクションに設定されていると、ノードは Pod のコンテナーが API から常にアクセス可能な状態になるよう試みます。Pod が削除された場合、コンテナーも削除されます。コンテナーは Pod が削除されず、退避のしきい値に達していない限り保持されます。ノードがディスク不足 (disk pressure) の状態になっていると、コンテナーが削除され、それらのログは oc logs を使用してアクセスできなくなります。
- eviction-soft - ソフト退避のしきい値は、退避しきい値と要求される管理者指定の猶予期間を組み合わせます。
- eviction-hard - ハード退避のしきい値には猶予期間がなく、検知されると、OpenShift Container Platform はすぐにアクションを実行します。
以下の表は、退避しきい値のリストです。
| ノードの状態 | 退避シグナル | 説明 |
|---|---|---|
| MemoryPressure |
| ノードで利用可能なメモリー。 |
| DiskPressure |
|
ノードのルートファイルシステム ( |
evictionHard の場合、これらのパラメーターをすべて指定する必要があります。すべてのパラメーターを指定しないと、指定したパラメーターのみが適用され、ガベージコレクションが正しく機能しません。
ノードがソフト退避しきい値の上限と下限の間で変動し、その関連する猶予期間を超えていない場合、対応するノードは、true と false の間で常に変動します。したがって、スケジューラーは適切なスケジュールを決定できない可能性があります。
この変動を防ぐには、evictionpressure-transition-period フラグを使用して、OpenShift Container Platform が不足状態から移行するまでにかかる時間を制御します。OpenShift Container Platform は、false 状態に切り替わる前の指定された期間に、退避しきい値を指定された不足状態に一致するように設定しません。
evictionPressureTransitionPeriod パラメーターを 0 に設定すると、デフォルト値の 5 分が設定されます。退避不足移行期間を 0 秒に設定することはできません。