第1章 Hosted Control Plane のリリースノート
リリースノートには、新機能、非推奨機能、変更、既知の問題に関する情報が記載されています。
1.1. OpenShift Container Platform 4.17 用の Hosted Control Plane のリリースノート
このリリースでは、OpenShift Container Platform 4.17 用の Hosted Control Plane が利用可能になりました。OpenShift Container Platform 4.17 用の Hosted Control Plane は、multicluster engine for Kubernetes Operator バージョン 2.7 をサポートしています。
1.1.1. 新機能および機能拡張
今回のリリースでは、以下の概念に関連する拡張機能が追加されました。
1.1.1.1. カスタムの taint と toleration (テクノロジープレビュー)
OpenShift Virtualization の Hosted Control Plane では、hcp
CLI -tolerations
引数を使用するか、hc.Spec.Tolerations
API ファイルを使用して、Hosted Control Plane Pod に toleration を適用できるようになりました。この機能は、テクノロジープレビューとしてのみ利用できます。詳細は、カスタムの taint および toleration を参照してください。
1.1.1.2. OpenShift Virtualization における NVIDIA GPU デバイスのサポート (テクノロジープレビュー)
OpenShift Virtualization の Hosted Control Plane では、1 つ以上の NVIDIA グラフィックスプロセッシングユニット (GPU) デバイスをノードプールにアタッチできます。この機能は、テクノロジープレビューとしてのみ利用できます。詳細は、hcp CLI を使用して NVIDIA GPU デバイスをアタッチする および NodePool リソースを使用して NVIDIA GPU デバイスをアタッチする を参照してください。
1.1.1.3. AWS におけるテナンシーのサポート
AWS でホステッドクラスターを作成するときに、EC2 インスタンスを共有ハードウェアで実行するか、シングルテナントハードウェアで実行するかを指定できます。詳細は、AWS 上にホステッドクラスターを作成する を参照してください。
1.1.1.4. ホステッドクラスターでの OpenShift Container Platform バージョンのサポート
ホステッドクラスターに、サポートされているさまざまな OpenShift Container Platform バージョンをデプロイできます。詳細は、ホステッドクラスターでサポートされている OpenShift Container Platform バージョン を参照してください。
1.1.1.5. 非接続環境における OpenShift Virtualization の Hosted Control Plane の一般提供を開始
このリリースでは、非接続環境における OpenShift Virtualization の Hosted Control Plane が一般提供されます。詳細は、非接続環境で OpenShift Virtualization に Hosted Control Plane をデプロイする を参照してください。
1.1.1.6. AWS における ARM64 OpenShift Container Platform クラスターの Hosted Control Plane の一般提供を開始
このリリースでは、AWS における ARM64 OpenShift Container Platform クラスターの Hosted Control Plane が一般提供されます。詳細は、ARM64 アーキテクチャーでのホステッドクラスターの実行 を参照してください。
1.1.1.7. IBM Z における Hosted Control Plane の一般提供を開始
このリリースでは、IBM Z 上の Hosted Control Plane が一般提供されます。詳細は、IBM Z への Hosted Control Plane のデプロイ を参照してください。
1.1.1.8. IBM Power における Hosted Control Plane の一般提供を開始
このリリースでは、IBM Power 上の Hosted Control Plane が一般提供されます。詳細は、IBM Power への Hosted Control Plane のデプロイ を参照してください。
1.1.2. バグ修正
-
以前は、ホストされたクラスタープロキシーが設定され、HTTP または HTTPS エンドポイントを持つアイデンティティープロバイダー (IDP) が使用されていた場合、プロキシー経由で送信される前に IDP のホスト名が解決されませんでした。その結果、データプレーンでのみ解決できるホスト名は IDP では解決できませんでした。この更新により、IPD トラフィックを
konnectivity
トンネル経由で送信する前に DNS ルックアップが実行されます。その結果、データプレーンでのみ解決できるホスト名を持つ IDP は、Control Plane Operator によって検証できるようになります。(OCPBUGS-41371) -
以前は、ホストされたクラスターの
controllerAvailabilityPolicy
がSingleReplica
に設定されていた場合、ネットワークコンポーネント上のpodAntiAffinity
によってコンポーネントの可用性がブロックされていました。このリリースにより、この問題は解決されました。(OCPBUGS-39313) -
以前は、ホストされたクラスターイメージ設定で指定された
AddedTrustedCA
は、image-registry-Operator
によって期待されたとおりにopenshift-config
namespace に調整されず、コンポーネントは利用できませんでした。このリリースにより、この問題は解決されました。(OCPBUGS-39225) - 以前は、コアオペレーティングシステムの変更により、Red Hat HyperShift の定期的な適合ジョブが失敗していました。この失敗したジョブにより、OpenShift API のデプロイメントが失敗していました。このリリースでは、更新時に 1 つのファイルがコピーされるのではなく、個々の信頼済み認証局 (CA) 証明書が再帰的にコピーされるため、定期的な適合ジョブが成功し、OpenShift API が期待どおりに実行されます。(OCPBUGS-38941)
-
以前は、ホストされたクラスター内の Konnectivity プロキシーエージェントは常にすべての TCP トラフィックを HTTP/S プロキシー経由で送信していました。また、トラフィックでは解決された IP アドレスのみ受信するため、
NO_PROXY
設定のホスト名も無視されました。その結果、LDAP トラフィックなどのプロキシーされることを意図していないトラフィックが、設定に関係なくプロキシーされました。このリリースでは、プロキシーはソース (コントロールプレーン) で完了し、Konnectivity エージェントのプロキシー設定が削除されました。その結果、LDAP トラフィックなどのプロキシーされることを意図していないトラフィックはプロキシーされなくなります。ホスト名を含むNO_PROXY
設定は尊重されます。(OCPBUGS-38637) -
以前は、
azure-disk-csi-driver-controller
イメージは、registryOverride
を使用するときに適切なオーバーライド値を取得しませんでした。これは、値がazure-disk-csi-driver
データプレーンイメージに伝播されるのを避けるため、意図的に行われたものです。この更新では、別のイメージオーバーライド値を追加することで問題が解決されました。その結果、azure-disk-csi-driver-controller
がregistryOverride
で使用できるようになり、azure-disk-csi-driver
データプレーンイメージに影響を与えなくなりました。(OCPBUGS-38183) - 以前は、プロキシー管理クラスター上で実行されていた Hosted Control Plane 内の AWS クラウドコントローラーマネージャーは、クラウド API 通信にプロキシーを使用しませんでした。このリリースにより、この問題は修正されました。(OCPBUGS-37832)
以前は、ホストされたクラスターのコントロールプレーンで実行される Operator のプロキシーが、データプレーンで実行される konnectivity エージェント Pod のプロキシー設定によって実行されていました。アプリケーションプロトコルに基づいてプロキシーが必要かどうかを区別することはできませんでした。
OpenShift Container Platform との互換性を保つために、HTTPS または HTTP 経由の IDP 通信はプロキシーする必要がありますが、LDAP 通信はプロキシーする必要ありません。このタイプのプロキシーでは、トラフィックが Konnectivity エージェントに到達するまでに宛先 IP アドレスのみ使用可能になるため、ホスト名に依存する
NO_PROXY
エントリーも無視されます。このリリースでは、ホステッドクラスターでのプロキシーはコントロールプレーンで
konnectivity-https-proxy
およびkonnectivity-socks5-proxy
を介して呼び出され、Konnectivity エージェントからのプロキシートラフィックが停止されます。その結果、LDAP サーバー宛のトラフィックはプロキシーされなくなります。その他の HTTPS または HTTPS トラフィックは正しくプロキシーされます。ホスト名を指定すると、NO_PROXY
設定が適用されます。(OCPBUGS-37052)以前は、IDP 通信のプロキシーが Konnectivity エージェントで行われていました。トラフィックが Konnectivity に到達するまでに、そのプロトコルとホスト名が利用できなくなっていました。その結果、OAUTH サーバー Pod のプロキシーが正しく実行されていませんでした。プロキシーを必要とするプロトコル (
http/s
) とプロキシーを必要としないプロトコル (ldap://
) が区別されていませんでした。さらに、HostedCluster.spec.configuration.proxy
仕様で設定されているno_proxy
変数が考慮されませんでした。このリリースでは、OAUTH サーバーの Konnectivity サイドカーでプロキシーを設定することにより、
no_proxy
設定を考慮しながら、トラフィックを適切にルーティングできるようになりました。その結果、ホストされたクラスターにプロキシーが設定されている場合、OAUTH サーバーがアイデンティティープロバイダーと適切に通信できるようになりました。(OCPBUGS-36932)-
以前は、Hosted Cluster Config Operator (HCCO) は、
HostedCluster
オブジェクトからImageContentSources
フィールドを削除した後、ImageDigestMirrorSet
CR (IDMS) を削除しませんでした。その結果、IDMS は、本来は保持されるべきではないにもかかわらず、HostedCluster
オブジェクトに保持されていました。このリリースでは、HCCO はHostedCluster
オブジェクトからの IDMS リソースの削除を管理します。(OCPBUGS-34820) -
以前は、非接続環境に
hostedCluster
をデプロイするには、hypershift.openshift.io/control-plane-operator-image
アノテーションを設定する必要がありました。この更新により、アノテーションは不要になりました。さらに、メタデータインスペクターはホストされた Operator の調整中に期待どおりに機能し、OverrideImages
は期待どおりに設定されます。(OCPBUGS-34734) - 以前は、AWS 上のホストされたクラスターは、VPC のプライマリー CIDR 範囲を活用して、データプレーン上でセキュリティーグループルールを生成していました。その結果、複数の CIDR 範囲を持つ AWS VPC にホストされたクラスターをインストールした場合、生成されたセキュリティーグループルールでは不十分な可能性がありました。この更新により、提供された Machine CIDR 範囲に基づいてセキュリティーグループルールが生成され、この問題が解決されます。(OCPBUGS-34274)
- 以前は、OpenShift Cluster Manager コンテナーには適切な TLS 証明書がありませんでした。その結果、接続されていないデプロイメントではイメージストリームを使用できませんでした。このリリースでは、この問題を解決するために、TLS 証明書が projected ボリュームとして追加されました。(OCPBUGS-31446)
- 以前は、OpenShift Virtualization における multicluster engine for Kubernetes Operator コンソールの一括破棄オプションでは、ホステッドクラスターが破棄されませんでした。このリリースでは、この問題は解決されました。(ACM-10165)
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
次のコマンドを実行して、クラスター内にあるノード数が 0 個であることを確認します。
$ oc get nodes --kubeconfig
次のコマンドを実行して、クラスターにバインドされているエージェント数が 0 と報告されていることを確認します。
$ oc get agents -A
デュアルスタックネットワークを使用する環境でホステッドクラスターを作成すると、次の DNS 関連の問題が発生する可能性があります。
-
service-ca-operator
Pod のCrashLoopBackOff
状態: Pod が Hosted Control Plane 経由で Kubernetes API サーバーに到達しようとすると、kube-system
namespace のデータプレーンプロキシーがリクエストを解決できないため、Pod はサーバーに到達できません。この問題は、HAProxy セットアップでフロントエンドが IP アドレスを使用し、バックエンドが Pod が解決できない DNS 名を使用するために発生します。 -
Pod が
ContainerCreating
状態でスタックする: この問題は、openshift-service-ca-operator
が DNS Pod が DNS 解決に必要とするmetrics-tls
シークレットを生成できないために発生します。その結果、Pod は Kubernetes API サーバーを解決できません。これらの問題を解決するには、デュアルスタックネットワークの DNS サーバー設定を行います。
-
-
エージェントプラットフォームでは、Hosted Control Plane 機能により、エージェントがイグニションのプルに使用するトークンが定期的にローテーションされます。その結果、少し前に作成されたエージェントリソースがある場合、Ignition のプルに失敗する可能性があります。回避策として、エージェント仕様で
IgnitionEndpointTokenReference
プロパティーのシークレットを削除し、その後にエージェントリソースのラベルを追加または変更します。システムは新しいトークンを使用してシークレットを再作成します。 ホステッドクラスターをそのマネージドクラスターと同じ namespace に作成した場合、マネージドホステッドクラスターをデタッチすると、ホステッドクラスターが含まれるマネージドクラスター namespace 内のすべてが削除されます。次の状況では、マネージドクラスターと同じ namespace にホステッドクラスターが作成される可能性があります。
- デフォルトのホステッドクラスターのクラスター namespace を使用し、multicluster engine for Kubernetes Operator を介してエージェントプラットフォーム上にホステッドクラスターを作成した場合。
- ホステッドクラスターの namespace をホステッドクラスターの名前と同じになるよう指定して、コマンドラインインターフェイスまたは API を介してホステッドクラスターを作成した場合。
1.1.4. 一般提供およびテクノロジープレビュー機能
一般提供 (GA) の機能は完全にサポートされており、実稼働での使用に適しています。テクノロジープレビュー (TP) 機能は実験的な機能であり、本番環境での使用を目的としたものではありません。TP 機能の詳細は、Red Hat Customer Portal のテクノロジープレビュー機能のサポート範囲 を参照してください。
IBM Power および IBM Z の場合、コントロールプレーンは 64 ビット x86 アーキテクチャーベースのマシンタイプで実行し、ノードプールは IBM Power または IBM Z で実行する必要があります。
Hosted Control Plane の GA 機能および TP 機能は、次の表を参照してください。
機能 | 4.15 | 4.16 | 4.17 |
---|---|---|---|
Amazon Web Services (AWS) 上の OpenShift Container Platform の Hosted Control Plane | テクノロジープレビュー | 一般提供 | 一般提供 |
ベアメタル上の OpenShift Container Platform の Hosted Control Plane | 一般提供 | 一般提供 | 一般提供 |
OpenShift Virtualization 上の OpenShift Container Platform の Hosted Control Plane | 一般提供 | 一般提供 | 一般提供 |
非ベアメタルエージェントマシンを使用した OpenShift Container Platform の Hosted Control Plane | テクノロジープレビュー | テクノロジープレビュー | テクノロジープレビュー |
Amazon Web Services 上の ARM64 OpenShift Container Platform クラスター用の Hosted Control Plane | テクノロジープレビュー | テクノロジープレビュー | 一般提供 |
IBM Power 上の OpenShift Container Platform の Hosted Control Plane | テクノロジープレビュー | テクノロジープレビュー | 一般提供 |
IBM Z 上の OpenShift Container Platform の Hosted Control Plane | テクノロジープレビュー | テクノロジープレビュー | 一般提供 |
RHOSP 上の OpenShift Container Platform の Hosted Control Plane | 利用不可 | 利用不可 | 開発者プレビュー |