8.5.3.3. スワップメモリーと QoS について理解する
以下の情報を確認して、オーバーコミット環境におけるスワップメモリーと QoS の相互作用を理解し、クラスターが適切に設定されていることを確認してください。
サービス品質 (QoS) の保証を維持するために、ノード上でスワップをデフォルトで無効にすることができます。そうしない場合、ノードの物理リソースがオーバーサブスクライブし、Pod の配置時の Kubernetes スケジューラーによるリソース保証が影響を受ける可能性があります。
たとえば、2 つの Guaranteed Pod がメモリー制限に達した場合、それぞれのコンテナーが swap メモリーを使用し始める可能性があります。十分な swap 領域がない場合には、pod のプロセスはシステムのオーバーサブスクライブのために終了する可能性があります。
スワップを無効にしないと、ノードが メモリープレッシャー が発生していることを認識できず、結果として Pod はスケジューリング要求で指定したメモリーを受け取ることができません。結果として、追加の Pod がノードに配置され、メモリー不足の状態が加速し、最終的にはシステムの Out Of Memory (OOM) イベントが発生するリスクが高まります。
swap が有効にされている場合、利用可能なメモリーに関するリソース不足の処理 (out-of-resource handling) の退避しきい値は予期どおりに機能しなくなります。リソース不足処理により、メモリー不足に陥ったノードから Pod が強制的に削除され、メモリー不足のない別のノードに再スケジュールされます。