4.2.4.3. メモリーの要件
提供される Jenkins の一時また永続テンプレートでデプロイする場合、デフォルトのメモリー制限は 512MiB です。
Jenkins が使用する JVM のチューニングに関する背景情報は、Sizing OpenJDK on OpenShift Container Platform を参照してください。
メモリー効率のために、メモリー制限が 2GiB 未満のコンテナーで実行されている場合、デフォルトで Jenkins イメージは 32 ビット JVM を動的に使用します。この動作は、OPENSHIFT_JENKINS_JVM_ARCH
環境変数で上書きできます。
デフォルトで、Jenkins JVM は、ヒープにコンテナーメモリー制限の 50% を使用します。この値は、CONTAINER_HEAP_PERCENT
の環境変数で変更可能です。また、上限を指定することも、すべて上書きすることも可能です。詳細は、Environment Variables を参照してください。
デフォルトでは、パイプラインからローカルで実行されるシェルスクリプトや oc
コマンドなど、Jenkins コンテナーで実行される他のすべてのプロセスでは、OOM kill を引き起こさずに、残りの 256MiB メモリーの合計を超えるメモリーを使用できる可能性はありません。そのため、パイプラインは可能な限り、エージェントコンテナーで外部コマンドを実行することを強くお勧めします。
Jenkins Kubernetes プラグインによって作成されるエージェントコンテナーで、メモリー要求および制限の値を指定することが推奨されます。管理者は、Jenkins 設定を使用して、エージェントごとのイメージに基づいてデフォルトを設定できます。メモリー要求および制限は、上記 のように、コンテナーベースでも上書きできます。
Jenkins で利用可能なメモリー量を増やすには、Jenkins の一時テンプレートまたは永続テンプレートをインスタンス化する際に MEMORY_LIMIT パラメーターを上書きします。