ジョブの実行とキューイング
Schematics ジョブ・キューについて
ユーザーが Schematics 操作を実行すると、ジョブは共有サービス・キューに入れられます。 ターゲット領域でジョブを実行するワーカーが使用可能になるまで、ジョブはキューに残ります。 スケジューリング・ポリシーはジョブに適用され、すべてのユーザーがサービスを公平に使用できるようにします。
ジョブ・キューの機能
ユーザーによって実行依頼されたジョブの数とジョブの実行時間によっては、ジョブが実行される前にコンシューマーで遅延が発生する可能性があります。 ジョブキューにより、ユーザーによって発生する負荷に関係なく Schematicsがすべてのユーザーに公平に利用可能になります。
例
user-1 で 20 個のジョブがキュー内で待機している場合、user-2 は新しいジョブを実行依頼します。User-2 ジョブは、user-1 と user-2 の両方で Schematics を公平に使用できるようにするために、user-1's の 20 個のジョブの前のキューで待機します。
ジョブが保留キューに入るのはいつですか?
以下は、ジョブが保留キューに入ったときのジョブのタスクです。
- ジョブが完了するまでにはまだ時間がかかります。 ジョブの実行に十分な時間が指定されていることを確認してください。
- ジョブの実行で使用されるイメージがありません。 提供された画像の詳細が存在し、名前が指定されていることを確認してください。
- ジョブで必要な環境変数パラメーターが指定されていません。 環境変数が定義されていることを確認してください。
- ジョブに渡されるコマンドまたは引数が無効です。 指定された引数フラグが正しいことを確認してください。
ジョブ・タイムアウト
ワークスペースにおける計画、適用、破棄などの Terraform のジョブは、一般的にリソースのプロビジョニングまたはデプロビジョニングに数時間以上かかることはありません。 多くのリソースを同時にプロビジョニングする場合は、多くの時間を要するため、リソースを異なるワークスペースに分割することをお勧めします Schematicsでは、ジョブの実行時間は24時間に制限されています。 24時間後にジョブは終了し、ジョブには STOPPED とマークされ、ワークスペースには
ACTIVE または INACTIVE と表示されます。
24 hours の後、ジョブ実行を停止するために割り込みシグナルが送信されます。 10 minutes の猶予期間がコマンドの終了に与えられます。 この時間内に完了しない場合は、強制終了シグナルが送信され、ジョブは終了します。 状態ファイルおよびその他のデータが収集されるようにするために、ジョブの停止後に Terraform リフレッシュが実行されます。
ジョブでは、terraform init、terraform apply、および terraform refresh などの複数のコマンドが実行されます。 ジョブがコマンド内でタイムアウトになると、それ以降のすべてのコマンドは、追加の 10 minutes のみを終了させます。 10 minutesの終わりに、各コマンドが強制終了されます。
例 Terraformの適用でジョブが永久に止まってしまった場合、コマンドが停止したときにリフレッシュを実行すると、 リフレッシュも動かない場合は、 15 minutes の後に、キルが実行されます。
Terraform local exec および remote exec には、 30 minutes の時間制限があり、これを超えるとジョブの実行が終了します。