CronJobsは、定期的および定期的なタスクを作成するために使用されます。 たとえば、CronJobsを作成してバックアップ操作を実行したり、メールを送信したりできます。 ジョブは、短期間の1回限りのタスクを処理するために使用されます。 CronJobは、特定のスケジュールに基づいて1つ以上のジョブを作成します。 このトピックでは、CronJobを作成する方法について説明します。
ACKコンソールでCronJobを作成する
イメージからCronJobを作成する
ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターの名前をクリックします。 左側のウィンドウで、 を選択します。
On theCronJobsページをクリックします。イメージから作成右上隅にあります。
CronJobのパラメーターを設定します。
[基本情報] ウィザードページで、基本設定を行います。 詳細については、「手順5: 基本設定の設定」をご参照ください。
[コンテナー] ウィザードページで、1つ以上のコンテナーを設定します。 パラメーターの詳細については、「コンテナー設定」をご参照ください。
On the高度なウィザードページで、詳細設定を構成します。
カテゴリ
パラメーター
説明
CronJobs
スケジュール
スケジュールは、時間単位、日単位、週単位、または月単位で指定できます。 cron式を指定することもできます。
詳細については、「Cron式」をご参照ください。
同時実行ポリシー
ジョブを同時に実行するためのポリシー。 有効な値:
許可: ジョブを同時に実行できるようにします。 同時ジョブはクラスターリソースを求めて競合します。
Forbid: ジョブを同時に実行できないようにします。 ジョブがスケジュール内で完了していない場合、次のジョブはスキップされます。
置換: ジョブがスケジュール内で完了していない場合、ジョブはスキップされます。
仕事の履歴
レコードを保持するジョブの成功または失敗の数。 パラメーターを0に設定した場合、ジョブのレコードは保持されません。
ジョブ設定
Completions
[ジョブ設定] セクションでパラメーターを設定する方法の詳細については、「ジョブ設定」をご参照ください。
並列処理
タイムアウト
BackoffLimit
Restart
ラベル、注釈
ポッドラベル
キーと値のペアでポッドにラベルを追加できます。
説明ラベルのキーは1 ~ 253文字で、英数字、ハイフン (-) 、アンダースコア (_) 、ピリオド (.) のみを使用できます。
ポッド注釈
キーと値のペアでポッドに注釈を追加できます。
説明注釈のキーは1 ~ 253文字で、英数字、ハイフン (-) 、アンダースコア (_) 、およびピリオド (.) のみを使用できます。
クリック作成.
CronJobが作成されたら、CronJobページでCronJobを表示できます。
YAMLテンプレートからCronJobを作成する
On theCronJobsページをクリックします。YAMLから作成する右上隅にあります。
On the作成ページでDaemonSetを設定します。テンプレートセクションにアクセスします。
クリック作成.
kubectlを使用してCronJobを作成する
kubectlを使用してCronJobを作成する前に、クラスターを作成し、kubectlをダウンロードしてから、kubectlクライアントを使用してクラスターに接続する必要があります。 詳細については、「クラスターのkubeconfigファイルを取得し、kubectlを使用してクラスターに接続する」をご参照ください。
次の表に、CronJobの作成に使用される主要なパラメーターを示します。
パラメーター | 説明 |
.spec.schedule | This parameter is required. CronJobのスケジュールを指定します。 スケジュール形式の詳細については、「Cron schedule」をご参照ください。 |
. spec.jobTemplate | This parameter is required. 実行するジョブの種類を指定します。 ジョブタイプの詳細については、「ジョブパターン」をご参照ください。 |
.spec.suspend | このパラメーターはオプションです。 設定した後 この設定は、すでに開始されているタスクには影響しません。 説明 スケジューリング時間中に中断されたタスクは、失敗したタスクと見なされます。 あなたが変更するとき |
. spec.startingDeadlineSeconds | このパラメーターはオプションです。 ジョブを実行する必要がある期限を指定します。 |
. spec.concurrencyPolicy | このパラメーターはオプションです。 同時実行ポリシーを指定します。 有効な値: Allow、Forbid、およびReplace。
|
この例では、kubectlを使用してCronJobを作成する方法を示すために、helloという名前のCronJobを作成します。
cronjob.yamlという名前のファイルを作成し、次のコンテンツをファイルにコピーします。
apiVersion: batch/v1 種類: CronJob メタデータ: name: こんにちは spec: スケジュール: "*/1 * * * *" jobTemplate: 仕様: テンプレート: 仕様: containers: -name: こんにちは image: busybox args: - /bin/sh - -c -日付; KubernetesクラスターからHelloをエコーする restartPolicy: OnFailure
次のコマンドを実行してCronJobを作成します。
kubectl create -f cronjob.yaml
cronjob.batch/hello created
が返された場合、CronJobが作成されます。
次のステップ
CronJobを作成した後、次の操作を実行できます。
[操作] 列の [詳細] をクリックして、ジョブリストやイベントなどのCronJobに関する基本情報を表示します。
[操作] 列で、
を選択してCronJobのYAMLコンテンツを表示し、[詳細] > [スケール] を選択して並列実行するポッドの数を変更し、 を選択してCronJobを削除します。
関連ドキュメント
CronJobsの詳細については、「CronJob」をご参照ください。