10.6.2. ジョブの実行
1 つ以上のホストに対してジョブテンプレートに基づくジョブを実行することができます。
手順
- ホスト > すべてのホスト に移動し、リモートジョブを実行するターゲットホストを選択します。検索フィールドを使用してホストの一覧を絞り込むことができます。
- アクションの選択 リストから リモートジョブのスケジュール を選択します。
ジョブ呼び出し ページで、主なジョブ設定を定義します。
- 使用する ジョブカテゴリー および ジョブテンプレートを選択します。
- オプション: ブックマーク リストに保存された検索文字列を選択し、ターゲットホストを指定します。
- オプション: 検索クエリー を入力し、ターゲットホストの範囲をさらに狭めることができます。解決 行には、クエリーの影響を受けるホストの数が表示されます。更新ボタンを押して、クエリー変更後の数を再計算します。プレビューアイコンにはターゲットホストが一覧表示されます。
- 残りの設定は、選択したジョブテンプレートによって異なります。カスタムパラメーターをテンプレートに追加する方法は、ジョブテンプレートの作成方法: を参照してください。
オプション: ジョブの詳細設定を行うには、詳細フィールドの表示 をクリックします。一部の詳細設定はジョブテンプレートによって異なります。以下は一般的な設定です。
- 実効ユーザー: ジョブを実行するためにユーザーを定義します。デフォルトは SSH ユーザーです。
- 同時実行レベル は一度に実行するジョブの最大数を定義します。この定義で、多数のホストでジョブを実行する時に、システムのリソースに負荷が過剰にかかるのを防ぐことができます。
- Timeout to kill は、ジョブが終了しない場合に、ジョブの強制終了までの間隔 (秒単位) を定義します。以前のタスクが終了するまで時間がかかりすぎているなど、定義した間隔で起動できなかったタスクはキャンセルされます。
- クエリーのタイプ: 検索クエリーが評価されるタイミングを定義します。これは、スケジュールされているタスクに対してクエリーが常に最新の状態に保つのに役立ちます。
実行順序 は、ジョブがホストで実行される順序を決定します (アルファベット順またはランダム)。
同時実行レベル および Timeout to kill 設定により、お使いのインフラストラクチャーハードウェアおよびニーズに合わせてジョブ実行を調整することができます。
- ジョブをすぐに実行する場合は、スケジュール が 今すぐ実行 に設定されていることを確認します。さらに、1 回限りのジョブを未来の日付で定義したり、再帰的に実行するジョブを設定することもできます。再帰的に実行するジョブについては、開始日と終了日、実行回数と頻度を定義できます。また cron 構文を使用して繰り返しを定義することもできます。cron の詳細は、Red Hat Enterprise Linux 7 の『システム管理者のガイド』の「システムタスクの自動化」セクションを参照してください。
- 送信 をクリックします。これにより ジョブの概要 ページが表示され、ジョブの完了時にはジョブのステータスも表示されます。
CLI をご利用の場合
Satellite で以下のコマンドを入力します。
+
# hammer settings set --name=remote_execution_global_proxy --value=false
カスタムパラメーターを使用してリモートジョブを実行するには、以下の手順を実行します。
使用するジョブテンプレートの ID を検出します。
# hammer job-template list
テンプレートの詳細を表示して、テンプレートに必要なパラメーターを確認します。
# hammer job-template info --id template_ID
カスタムパラメーターでリモートジョブを実行します。
# hammer job-invocation create \ --job-template "template_name" \ --inputs key1="value",key2="value",... \ --search-query "query"
query は、ホストを定義するフィルター式に置き換えます (
"name ~ rex01"
など)。hammer を使用したリモートコマンド実行に関する詳細については、hammer job-template --help
およびhammer job-invocation --help
を入力します。
例10.2 複数のホストでの restorecon テンプレートの実行
以下の例では、複数のホストで 例10.1「restorecon テンプレートの作成」 で作成されたテンプレートに基づいてジョブを実行する方法を示します。このジョブは、/home/ ディレクトリー下のすべてのファイルで SELinux コンテキストを復元します。
- ホスト > すべてのホスト に移動し、ターゲットホストを選択します。アクションの選択 リストで、リモートジョブのスケジュール を選択します。
-
ジョブ呼び出し ページで、
Commands
ジョブカテゴリーを選択し、Run Command - restorecon
ジョブテンプレートを選択します。 -
ディレクトリー フィールドに
/home
と入力します。 -
スケジュール を
Execute now
に設定します。 - Submit をクリックします。ジョブ呼び出し ページに移動します。ここでジョブ実行のステータスを監視できます。