第8章 ビルドのトラブルシューティング
ビルドマネージャー が起動した ビルダー インスタンスは、一時的なものです。これは、タイムアウトまたは失敗時に Red Hat Quay によってシャットダウンされるか、コントロールプレーン (EC2/K8s) によってガベージコレクションされることを意味します。ビルド ログを取得するには、ビルド の実行中に取得する必要があります。
8.1. DEBUG 設定フラグ
ビルダー インスタンスが完了または失敗後にクリーンアップされないようにするには、DEBUG
フラグを true
に設定します。以下に例を示します。
EXECUTORS: - EXECUTOR: ec2 DEBUG: true ... - EXECUTOR: kubernetes DEBUG: true ...
true
に設定すると、デバッグ機能により、quay-builder
サービスが完了または失敗した後の ビルドノード のシャットダウンを阻止します。また、ビルドマネージャー が EC2 インスタンスを終了したり、Kubernetes ジョブを削除したりして、インスタンスをクリーンアップすることも阻止します。これにより、ビルダーノード の問題をデバッグできます。
デバッグは実稼働サイクルでは設定しないでください。設定しても、ライフタイムサービスが残ります。そのため、たとえばインスタンスが約 2 時間後にシャットダウンします。これが発生すると、EC2 インスタンスが終了し、Kubernetes ジョブが完了します。
デバッグを有効にすると、終了していないインスタンスとジョブも実行中のワーカーの総数にカウントされるため、ALLOWED_WORKER_COUNT
にも影響します。その結果、ALLOWED_WORKER_COUNT
に達した場合は、新しい ビルド をスケジュールできるように、既存の ビルダーワーカー を手動で削除する必要があります。