第1章 Hosted Control Plane のリリースノート


リリースノートには、新機能、非推奨機能、変更、既知の問題に関する情報が記載されています。

1.1. OpenShift Container Platform 4.20 用の Hosted Control Plane のリリースノート

このリリースでは、OpenShift Container Platform 4.20 用の Hosted Control Plane が利用可能になりました。OpenShift Container Platform 4.20 用の Hosted Control Plane は、multicluster engine for Kubernetes Operator バージョン 2.10 をサポートしています。

1.1.1. 新機能および機能拡張

1.1.1.1. ホステッドクラスターでのワークロードのスケールアップ

ホステッドクラスター内のワークロードをスケールダウンせずに、ScaleUpOnly 動作を使用してワークロードをスケールアップできるようになりました。詳細は、ホステッドクラスターでのワークロードのスケールアップ を参照してください。

1.1.1.2. ホステッドクラスターでのワークロードのスケールアップとスケールダウン

ホステッドクラスターで ScaleUpAndScaleDown 動作を使用して、ワークロードをスケールアップおよびスケールダウンできるようになりました。詳細は、ホステッドクラスターでのワークロードのスケールアップとスケールダウン を参照してください。

1.1.1.3. ホステッドクラスター内の無視されたラベルのバランス調整

ノードプールをスケールアップした後、balancingIgnoredLabels を設定して、ノードプール全体にマシンを均等に分散できるようになりました。詳細は、ホステッドクラスター内の無視されたラベルのバランス調整 を参照してください。

1.1.1.4. ホステッドクラスターでの優先度エクスパンダーの設定

ホステッドクラスターで優先度エクスパンダーを設定することで、優先度の低いマシンの前に優先度の高いマシンを作成できるようになりました。詳細は、ホステッドクラスターでの優先度エクスパンダーの設定 を参照してください。

1.1.1.5. 非接続環境における IBM Z 上の Hosted Control Plane の一般提供を開始しました

このリリースの時点で、非接続環境における IBM Z 上の Hosted Control Plane が一般提供機能になりました。詳細は、非接続環境における IBM Z への Hosted Control Plane のデプロイ を参照してください。

1.1.2. バグ修正

  • この更新前は、hc.spec.configuration.apiServer.servingCerts.namedCertificates のカスタム証明書の SAN 検証で、*.example.com などのワイルドカード DNS パターンが適切に処理されませんでした。その結果、カスタム証明書内のワイルドカード DNS パターンが検出されずに内部 Kubernetes API サーバー証明書 SAN と競合することで、証明書の検証が失敗してデプロイメントの問題が発生する可能性がありました。このリリースでは、DNS SAN 競合検出が強化され、RFC 準拠のワイルドカードサポートが組み込まれ、*.example.comsub.example.com を一致とみなすような、ワイルドカードパターンを適切に処理する双方向の競合検証が実装されました。その結果、ワイルドカード DNS パターンが適切に検証されるようになり、証明書の競合が防止され、ワイルドカード証明書のサポートによりホステッドクラスターのデプロイメントの信頼性が向上しました。(OCPBUGS-60381)
  • この更新前は、Azure クラウドプロバイダーが、Azure ロードバランサーのデフォルトの ping ターゲットを HTTP:10256/healthz に設定していませんでした。代わりに、Azure 上で実行された LoadBalancer タイプのサービスには、ping ターゲットが TCP:30810 に設定されていました。その結果、クラスター全体のサービスのヘルスプローブが機能しなくなり、アップグレード中にダウンタイムが発生しました。このリリースでは、クラウド設定の ClusterServiceLoadBalancerHealthProbeMode プロパティーが shared に設定されています。その結果、Azure のロードバランサーには、ノード上で実行される kube-proxy ヘルスエンドポイントを指す正しいヘルスチェック ping ターゲット (HTTP:10256/healthz) が設定されます。(OCPBUGS-58031)
  • この更新前は、HyperShift Operator は、HostedCluster リソースから additionalTrustBundle パラメーターを削除した後、user-ca-bundle config map をクリアできませんでした。その結果、user-ca-bundle config map が更新されず、イグニッションペイロードの生成に失敗しました。このリリースでは、HostedCluster リソースから user-ca-bundle config map が削除されると、HyperShift Operator はコントロールプレーンの namespace からそれを能動的に削除します。その結果、user-ca-bundle config map が正しくクリアされ、イグニッションペイロードが生成されます。(OCPBUGS-57336)
  • この更新前は、Kubernetes API サーバーサービスの公開ストラテジーが PublicAndPrivate エンドポイントアクセスを伴う LoadBalancer である場合、AWS 上にホステッドクラスターを作成しようとすると、External DNS Operator が DNS レコードを登録していなくても、プライベートルーターは OAuth ルートを許可していました。その結果、プライベートルーターはルート URL を適切に解決できず、OAuth サーバーにアクセスできませんでした。Console Cluster Operator も起動に失敗し、ホステッドクラスターのインストールも失敗しました。このリリースでは、外部 DNS が定義されている場合にのみプライベートルーターは OAuth ルートを許可します。それ以外の場合、ルーターは管理クラスター内のルートを許可します。その結果、OAuth ルートにアクセスできるようになり、Console Cluster Operator が適切に起動し、ホステッドクラスターのインストールが成功します。(OCPBUGS-56914)
  • このリリースの前は、管理 OpenShift クラスター内の IDMS または ICSP で registry.redhat.io または registry.redhat.io/redhat を参照するソースが定義されており、ミラーレジストリーに必要な OLM カタログイメージが含まれていない場合、不正なイメージプルが原因で HostedCluster リソースのプロビジョニングが停止していました。その結果、HostedCluster リソースはデプロイされず、ブロックされたままになり、ミラーレジストリーから重要なカタログイメージを取得できませんでした。このリリースでは、認可エラーのために必要なイメージをプルできない場合、プロビジョニングが明示的に失敗するようになりました。レジストリーのオーバーライドのロジックが改善され、OLM CatalogSource イメージの解決時に registry.redhat.io などのレジストリーのルートでのマッチングが可能になりました。レジストリーのオーバーライドによって正常なイメージが得られなかった場合に、元の ImageReference を使用するためのフォールバックメカニズムも導入されています。その結果、ミラーレジストリーに必要な OLM カタログイメージが不足しているシナリオでも、システムが適切な場合に元のソースからプルするように正しくフォールバックするため、HostedCluster リソースを正常にデプロイできます。(OCPBUGS-56492)
  • この更新前は、AWS Cloud Provider が、AWS ロードバランサーのデフォルトの ping ターゲットを HTTP:10256/healthz に設定していませんでした。AWS 上で実行される LoadBalancer タイプのサービスの場合、AWS で作成されたロードバランサーオブジェクトの ping ターゲットは TCP:32518 でした。その結果、クラスター全体のサービスのヘルスプローブが機能しなくなり、アップグレード中にそれらのサービスが停止しました。このリリースでは、クラウド設定の ClusterServiceLoadBalancerHealthProbeMode プロパティーが Shared に設定されています。このクラウド設定は AWS Cloud Provider に渡されます。その結果、AWS のロードバランサーには、ノード上で実行されている kube-proxy ヘルスエンドポイントを指す正しいヘルスチェック ping ターゲット (HTTP:10256/healthz) が設定されます。(OCPBUGS-56011)
  • この更新前は、--disable-cluster-capabilities オプションを使用してイメージレジストリー機能を無効にしても、Hosted Control Plane ではイメージレジストリーのマネージドアイデンティティーを設定する必要がありました。このリリースでは、イメージレジストリーが無効になっている場合、イメージレジストリーのマネージドアイデンティティー設定はオプションになります。(OCPBUGS-55892)
  • この更新前は、管理クラスターからの ImageDigestMirrorSet (IDMS) および ImageContentSourcePolicy (ICSP) リソースは、イメージ置き換えのミラーまたはソースとしてルートレジストリー名のみを指定する可能性があることを考慮せずに処理されていました。その結果、ルートレジストリー名のみを使用する IDMS および ICSP エントリーは期待どおりに機能しませんでした。このリリースでは、ミラーの置き換えロジックが、ルートレジストリー名のみが指定されているケースを正しく処理するようになりました。その結果、問題が発生しなくなり、ルートレジストリーミラーの置き換えがサポートされるようになりました。(OCPBUGS-54483)
  • この更新前は、Hosted Control Plane はレジストリーメタデータを正しく保存せず、HostedCluster リソースにイメージプロバイダーキャッシュを解放していませんでした。その結果、リリースおよびイメージメタデータのキャッシュは、HostedCluster コントローラーのリコンシリエーション時にリセットされました。このリリースでは、キャッシュ損失を修正するために、HostedCluster リソースによって使用される共通レジストリープロバイダーが導入されました。これにより、イメージプルの数とネットワークトラフィックが削減され、全体的なパフォーマンスが向上します。(OCPBUGS-53259)
  • この更新前は、クライアントシークレットを指定していない OIDC クライアントを使用して HostedCluster リソースの OIDC プロバイダーを設定すると、システムがデフォルトのシークレット名を自動的に生成していました。その結果、シークレットを使用しないはずの OIDC パブリッククライアントを設定できませんでした。このリリースでは、この問題が修正されました。クライアントシークレットが指定されていない場合、デフォルトのシークレット名は生成されず、パブリッククライアントが適切にサポートされます。(OCPBUGS-58149)
  • この更新前は、ミラーイメージが複数あるためイメージ検索に失敗し、Hosted Control Plane ペイロードエラーが発生しました。その結果、ユーザーはホステッドクラスターを作成できませんでした。このリリースでは、Hosted Control Plane ペイロードが複数のミラーをサポートするようになり、プライマリーミラーが使用できない場合のエラーが回避されます。その結果、ユーザーはホステッドクラスターを作成できます。(OCPBUGS-54720)
  • この更新前は、ホステッドクラスターが時間の経過とともに複数のバージョンにアップグレードされ、HostedCluster リソースのバージョン履歴が 10 エントリーを超える場合がありました。しかし、API ではバージョン履歴フィールドに対して最大 10 項目という厳格な検証制限がありました。その結果、バージョン履歴が 10 エントリーを超えると、ユーザーは HostedCluster リソースを編集または更新できませんでした。アノテーションの追加 (例: クラスターサイズのオーバーライド) や、メンテナンスタスクの実行 (例: リクエストサービングノードのサイズ変更) など操作が、検証エラー "status.version.history: Too many: 11: must have at most 10 items" で失敗しました。このエラーにより、ROSA SRE はお客様の API アクセスに影響を与える可能性のある重要なメンテナンス操作を実行できませんでした。

    このリリースでは、HostedCluster API のバージョン履歴フィールドから最大項目検証制約が削除され、履歴が 10 エントリーを超えても検証エラーがトリガーされなくなりました。その結果、バージョン履歴に存在するエントリーの数にかかわらず、HostedCluster リソースを編集および更新できるようになり、管理者は複数のバージョンアップグレードを経たクラスターに対しても必要なメンテナンス操作を実行できるようになりました。(OCPBUGS-58200)

  • この更新前は、CLI のリファクタリングを行うと MarkPersistentFlagRequired 関数が正しく動作しなくなりました。クラスターの作成に不可欠な --name および --pull-secret フラグは必須としてマークされていましたが、検証は強制されていませんでした。その結果、ユーザーは必要な --name または --pull-secret フラグを指定せずに hypershift create cluster コマンドを実行でき、CLI は必須フラグが欠落していることをすぐに警告しませんでした。これにより、デプロイメントの誤設定や、プロセスの後半でエラーメッセージによる混乱が生じていました。

    このリリースでは、RawCreateOptions.Validate() 関数に --name フラグと --pull-secret フラグの存在を確認するための明示的な検証が追加され、いずれかのフラグが欠落している場合は明確なエラーメッセージが返されます。さらに、適切な検証を確実に行うために、名前フィールドからデフォルトの "example" 値が削除されました。その結果、ユーザーが必須の --name フラグまたは --pull-secret フラグを指定せずにクラスターを作成しようとすると、どの必須フラグが欠落しているかを示す明確なエラーメッセージ ("Error: --name is required" や "Error: --pull-secret is required" など) がすぐに表示されるようになりました。これにより、誤った設定のデプロイメントが防止され、ユーザーエクスペリエンスが向上します。(OCPBUGS-37323)

  • この更新前は、GetSupportedOCPVersions() 関数の変数シャドウイングバグにより、supportedVersions 変数が = ではなく := 使用して不正に割り当てられ、意図した外部スコープ変数は更新されず、代わりにすぐに破棄されるローカル変数が作成されていました。その結果、HyperShift Operator がデプロイされた状態でユーザーが hypershift version コマンドを実行すると、CLI はサーバーバージョンとして <unknown> を表示するか、"nil pointer dereference" エラーでパニックを起こし、ユーザーはデプロイされた HyperShift Operator のバージョンを確認できませんでした。

    このリリースでは、GetSupportedOCPVersions() 関数内の変数の割り当てが supportedVersions := から supportedVersions = に修正され、config map が外部スコープ変数に適切に割り当てられ、サポート対象バージョンのデータが正しく入力されるようになりました。その結果、HyperShift Operator がデプロイされている場合に hypershift version コマンドでサーバーバージョン (例: "Server Version: f001510b35842df352d1ab55d961be3fdc2dae32") が正しく表示されるようになり、ユーザーは実行中の Operator バージョンとサポートされている OpenShift Container Platform バージョンを確認できるようになりました。(OCPBUGS-57316)

  • この更新前は、HyperShift Operator はすべてのケースで Kubernetes API サーバーのサブジェクト代替名 (SAN) を検証していました。その結果、公開鍵基盤 (PKI) のリコンシリエーション中に、無効な API Server SAN が発生する場合がありました。このリリースでは、PKI リコンシリエーションが無効になっていない場合にのみ、Kubernetes API Server SAN が検証されます。(OCPBUGS-56457)
  • この更新前は、共有 Ingress コントローラーは HostedCluster.Spec.KubeAPIServerDNSName フィールドを処理しなかったため、カスタム kube-apiserver DNS 名がルーター設定に追加されませんでした。その結果、カスタム DNS 名を使用する Hosted Control Plane 上の kube-apiserver 宛てのトラフィック (HostedCluster.Spec.KubeAPIServerDNSName 経由) が正しくルーティングされず、共有 Ingress を使用するプラットフォームで KubeAPIExternalName 機能が動作しませんでした。

    このリリースでは、共有 Ingress コントローラーに HostedCluster.Spec.KubeAPIServerDNSName の処理が追加されました。ホステッドクラスターがカスタム kube-apiserver DNS 名を指定すると、コントローラーはトラフィックを kube-apiserver サービスに送信するルートを自動的に作成するようになりました。その結果、カスタム kube-apiserver DNS 名宛のトラフィックが共有 Ingress コントローラーによって正しくルーティングされるようになり、共有 Ingress を使用するプラットフォームで KubeAPIExternalName 機能が動作します。(OCPBUGS-57790)

1.1.3. 既知の問題

  • アノテーションと ManagedCluster リソース名が一致しない場合、multicluster engine for Kubernetes Operator コンソールにはクラスターの状態が Pending import として表示されます。このようなクラスターは、multicluster engine Operator で使用できません。アノテーションがなく、ManagedCluster 名が HostedCluster リソースの Infra-ID 値と一致しない場合も、同じ問題が発生します。
  • multicluster engine for Kubernetes Operator コンソールを使用して、既存のホステッドクラスターに新しいノードプールを追加すると、オプションのリストに同じバージョンの OpenShift Container Platform が複数回表示される場合があります。必要なバージョンの一覧で任意のインスタンスを選択できます。
  • ノードプールが 0 ワーカーにスケールダウンされても、コンソールのホストのリストには、Ready 状態のノードが表示されます。ノードの数は、次の 2 つの方法で確認できます。

    • コンソールでノードプールに移動し、ノードが 0 であることを確認します。
    • コマンドラインインターフェイスで、以下のコマンドを実行します。

      • 次のコマンドを実行して、ノードプールにあるノード数が 0 個であることを確認します。

        $ oc get nodepool -A
        Copy to Clipboard Toggle word wrap
      • 次のコマンドを実行して、クラスター内にあるノード数が 0 個であることを確認します。

        $ oc get nodes --kubeconfig
        Copy to Clipboard Toggle word wrap
      • 次のコマンドを実行して、クラスターにバインドされているエージェント数が 0 と報告されていることを確認します。

        $ oc get agents -A
        Copy to Clipboard Toggle word wrap
  • デュアルスタックネットワークを使用する環境でホステッドクラスターを作成すると、ContainerCreating 状態のままになっている Pod が発生する可能性があります。この問題は、DNS Pod が DNS 解決に必要な metrics-tls シークレットを openshift-service-ca-operator リソースが生成できないために発生します。その結果、Pod は Kubernetes API サーバーを解決できません。この問題を解決するには、デュアルスタックネットワークの DNS サーバー設定を行います。
  • ホステッドクラスターをそのマネージドクラスターと同じ namespace に作成した場合、マネージドホステッドクラスターをデタッチすると、ホステッドクラスターが含まれるマネージドクラスター namespace 内のすべてが削除されます。次の状況では、マネージドクラスターと同じ namespace にホステッドクラスターが作成される可能性があります。

    • デフォルトのホステッドクラスターのクラスター namespace を使用し、multicluster engine for Kubernetes Operator のコンソールを介して Agent プラットフォーム上にホステッドクラスターを作成した場合。
    • ホステッドクラスターの namespace をホステッドクラスターの名前と同じになるよう指定して、コマンドラインインターフェイスまたは API を介してホステッドクラスターを作成した場合。
  • コンソールまたは API を使用して、ホステッドクラスターの spec.services.servicePublishingStrategy.nodePort.address フィールドに IPv6 アドレスを指定する場合、8 ヘクステットの完全な IPv6 アドレスが必要です。たとえば、2620:52:0:1306::30 ではなく、2620:52:0:1306:0:0:0:30 を指定する必要があります。

1.1.4. 一般提供とテクノロジープレビュー機能

現在、このリリースに含まれる機能にはテクノロジープレビューのものがあります。これらの実験的機能は、実稼働環境での使用を目的としていません。これらの機能のサポート範囲の詳細は、Red Hat カスタマーポータルの テクノロジープレビュー機能のサポート範囲 を参照してください。

重要

IBM Power および IBM Z の場合、次の例外が適用されます。

  • バージョン 4.20 以降では、64 ビット x86 アーキテクチャーまたは s390x アーキテクチャーをベースとするマシンタイプでコントロールプレーンを実行し、IBM Power または IBM Z でノードプールを実行する必要があります。
  • バージョン 4.19 以前では、64 ビット x86 アーキテクチャーをベースとするマシンタイプでコントロールプレーンを実行し、IBM Power または IBM Z でノードプールを実行する必要があります。
Expand
表1.1 Hosted Control Plane GA および TP トラッカー
機能4.184.194.20

非ベアメタルエージェントマシンを使用した OpenShift Container Platform の Hosted Control Plane

テクノロジープレビュー

テクノロジープレビュー

テクノロジープレビュー

RHOSP 上の OpenShift Container Platform の Hosted Control Plane

開発者プレビュー

テクノロジープレビュー

テクノロジープレビュー

カスタムの taint と toleration

テクノロジープレビュー

テクノロジープレビュー

テクノロジープレビュー

OpenShift Virtualization の Hosted Control Plane 上の NVIDIA GPU デバイス

テクノロジープレビュー

テクノロジープレビュー

テクノロジープレビュー

非接続環境の IBM Z の Hosted Control Plane

テクノロジープレビュー

テクノロジープレビュー

一般提供

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat