はじめに
気になる記事があったので、内容を深堀してみました。その記事は以下です。
Red Hat、OpenShift 4.4で仮想マシンに対応、「レガシーな仮想化基盤は不要に」
概要
記事を読むと、K8s上に仮想マシンもデプロイすることができ、コンテナ基盤と仮想化基盤を統合できる、そんな内容かと思います。
構成要素
まず、技術的には「container-native virtualization」(以下、CNV)という技術を使っています。CNVを使うことで、コンテナ内で仮想マシンを実行できるようになります。では、どうやってコンテナ内で仮想マシンを実行しているかというと、KubeVirtという技術を使っており、こちらは、K8sコンテナのKVMを活用しているとのこと。
KubeVirtを深堀すると、以下のようなコンポーネントで構成されていることがわかりました。
- APIServer:仮想化関連ワークフローのエントリーポイントです。
- virt-handler:すべてのホスト(サーバ)に存在するデーモンセット。仮想インスタンス(VMやコンテナ)の状態を取得したり、正しい状態と照合したりします。K8sでのKubeletと似たような動きをします。
- virt-launcher:cgroupsやnamespacesなどを提供しています。これらは、VMプロセスを実行するのに利用されます
- libvirtd:VMプロセスのライフサイクルの管理に利用されます。
技術的なところをもう少し調べたかったのですが、これ以上情報を得られませんでした。。。
できること
- LinuxとWindows仮想マシンの作成、追加
- UI、CLIを通した仮想マシンへの接続
- VMware仮想マシンを含む仮想マシンのインポートとクローン
- 仮想マシンにアタッチされたNICおよびディスクの管理
- ノード間のオンライン移行
参考
Red Hat OpenShift Virtualization
Red Hat OpenShift Virtualization, a feature of Red Hat OpenShift, brings modern virtualization infrastructure to OpenShift to support existing virtual machines.
コメント