15.3. ホスト上のパッケージのアップグレード


Satellite Web UI では、ホスト上のパッケージを一括でアップグレードできます。

手順

  1. Satellite Web UI で、Hosts > All Hosts に移動します。
  2. 変更するホストの名前をクリックします。
  3. Content タブをクリックし、Packages タブをクリックします。
  4. Status 一覧から Upgradable を選択します。
  5. 該当する場合は、Upgradable to 列のドロップダウンメニューからアップグレードバージョンを選択します。
  6. アップグレードするパッケージを選択します。
  7. Upgrade ボタンをクリックします。リモート実行ジョブが完了すると、REX ジョブ通知が表示されます。

以下の手順に従って、API リクエストの本文を JSON 形式で作成します。

API の手順

  1. "job_invocation" オブジェクトを作成し、本文の残りの部分をこのオブジェクト内に配置します。
  2. 更新するパッケージを指定する文字列型の "package" フィールドを持つ "inputs" オブジェクトを作成します。複数のパッケージを指定する場合は、空白で区切ります。
  3. "katello_package_update" を持つ文字列型の "feature" フィールドを作成します。
  4. 文字列型の "search_query" フィールドを作成し、パッケージを更新するホストに一致する検索クエリーを入力します。
  5. オプション: 特定のユーザーとしてパッケージを更新する場合は、次の文字列型のフィールドを持つ ssh オブジェクトを作成します。

    • ssh ユーザーの名前を含む "effective_user" フィールド
    • ssh ユーザーのパスワードを含む "effective_user_password" フィールド (このパスワードが必要な場合)
  6. オプション: 後でパッケージを更新する場合は、"scheduling" オブジェクトを作成します。このオブジェクトには、ISO 8601 形式の日付、時刻、タイムゾーンを含む、次の文字列型フィールドの 1 つまたは両方を含めることができます。

    • "start_at" - パッケージを更新する時刻を設定します。
    • "start_before" - パッケージを更新する最も遅い時刻を設定します。この時刻までにパッケージを更新できない場合、このアクションはキャンセルされます。

    時刻を省略すると、デフォルトの 00:00:00 になります。タイムゾーンを省略した場合は、デフォルトで UTC が使用されます。

  7. オプション: ジョブを同時に実行するホストの数を制限する場合は、整数型の "concurrency_level" フィールドを持つ "concurrency_control" オブジェクトを作成します。ホストの数をフィールドの値として割り当てます。
  8. オプション: 後でパッケージを更新し、ジョブの実行時にホスト検索クエリーを評価する場合は、"dynamic_query" 値を持つ文字列型の "targeting_type" フィールドを作成します。これは、ホストのステータスの変更により、ジョブの実行時に検索クエリーの結果が異なることが予想される場合に便利です。このフィールドを省略すると、デフォルトの "static_query" が使用されます。
  9. 作成した本文を含む POST リクエストを Satellite Server の /api/job_invocations エンドポイントに送信し、Python などのツールを使用してフォーマットされた応答を確認します。

    API リクエストの例:

    curl https://satellite.example.com/api/job_invocations \
    -H "content-type: application/json" \
    -X POST \
    -d @Path_To_My_API_Request_Body \
    -u My_Username:My_Password | python3 -m json.tool

検証

  • Satellite Web UI で、Monitor > Jobs に移動し、選択したホストでパッケージを更新する、スケジュール済みまたは完了済みのリモート実行ジョブのレポートを確認します。

API リクエスト本文の例

{
  "job_invocation" : {
    "concurrency_control" : {
      "concurrency_level" : 100
    },
    "feature" : "katello_package_update",
    "inputs" : {
      "package" : "nano vim"
    },
    "scheduling" : {
      "start_at" : "2023-09-21T19:00:00+00:00",
      "start_before" : "2023-09-23T00:00:00+00:00"
    },
    "search_query" : "*",
    "ssh" : {
      "effective_user" : "My_Username",
      "effective_user_password" : "My_Password"
    },
    "targeting_type" : "dynamic_query"
  }
}

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.