※本記事は OpenShift Virtualization アドベントカレンダーの 17日目の記事です。
こんにちは、Red Hat のソリューションアーキテクトの青柳萌里(Techcat)です。
最近VMware製品からOpenShift Virtualizationへ移行したいというお声をお客様からよくいただきます。 一方で2つの製品は設計思想が異なるため、少々用語が異なるのも事実。
そこで、今回はVMware管理者向けにOpenShiftの用語を解説した、下記のRed Hatの英語の記事を抄訳+ローカライズしてご紹介したいと思います。 よろしければ辞書的にご利用いただければと思います。
こちらの記事の翻訳につきましては元VMWare認定トレーナーでもある坂井大和さん(@lab8010)とOpenShift SSPである山川達也さんに監修いただきました。お忙しい中、本当にありがとうございます!心から御礼を申し上げます。 (また社内確認や翻訳の確認をいただいた皆様、本当にありがとうございました。)
リンクについては日本語版がご利用いただけるものは日本語ドキュメントへのリンクを、英語版のみの場合は英語版ドキュメントへのリンクを貼っています。
ドキュメントのバージョンは4.18を基本としておりますが、一部過去のバージョンのドキュメントでしか説明のないものは過去のバージョンのドキュメントへのリンクを記載させていただいております。(その場合参考程度にご覧いただけますと幸いです。)また「日々の運用で発生するタスク」については項目冒頭に記載のある通り、4.20を前提としたものになっています。
タイトル:VMware管理者向けOpenShift Virtualizationざっくりガイド
学習 • 8 項目 • 所用時間1 時間:
目的:VMware vSphereの経験を持つエンジニアが、Red Hat OpenShiftとRed Hat OpenShift Virtualizationの機能を使いこなすための学習ガイドです。
内容:主にVMware vSphere 8.0以上の機能とRed Hat OpenShift 4.18の機能を比較したガイド。
ストレージ
ストレージ機能マッピング
| 機能 | VMware | OpenShift |
|---|---|---|
| 仮想ディスクの保存場所 | データストア | PersistentVolumeClaim/PersistentVolume |
| ポリシーベースのストレージ管理 | vVols, Storage Policy Based Management (SPBM) | ストレージクラス(Storage Class) |
| 無停止VMストレージ移行 | Storage vMotion | ストレージライブマイグレーション(Storage live migration) |
| ストレージのアベイラビリティ | vSAN (vVols), NFS, SAN (Fiber Channel or iSCSi), Raw Device Mapping | VMのストレージを管理するための枠組みである、PersistentVolume (PV) および PersistentVolumeClaim (PVC) 。 様々なストレージバックエンドまたはSoftware Defined Storageソリューションとのシームレスな統合を可能にする枠組みである、Container Storage Interface (CSI)。 |
| レガシーストレージアレイへのアクセス | すべての主要ストレージベンダーと互換性あり | すべての主要ストレージベンダーがCSI準拠ドライバーを提供 |
| ストレージ高速クローン | 対応、VAAI経由。 | 対応、CSIドライバー経由 |
| ディスクサイズ変更 | 対応 | 対応 |
| ディスク/VMスナップショット(※1) | 対応 | 対応。VMスナップショットを使用したバックアップとリストア。 |
| ストレージ分散リソーススケジューラ (Storage DRS) | 対応 | 該当なし |
※1 補足情報:OpenShiftのスナップショット機能はディスクのみのスナップショット(正確にはストレージのスナップショットをキックしている)であり、メモリレベルのスナップショットは未対応。
メニューの対応表
| OpenShift Virtualization メニュー項目 | VMware での相当機能 | 説明 |
|---|---|---|
| Data Foundation (OpenShift Data Foundation ストレージとそのコンソールプラグインが必要) | vSAN または VMFS ファイルシステムとしてセットアップされたローカル RAID ディスク | Web コンソールで OpenShift Data Foundation ストレージを管理するためのエントリポイント |
| Object Storage (OpenShift Data Foundation ストレージとそのコンソールプラグインが必要) | 該当なし | ポリシー、バケット、クレーム、レプリケーションなどのオブジェクトストレージの設定と管理 |
| PersistentVolumes | vVol または VMDK のリスト | 静的または動的にプロビジョニングされたファイルおよびブロックベースの Persistent Volume (PV) を管理し、トラブルシューティングします。各 PV は、既存のストレージプロバイダーのいずれかによってバックアップされる単一のストレージボリュームを表します。 |
| PersistentVolumesClaims | 該当なし | ストレージリクエスト、それらの PV へのバインド、およびワークロード (コンテナと VM) への割り当てを管理し、トラブルシューティングします。PVC は、PV がどのようにバインドされるか、およびそのライフサイクルの特性も定義します。 |
| StorageClasses | ストレージポリシー | クラスタに統合されたストレージプロバイダーのクラスを管理します。各ストレージクラスは、動的ストレージリクエストをストレージプロバイダーにマップし、クラスタ管理者が決定したプロビジョニングプロパティを定義するプロファイルです。 |
| VolumeSnapshot | 仮想マシンストレージスナップショット | ボリュームスナップショットとリストアリクエストの管理およびトラブルシューティング |
| VolumeSnapshotClasses | 該当なし | クラスタに統合されたスナップショットプロバイダーのクラスを管理します。各スナップショットクラスは、スナップショットリクエストをスナップショットプロバイダーにマップし、クラスタ管理者が決定したスナップショット設定プロパティを定義するプロファイルです。 |
| VolumeSnapshotContents | 該当なし | 既存のボリュームスナップショットの管理およびトラブルシューティング。各スナップショットは、統合されたスナップショットプロバイダーによってバックアップされます。|ボリュームスナップショットコンテンツはPersistent Volumeに似た概念となります。(※1) |
※1 Persistent Volume ClaimとPersistent Volumeの関係性、VolumeSnapshotとVolumeSnapshotContentsの関係性が似ているということと思われる。
ネットワーク
ネットワーク機能マッピング
| 機能 | VMware | OpenShift |
|---|---|---|
| ホストネットワークの構成と管理 | vSwitchによるホストごとの設定、またはDistributed Virtual Switch (DvSwitch)による単一管理 | NMstate Operator および Multus |
| Software-defined networking: VM間通信の保護/制限/制御 | 分散ファイアウォールを活用したNSXのマイクロセグメンテーションやQinQをはじめとした様々な機能 | OpenShift SDNはOVN (Open Virtual Networking) により堅牢なネットワークソリューションを提供します。オーバーレイベースのネットワークはGENEVE (Generic Network Virtualization Encapsulation) を使用し、トンネルを介してVM間通信を可能にします ・IPアドレス管理 (IPAM) の割り当て ・ロードバランサーによるサービスの公開 ・OVNアクセスコントロールリスト (ACL) によるネットワークポリシー ・IPv4/IPv6デュアルスタッククラスタのサポート ・きめ細かなクラスタEgressトラフィック制御 ・ハードウェアオフロード、マイクロセグメンテーション、セカンダリネットワーク、OVN IGMPスヌーピングとリレーを使用したIPマルチキャストなどの高度なネットワーク機能 User Defined Networks (UDN) の概要 User Defined Networks (UDN) は、ネットワークを使用してnamespaceをネイティブに分離します。これにより、Podは「同一namaespace内の他のPodとのみ」通信が可能になります。 レイヤー2 または レイヤー3 のネットワークタイプを持つプライマリネットワークとして構成することが可能です。 複雑になりがちな NetworkPolicy(ネットワークポリシー)の記述・管理を軽減します。 異なるnamespaceやクラスター間での IPサブネットの再利用(IPアドレスの重複利用)が可能になります。 |
| PodからVM、VMからPodへの接続性 | PodとVM間のトラフィックは、Kubernetes Ingressまたは同様のメカニズム(例:NodePort)を経由する必要がある | VMとPodは、SDNまたは同じUDNに接続されている場合、ネイティブピアであり、すべての機能が両方で等しく利用可能 |
| ネットワークオブザービリティ | サードパーティソリューションへのvSwitchポートミラーリング、およびセキュリティ目的のNSXトラフィック分析 | Network Observability Operator |
メニューの対応表
| OpenShift Virtualization メニュー項目 | VMware での相当機能 | 説明 |
|---|---|---|
| NodeNetworkConfigurationPolicy (NMState Operator が必要) | vSwitch/DvSwitch | クラスタノードで望まれるネットワーク設定 |
| NodeNetworkState (NMstate Operator が必要) | ESX/vCenter での v/DvSwitch ビューに類似 | ノード上のネットワークステータス |
| Service | 該当なし | SDN内部での自己検出と自動DNSを備えたLayer4ロードバランシング設定。MetalLBやクラウド提供のロードバランシングのようなIngress LBソリューションと組み合わせることで、クラスタ外部にサービスを公開可能。 |
| Routes and Ingresses | NSX ロードバランサー | Routes: Webサービスをクラスタ外部に公開するためのアプリケーションロードバランシング設定 Ingresses: 一意のホスト名でアプリケーションにアクセスすることを可能にするリソース |
| NetworkPolicy | NSX-T ファイアウォール(※1) (マイクロセグメンテーションルール) | アプリケーション中心のネットワークポリシーを管理 |
| NetworkAttachmentDefinitions | ポートグループ | VLAN、プライベートネットワークなど、ネットワークへの仮想マシンの接続性 |
| UserDefinedNetwork | NSX-T オーバーレイセグメント(※2) | オーバーレイネットワークセグメントの作成と管理 |
※1,2 NSX-Tという製品は現状存在しません。現在存在するのはNSXとなります。
コンピュート
コンピュート機能マッピング
| 機能 | VMware | OpenShift |
|---|---|---|
| リソースバランシング | Distributed Resource Scheduler | Descheduler (デスケジューラ) の Pod 待避 (eviction) ポリシー |
| ホスト / VM メトリクス | vCenter, Aria Operations | OpenShift MetricsとMonitoring, Red Hat Advanced Cluster Management |
| コンピュートライブマイグレーション | vMotion | ライブマイグレーション(Live Migration ) |
| CPU オーバーコミット | 対応 | 対応 |
| メモリオーバーコミット手法 | Ballooning (バルーニング) および Transparent Page Sharing (TPS), スワップ | KSM (Kernel Same-page Merging) および free page reporting |
| 仮想マシンの(共同)配置制約 | VM-VM間およびVM-ホスト間のアフィニティルール | VM、Pod、ホストに対する (アンチ) アフィニティルール |
| ノード障害 | vCenterがなくても、ノード障害の検出とVMの再スケジュールが15〜30秒以内に実行される | フェンシングエージェント環境を通じてサポートされます。HA設定についてはKCSを参照してください。 |
| 動的再構成 | CPU、メモリ、ディスク、ネットワーク、およびいくつかの追加ハードウェアのホットアド/リムーブと再構成をサポート | ストレージ、CPU、SR-IOV、Bridge Network、およびメモリのホットアドをサポート |
| コンピュートアクセラレーション | CPUのPCIパススルー、vGPUをサポート | GPU、汎用PCIパススルー、CPUパススルーをサポート、(NVIDIA) vGPUをサポート |
| テンプレート管理 | テンプレートVM、OVA/OVFデプロイメント、コンテンツライブラリにより、簡素化されたプロセスでVMをプロビジョニング可能 | ブートソース、VMテンプレート、インスタンスタイプを管理するためのカタログ。 特定のブートソースに関連付けられている場合、VMテンプレート、インスタンスタイプ、または宣言的なYAMLで記述したVM定義からVMを作成できます。 |
| VMのエクスポート/インポート | OVFおよびOVAフォーマットを使用したVMのインポートとエクスポート | Migration toolkit for virtualization を使用したOVA/VMのインポートとエクスポート (エクスポート例)。 |
メニューの対応表
| OpenShift Virtualization メニュー項目 | VMware での相当機能 | 説明 |
|---|---|---|
| Nodes | Host and Cluster > Host | クラスタ内の現在のノードと、それらの設定およびランタイム詳細を一覧表示し、トラブルシューティングします。 |
| NodeHealthChecks | Config > vSphere DRS | さまざまなノード状態に対する修復アクションを設定します。「Not Ready」または「Unknown」状態のノードをソフトリブートする、BMC APIからハードリブートする、リブート修復が失敗した後にノードの再インストールを強制するなど、さまざまな修復オペレーターがあります。 |
| Machines (Automation) | 該当なし | 手動または自動スケーリングを使用して、OpenShift Machine APIオペレーターを介してインストールおよび自動化されたノードのメタデータを一覧表示し、トラブルシューティングします。 |
| MachineSet (Automation) | 該当なし | 手動または自動スケーリングを使用して、OpenShift Machine APIオペレーターを介してインストールおよび自動化されたノードのメタデータを一覧表示し、トラブルシューティングします。 |
| MachineSet (Automation) | ホストプロファイル | インフラストラクチャを手動または自動でスケーリングするための自動化プロファイルを設定します。スケールされたMachineSetはMachineオブジェクトを作成し、利用可能なベアメタルホストを割り当て、MachineSetで定義されたインストールと設定をトリガーします。 |
| MachineAutoscalers (Automation) | 該当なし | MachineSetをスケーリングするための自動スケーリングルールを定義します。 |
| MachineHealthChecks | 該当なし | 望ましい修復がMachineを削除すること(これによりノードの新規インストールがトリガーされる)である場合の、NodeHealthChecksの代替メカニズム。クラウドプロバイダーでは、ノードの削除と新しいベアメタルノードの作成が実行されます。 |
| Bare Metal Host (Automation) | 該当なし | クラスタに追加されたベアメタルサーバーを一覧表示し、操作します。ベアメタルホストには、手動でインストールされたサーバーと、MachineSetスケーリングによって利用可能になりインストールされたサーバーが含まれます。BMC APIと統合することで、完全なサーバーライフサイクルが可能になります。 |
| MachineConfigs (Automation) | ホストプロファイル | 宣言的なホスト設定を管理し、マシン プールごとに一貫した設定グループを確保し、設定のドリフトを防ぎます。 |
| MachineConfigPools (Automation) | ホストプロファイル | ロールに基づいてノードにMachineConfigオブジェクトを割り当てる、さまざまなホスト設定プールを管理します。MachineConfigPoolsは、プラットフォームの更新/アップグレードを展開する際に、ノードをセグメント化し、異なるHAポリシーを定義することも可能にします。 |
| Hardware Devices | 該当なし | 該当なし (特殊ハードウェアの有効化) |
オブザーバビリティ
オブザーバビリティ機能マッピング
| 機能 | VMware | OpenShift |
|---|---|---|
| トリガーに基づく通知/アラーム | カスタムアラームは、イベント、条件、または状態トリガーに関するルール定義を提供し、重大度レベルを設定できます。 | OpenShift Observabilityはルール定義を提供します。重大度レベルを設定でき、レベルごとに個別のアクションを設定できます。 |
| 多様な通知ターゲット | カスタムアラームは、電子メール、SNMPトラップの設定、およびスクリプトの実行を提供します。 | Alertmanagerは、電子メール、Webhook、およびSlack、PagerDuty、MSTeamsを含むいくつかのサードパーティアプリのデフォルトハンドラを提供します。 |
| イベントロギング | vmware-n.logというログファイルへのロギングを有効にするためのVMごとの詳細オプションを提供します。 | Vector/Loki/Logging Console プラグインは、従来のElasticsearch/Fluentd/Kibanaスタックを置き換え、より優れた洞察とオブザーバビリティを提供します。Loggingのドキュメントも参照。 |
| ログ転送 | ホストのログはvCenterから別の場所/サードパーティのロギングアプリに送信できます。 | Vectorのマルチログフォワーダー機能は、複数のRed Hatおよびサードパーティのロギングをサポートします。クラスターロギングのサポートのドキュメントも参照。 |
メニューの対応表
| OpenShift Virtualization メニュー項目 | VMware での相当機能 | 説明 |
|---|---|---|
| Alerting | タスクとイベント | イベントのリストを表示します。 |
| Metrics | タスクとイベント | VMI/Podのパフォーマンスデータを表示します。 |
| Dashboards | パフォーマンス > 概要/詳細 | パフォーマンスダッシュボード。 |
| Target | アカウント/パスワードによる統合アクセス | 監視可能なサービスのリスト |
仮想マシンコンポーネント
仮想マシンコンポーネントマッピングチャート
| 機能 | VMware | OpenShift |
|---|---|---|
| ゲストエージェント | VMware Tools | QEMUゲストエージェント |
| VMダンプ | VMを右クリック > スナップショット、[仮想マシンのメモリを含める] ボックスにチェック。 | virtctl |
| VMクローン | 対応 | 対応 |
| タグとカスタム属性 | タグとカスタム属性 | ラベル (Labels) |
| VM NIC | 1000, e1000e, VMXNET 2 (Enhanced), VMXNET 3, Flexible, Vlance, PVRDMA, SR-IOV パススルー | VirtIO、e1000e |
| SCSIコントローラ | LSI Logic SAS, BUSLogic Parallel, LSI Logic SAS, VMware Paravirtual SCSI | SCSI, VirtIO, SATA |
日々の運用で発生するタスク
※この項目のみOpenShift4.20を前提としています。
インフラストラクチャ管理タスク
| タスク | デモ |
|---|---|
| Red Hat Hybrid Cloud Console のインストール、設定、および管理 | Assisted Installer ツールを使用した Single Node OpenShift のデプロイ。 Assisted Installer を使用したOpenShift Virtualizationクラスタのインストール(英語。) Assisted Installer を使用した OpenShift Virtualization のデプロイ。 OpenShift での Kube descheduler インスタンスの設定とデプロイ(英語)。 |
| 仮想化環境の定期的なメンテナンスとアップグレードの実行 | メンテナンスモードへの移行によるノードメンテナンス |
| 仮想マシン (VM)、テンプレート、スナップショット、およびリソース割り当ての管理。 | ACMを使用したOpenShift上のVMの管理と監視 |
バックアップおよびDR(災害復旧)タスク
| タスク | デモ |
|---|---|
| VM バックアップおよびリカバリソリューションの実装と管理 | Trilio を使用した Red Hat OpenShift のデータ保護(英語) Red Hat OpenShift Virtualization向けPortworxソリューション(英語) Veritas NetBackup を使用した VM のバックアップとリストア(英語) バックアップおよびリカバリーソリューションの詳細については、Partner Ecosystem Catalog をご確認ください。 |
| 仮想化環境向けのDR(災害復旧)計画の策定とテスト。 | RHACM と ODF を使用した VM のRegional Disaster Recovery(英語) |
セキュリティおよびコンプライアンスタスク
| タスク | デモ |
|---|---|
| パッチと更新の適用 | Red Hat Ansible による仮想インフラストラクチャの自動化(英語) |
自動化およびスクリプティングのタスク
| タスク | デモ |
|---|---|
| OpenShift CLI、PowerShell、または Python を使用したタスクの自動化 | AAP を使用した OpenShift VM のインベントリ管理(英語) |
| (該当する場合は)Infrastructure as Code (IaC) の管理 | AAP を使用した VM の管理と監視(英語) Red Hat OpenShift Service on AWS での GitOps を使用したVM 作成(英語) |
その他参考に利用できるリスト:
OpenShift用語集(最新リリース) 1.5. OpenShift Container Platform のノードの一般用語集 | ノード | OpenShift Container Platform | 4.20 | Red Hat Documentation