8.5. ロールアウトデバイスの選択


flightctl を使用してロールアウトを実行する場合は、ロールアウトに参加させるデバイスと、許容される中断の程度を管理する必要があります。デバイスの選択プロセスと Rollout Disruption Budget の概念により、制御された予測可能なロールアウトが確実に実行されます。

ロールアウト中にデバイスを選択するためのプロセスと設定には、ターゲティングストラテジー、バッチの順序付け、制御されたソフトウェアデプロイメントのための成功基準が含まれます。

8.5.1. デバイスのターゲティング

ロールアウトは、フリートに属するデバイスにのみ適用されます。各デバイスは 1 つのフリートにのみ属することができます。ロールアウトの定義はフリートレベルで行われるため、選択プロセスでは、ラベル条件に基づいて、フリート内のどのデバイスをバッチロールアウトに参加させるかが決定されます。すべてのバッチを処理した後、すべてのフリートデバイスがロールアウトされます。

  • ラベル: 特定のメタデータラベルを持つデバイスをロールアウトの対象にすることができます。
  • フリートメンバーシップ: 指定したフリート内のデバイスにのみロールアウトが適用されます。

8.5.2. デバイス選択ストラテジー

Red Hat Edge Manager は、BatchSequence デバイス選択ストラテジーのみをサポートしています。このストラテジーは、特定の基準に基づいてデバイスをバッチ単位で追加する段階的なロールアウトプロセスを定義するものです。バッチは順番に実行されます。各バッチが完了すると、前のバッチの成功率が設定された成功しきい値以上の場合にのみ、実行が次のバッチに進みます。

成功率は次のように決定されます。

# of successful rollouts in the batch / # of devices in the batch >= success threshold
Copy to Clipboard Toggle word wrap

バッチシーケンスにおいて、最後のバッチは暗黙的なバッチであり、バッチシーケンス内では指定されていません。最後のバッチは、シーケンス内の明示的なバッチによって選択されていない、フリート内のすべてのデバイスを選択します。

8.5.3. デバイス選択の制限

BatchSequence ストラテジーの各バッチでは、オプションの limit パラメーターを使用して、バッチに含めるデバイスの数を定義できます。制限は次の 2 つの方法で指定できます。

  • 絶対数: 選択するデバイスの固定数。
  • パーセンテージ: 選択される一致するデバイスの総数の割合。

    • ラベルを使用して selector を指定すると、フリート内のラベル条件に一致するデバイスの数に基づいてパーセンテージが計算されます。
    • selector を指定しない場合は、このパーセンテージがフリート内のすべてのデバイスに適用されます。

8.5.4. 成功のしきい値

successThreshold は、ロールアウトを続行するために必要な、正常に更新されたデバイスの割合を定義するものです。成功率がこのしきい値を下回った場合、さらなる失敗を防ぐために、ロールアウトが一時停止される場合があります。

以下に、フリート仕様の YAML 設定の例を示します。

apiVersion: v1alpha1
kind: Fleet
metadata:
  name: default
spec:
  selector:
    matchLabels:
      fleet: default
  rolloutPolicy:
    deviceSelection:
      strategy: 'BatchSequence'
      sequence:
        - selector:
            matchLabels:
              site: madrid
          limit: 1  # Absolute number
        - selector:
            matchLabels:
              site: madrid
          limit: 80%  # Percentage of devices matching the label criteria within the fleet
        - limit: 50%  # Percentage of all devices in the fleet
        - selector:
            matchLabels:
              site: paris
        - limit: 80%
        - limit: 100%
    successThreshold: 95%
Copy to Clipboard Toggle word wrap

この例には、6 つの明示的なバッチと 1 つの暗黙的なバッチがあります。

  • 最初のバッチでは、ラベル site:madrid を持つデバイスを 1 つ選択します。
  • 2 番目のバッチまでに、ラベル site:madrid を持つすべてのデバイスの 80% が、現在のバッチまたはそれ以前のバッチでロールアウト対象として選択された状態になります。
  • 3 番目のバッチまでに、すべてのデバイスの 50% が、現在のバッチまたはそれ以前のバッチでロールアウト対象として選択された状態になります。
  • 4 番目のバッチでは、以前に選択されておらず、ラベル site:paris を持つすべてのデバイスが選択されます。
  • 5 番目のバッチまでに、すべてのデバイスの 80% が、現在のバッチまたはそれ以前のバッチでロールアウト対象として選択された状態になります。
  • 6 番目のバッチまでに、すべてのデバイスの 100% が、現在のバッチまたはそれ以前のバッチでロールアウト対象として選択された状態になります。
  • 最後の暗黙的なバッチでは、以前のバッチで選択されていないすべてのデバイスが選択されます (デバイスがまったく選択されていない場合もあります)。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat