OpenShift Virtualization、コンテナ基盤で仮想マシンを動かす

 
こんにちは、クラウドインフラ全般を担当しているソリューションアーキテクトの伊藤です。
 
OpenShift VirtualizationはRed Hat OpenShift Platform(OCP)上で仮想マシンを動作、管理させるためのコンポーネントになります。
OpenShift VirtualizationはCNCFのサンドボックスプロジェクトであるKubeVirt [1]を元にして開発、提供されており、OpenShiftのWebUIにあるOperatorHubより利用が可能です。

f:id:takitou:20201224183029p:plain

 
 
OpenShift VirtualizationはOCP 4.5 よりGAとなりました。現在提供されている最新のOCPはバージョン4.6ですが、対応するOpenShift Virtualizationは別のバージョン番号で管理されており、それぞれOCP4.5ではOpenShift Virtualization 2.4、OCP4.6ではOpenShift Virtualization 2.5となっております。
 
OpenShift Virtualizationは仮想マシンをKubernetesのカスタムリソースとして扱います。
つまり従来の仮想マシン、仮想インスタンスそのものを扱うOpenStackや仮想マシン管理ソフトウェアとは異なるアプローチで設計されており、
永続ストレージのPV、ネットワーク機能のMultusをはじめ、Service、RouteといったOpenShift、Kubernetesによって提供されるリソースを活用することが可能です。
これによりOpenShift Virtualizationは従来の仮想マシン環境とコンテナ環境をシームレスに接続、移行するのに適したソリューションとなっています。
 
OpenShift Virtualizationコンポーネントのために追加で必要なサブスクリプションはありません、OpenShiftのサブスクリプションをお持ちのかたはどなたでもご利用頂くことが可能です。[2]
 
こちらのTable 1の [ OpenShift Virtualization ]をご確認ください。
 
OpenShift Virtualizationで使用できるゲストOSはRHEL6, 7および8、Windows Server 2012R2, 2016および2019と Windows10になっています。
Multusを介して、複数のNICやSR-IOVを扱う事とボンディングの利用ができます。
 
 

■アーキテクチャ

・仮想マシンはPodとして動作します

f:id:takitou:20201224185221p:plain

・仮想マシンの定義

CRDで仮想マシンを定義します。このCRDはOpenShift VirtualizationのOperator Frameworkが提供します。

f:id:takitou:20201224185248p:plain

・仮想マシンをPodとして扱われている状態

f:id:takitou:20201224185318p:plain

・VMとコンテナを一緒に扱う

 f:id:takitou:20201224185345p:plain

■デモビデオ

[3] のURLでは、OpenShift Virtualization自体のデプロイ、VMの管理、Windows Server 2019のデプロイといった基本的な機能と操作についてデモをしています。
また、既存の仮想マシン管理ソフトウェアであるVMware vSphereとRed Hat Virtualizationから OpenShift Virtualizationへ仮想マシンをインポートするデモについてもご確認頂けます。[4],[5]
 
 
 
 

■Katacodaによるハンズオン

以下の[6] のURLからKubeVirtでのハンズオンを体験することができます。
また、[7]のURLでは、手元のPCを使ってOpenShift Virtualizationのハンズオンラボを簡単に構築し試すことができます。
 
 

f:id:takitou:20201224185420p:plain

* 各記事は著者の見解によるものでありその所属組織を代表する公式なものではありません。その内容については非公式見解を含みます。