OpenShift で、ファイル数が多い永続ボリュームを使用する Pod が起動に失敗したり、起動に時間がかかりすぎたりする
Issue
-
Pod のデプロイメントが以下のメッセージで失敗します。
Error: Failed to create pod sandbox: rpc error: code = Unknown desc = Kubelet may be retrying requests that are timing out in CRI-O due to system load: context deadline exceeded
-
Pod が
CreateContainerError
ステータスになり、起動できません。mypod-5-1111a 0/1 CreateContainerError 0 7m29s
- Red Hat OpenShift Container Platform でボリュームを Pod にアタッチすると、Pod が起動しなかったり、起動に時間がかかったりすることがあるのはなぜですか?
- ボリューム自体のファイル数は非常に多く、ファイルとディレクトリーの数は数万 (またはそれ以上) になることが多いです。
- ファイル数の多いボリュームを使用せずに Pod を起動すると、Pod はすぐに
Ready
状態になることができます (ただし、ボリュームが提供するデータにはアクセスできません)。 - この問題により、コンテナーランタイム (
docker
またはcri-o
) が (ハングしたdocker ps
またはcrictl ps
コマンドで見られるように) 応答しなくなるため、ノード全体が時折NotReady
とマークされる可能性があります。 - OpenShift でファイル数の多い永続ボリュームを使用すると、Pod が起動に失敗したり、
Ready
状態になるまでに非常に長い時間がかかったりするのはなぜですか?
Environment
- Red Hat OpenShift Container Platform (RHOCP)
- 3
- 4
- Docker コンテナーエンジン
- CRI-O コンテナーエンジン
- SELinux
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.