VMwareと何が違う?『仮想化技術 -OpenStack-』をわかりやすく解説!

– はじめに

ある職場では、複数台の物理サーバでシステムを稼働していましたが、システム刷新により、これまで別々の物理サーバで稼働していたシステムを、1台のサーバ上に集約する「サーバ仮想化」が行われました。
この時、仮想化技術としてOpenStack※を使って構築を行ったそうです。

※OpenStackは非営利法人 OpenStack Foundationによって管理されている登録商標です。

– OpenStackとは

OpenStackとはオープンソースで開発されているクラウド環境構築のソフトウェア群です。
「クラウドOS」を標榜しており、マルチテナント型のIaaS(Infrastructure as a Service)を提供します。
「仮想マシン」「ストレージ」「ネットワーク」などの、一番低いレイヤーリソースまでを含んだ環境を構築し、プライベートクラウドやパブリッククラウドなどのクラウドコンピューティング基盤サービスを提供します。
OpenStack開発コミュニティは、コア機能を成熟させ、各種機能を強化し、エコシステムを拡充することにより、企業でのOpenStackの使いやすさを向上させています。

図1:ロゴマーク

– OpenStackとVMware

それぞれの設計思想

仮想ソフトウェアと聞くとVMware※が有名ですがOpenStackとの違いについて考えてみます。
VMwareについては当初x86PCのエミュレータとして提供を開始し、現在はサーバやネットワークなど各種仮想化やクラウドサービスを提供しています。
「ハイパーバイザ」「ファイルシステム」「運用ツール」を密接に連携させて仮想化運用を実現する設計思想です。
一方OpenStackはクラウド技術として生まれました。
「ハイパーバイザ」「ファイルシステム」「運用ツール」は明確に分離されており、目的に応じて組み合わせられるようになっています。
また、OpenStackは、特化機能を多数集めたもので、目的に応じて使い分ける設計思想です。

※VMwareは、アメリカカリフォルニア州パロアルトに本拠を置くVMware社の登録商標です。

図2:OpenStackとVMware

OpenStackとVMware メリット・デメリット

OpenStackとVMwareの機能を比較してみます。

表1:機能比較                    〇:該当する、△:やや該当する、×:該当しない

                                             2021年11月

OpenStackのコミュニティ

オープンソースは不安!?

「OpenStack Foundation」
ソフトウェアとそのコミュニティ促進のため設立された非営利法人 OpenStack Foundationには、AT&T、AMD、Cisco、デル、エリクソン、HPE、IBM、インテル、NEC、レッドハット、VMware、Yahoo!など、500以上の企業が参加しており、非営利団体と理事会、技術委員会、ユーザー委員会によって管理されています。

OSS独特のメリット

ソースコードが管理されており、独自機能を開発したものをコミュニティに提供するとメインのソースコードに取り込まれ、バージョンアップのたびに自分たちで作り直す必要はない!

– OpenStackの特徴

マルチノード構成①

各ノードを別々のホスト上で動作させる構成。
全てのノードを物理マシン上にそれぞれ構成、
さらにHA(High Availability、高可用性)構成にするなど、1歩進んだ仮想環境を構築できます。

図3:マルチノード構成①

マルチノード構成②

構成は自由。
物理サーバAに「コントローラ兼ネットワークノード」、空いた物理サーバBおよびCにコンピュートノードを構築し、「コンピュートノードを2台」に増やす構成にするなど、用途によって構成は無数に考えられます。

図4:マルチノード構成②

これにより、拡張を簡単に行うことができるようになります。

マルチノード構成③

以下のように後から拡張することも容易にできます。
ホストサーバを停止することなく、ストレージを追加するなど拡張が可能となります。

図5:マルチノード構成③

– 「OpenStack」導入へ

エンタープライズ領域でもOpenStackの採用例が増えています。
以下にほんの一部ですがOpenStackが採用されているサービスをご紹介します。

サービス提供

表2:各社の比較

環境提供

表3:各社の比較

– まとめと仮想化の今後

これまで紹介してきた仮想化技術はハードウェアを仮想化する「ハイパーバイザ型仮想化」を紹介してきました。
最後に今後の仮想化技術についてどのような技術が発展していくのでしょうか。

コンテナ

アプリケーションの実行環境であるOSやライブラリを仮想化する「コンテナ型仮想化」があります。
仮想化単位でOSが必要な「ハイパーバイザ型仮想化」に比べ、「コンテナ型仮想化はOSのプロセスとして実行されるため、少ないリソースで稼働させることができます。

図6:コンテナ構成

ハイブリッド

OpenStackではすでにコンテナも取り入れています!

図7:ハイブリッド構成

今後は双方のハイブリットとなることによって「物理サーバの節約」と「OS管理コストの節約」の両方のメリットを得ることができるようになっていくと思います。