OpenShift 仮想化の導入計画
仮想プライベートクラウド 4.17 その後 ベアメタルワーカーノードのみ RHCOSのみ
Red Hat OpenShift on IBM Cloud に OpenShift Virtualization を導入する前に、前提条件を確認し、クラスタ構成、ストレージソリュー ション、およびネットワーキングのセットアップを計画します。
OpenShift 仮想化サービスは、ストレージ、ネットワーク、オペレーターの自動設定により、数時間ではなく数分で利用開始できる最速の選択肢です。
前提条件
OpenShift Virtualizationを導入するには、適切なIAM権限を持つ IBM Cloud アカウントが必要です。 具体的には、 Kubernetes Service には「 Operator 」ロールが必要であり、VPC Infrastructure Servicesには「 Editor 」または 「Administrator」 ロールのいずれかが必要です。
VPC インフラストラクチャには、希望するゾーンにサブネットを持つ VPC と、ベアメタルワーカーノード用に十分なクォータが含まれている必要があります。 OpenShift クラスターは、バージョン 4.17 以降であり、RHCOSを搭載したVPCベアメタルワーカー上で実行されている必要があります。 クラスターではOVN- Kubernetes CNIを使用する必要があり、アウトバウンドトラフィックの保護は無効にする必要があります。
クラスタ構成の計画
ベアメタルフレーバーの選択
ワークロード要件に基づいてベアメタルフレーバーを選択します。 サポートされるフレーバーの完全なリストについては、 ベアメタルのフレーバーを 参照のこと。
OpenShift Data Foundation (ODF) を使用する場合は、名前に「 d 」という接尾辞が付く、または「 3d 」という名称のベアメタル・フレーバーを選択してください。これらは NVMe ローカル・ストレージを含んでいます。 ODFは最適なパフォーマンスを得るためにローカルディスクを必要とする。 VPC( File Storage )については、サポートされているベアメタル・フレーバーであればどれでも使用できますが、全体的なパフォーマンス向上のため、ローカルストレージを備えたフレーバーの使用が推奨されます。
ベアメタル環境のタイプをワークロードの種類に合わせて選択してください。 高性能なワークロードには、ローカルストレージとODFを備えたベアメタル・フレーバーを選択してください。 メモリ集約型のワークロードは、 mx シリーズのベアメタルインスタンスで最高のパフォーマンスを発揮しますが、演算集約型のワークロードには、 cx シリーズのインスタンスが適しています。 ワークロードのバランスを考慮する場合は、 bx シリーズのベアメタルプランを選択してください。 コストの最適化を最優先とする場合は、VPC( File Storage )のより小規模なベアメタル・フレーバーをご検討ください。
ワーカープールアーキテクチャ
コスト最適化のためには、 VM のワークロード用にベアメタルプール、インフラストラクチャコンポーネント用にVSIプールを組み合わせた2プール構成を検討してください。 あるいは、すべてのコンポーネントをベアメタルノード上で実行するシングルプール構成を採用することも可能です。 この方法はより単純ですが、コストが高くなります。
仮想化ワークロードには、シングルゾーン展開が推奨されます。これは、 VM ワークロードのストレージレイテンシを最小限に抑え、VNIの設定を簡素化(VNIはゾーン固有であるため)、およびゾーン間のストレージレプリケーションにかかるオーバーヘッドを削減できるためです。 マルチゾーン展開により、より高い可用性が確保されます。また、ODFではHAを実現するために3つ以上のゾーンが必要です。 ただし、ゾーン間のストレージレプリケーションは VM のパフォーマンスに影響を与える可能性があるため、VNIを使用する場合はゾーン間の VM の移行は避けるべきです。
収納ソリューションの計画
OpenShift 仮想化には、 ReadWriteMany (RWX)アクセスモードをサポートするストレージが必要である。 ワークロード要件に基づいてストレージ・ソリューションを選択します。
保管決定マトリックス
| ユース・ケース | OpenShift Data Foundation | VPC File Storage |
|---|---|---|
| 高可用性(マルチゾーン) | 推奨 | 推奨されない |
| 高負荷の読み書き | 推奨 | 高IOPSクラスであれば可能です |
| 読み書きが少ない、または非生産的 | コスト高 | 推奨 |
| スナップショットとクローンのサポート | サポート対象 | サポートされていません |
| ライブ・マイグレーション | サポート対象 | サポート対象 |
| コスト | 上限 | 下限 |
ストレージ・オプション
- OpenShift データ基盤(ODF)
- ODFは、高いI/O要件が求められる本番環境や、スナップショットやクローン機能が必要な場合に最適です。 ODFでは、ローカルのNVMeストレージを備えたベアメタル環境、少なくとも3ノード、および高可用性を確保するための3つ以上のゾーンが必要です。 詳しくは、ODF についてを参照してください。
- VPC File Storage
- VPCファイルストレージは、開発環境、コスト重視の導入、およびI/O要件が低~中程度のワークロードに最適です。 VPC File Storage では、どのベアメタル環境でも利用可能です。また、VPC File CSI ドライバーが必要です。 なお、VPCの File Storage では、スナップショットやクローン作成はサポートされていません。 最高のパフォーマンスを得るには、
ibmc-vpc-file-1000-iopsまたはibmc-vpc-file-6000-iopsのストレージクラスを使用してください。 詳細については、「 VPC File Storage プロファイル 」を参照してください。
ネットワーク設定の計画
ネットワーキング・オプション
OpenShift 4.17 また、後ほど、デフォルトのPodネットワーク、サービス、ルート、およびVPCロードバランサーを利用する基本的なネットワーク機能もサポートされます。 より高度なネットワーク機能を利用するため、 OpenShift ( 4.20 以降)では、仮想ネットワークインターフェース(VNI)がサポートされています。これにより、VPCへの直接接続、 フローティングIP、および移行時のネットワーク設定の維持が可能になります。 VNIには、NMStateオペレーター、OVSブリッジ、UDN、およびOVN- Kubernetes CNIが必要です。 VNIはゾーンごとに異なる点にご注意ください。 VNI機能は、 OpenShift で一般提供されています。 4.20
VNI機能は一般的に利用できる。 ごく一部のアカウントについては、依然として利用が制限されている可能性があります。アクセスが必要な場合は、 IBM Cloud のサポートまでご連絡ください。
NMStateオペレータのインストールとVNIの設定については、 OpenShift Virtualizationの仮想ネットワーク・インターフェイスの 管理を参照してください。
Node プレースメント
コスト最適化のため、ノードセレクタやテインツおよびトレラランスを使用して、 KubeVirt オペレーター、CDI、コントローラーなどのインフラストラクチャコンポーネントをVSIノードにデプロイしてください。 最高のパフォーマンスを得るために、ベアメタルノードに VM のワークロードをデプロイし、ノードセレクタを使用してベアメタルノードをターゲットにします。
効果的な配置戦略としては、 baremetal-pool と vsi-pool のワーカープールを作成し、ノードに適切なラベルを付けることが挙げられます。 ベアメタルノードには「 node-role.kubernetes.io/worker-vm=true 」というラベルを、VSIノードには「 node-role.kubernetes.io/infra=true 」というラベルを付けます。
最後に、この分離を確実に実施するために、ノード配置ルールを設定した HyperConverged コントロール・リソース(CR)を構成します。
サイジングと最適化
クラスタの最小構成には、単一のゾーン内に3つのベアメタルノードが必要です。 本番環境への導入においては、3台以上のベアメタルノードに加え、インフラストラクチャ用に追加のVSIノードを配置したシングルゾーン構成が推奨されます。 高可用性が必要な場合は、3つのゾーンにまたがり、ゾーンごとに3台以上のベアメタルノードを展開するとともに、インフラストラクチャ用に追加のVSIノードを導入してください。
VM のリソースを計画する際は、システムのオーバーヘッドを考慮して、ノードあたり約10個の vCPU と32 GBのRAMを確保してください。 たとえば、96ノードの vCPU は、VM向けに約86 vCPU を提供します。
コストを最適化するには、本番環境以外ではVPC( File Storage )を利用し、インフラストラクチャコンポーネントをVSI(仮想ストレージインスタンス)にデプロイし、 VM リソースを適切なサイズに調整し、適切なストレージIOPSクラスを選択し、長期利用の場合はリザーブド容量の利用を検討してください。 詳細については、「 クラスタのコストについて 」を参照してください。
セキュリティ対策として、セキュリティグループとネットワークポリシーを使用してトラフィックを制御し、保存データの保護のためにストレージ暗号化を有効にし、 VM の管理にはRBACを設定してアクセスを制御し、認証情報や証明書などの機密データには Secrets Manager を使用してください。
次のステップ
配備を計画した後
- OpenShift 仮想化用ストレージのセットアップ
- OpenShift Virtualization Operator をインストールします ( OpenShift Virtualization Service では不要です。オペレーターはあらかじめインストールされています)
- 仮想ネットワークインターフェースの設定(オプション) (Virtualization Service を使用する場合は、NMState オペレータのインストールおよび NNCP リソースの作成手順をスキップしてください)