Linux上で稼働する仮想化のソリューションを振り返る
2000年代中頃から仮想化が流行しはじめましたが、その当時、仮想化ソフトウェアとして数多く導入されたのがVMwareです。VMwareは、ハイパーバイザー型の仮想化ソフトウェアのリーダー的存在ですが、実は、欧米のサービスプロバイダーでは、2000年代初頭から、Linux OSで稼働する仮想化技術に注目が集まっていました。
現在でも、Windows PCなどにインストールできるVMware WorkstationやOracle VirtualBoxなどが有名ですが、当時も、一つの物理マシン上で、複数のOSを安定稼働させることができることについては、多くの技術者の間で議論になっていました。VMware Workstationなど、汎用のLinux OS上で稼働する仮想化ソフトウェアは古くから存在しましたが、エンタープライズ向けに本格的に導入されはじめたのは、VMware社が、リリースしたハイパーバイザー型の専用OSを物理サーバーに直接インストールする方式をとりはじめてからです。
一方で、Linux OS自体はKVM登場以前、Xen(ゼン)とよばれる仮想化エンジンも利用されていましたが、その後、Linuxのカーネルに組み込まれた「KVM」(Kernel Virtual Machine)が安定して動くようになり、LinuxをホストOSとする仮想化エンジンとして、KVMも広く普及しました。現在でも、ハイパーバイザー型の仮想化基盤では、VMwareが圧倒的なシェアを誇っていますが、Web系のサービスプロバイダーのクラウドサービス基盤などでは、Linuxに搭載したKVMの仮想化機能が広く利用されています。
例えば、以前の記事でもご紹介しましたが、Red Hat社が提供している仮想化ソフトウェアRed Hat Enterprise Virtualization(通称、RHEV)は、Linuxで稼働するKVMをベースとした商用の仮想化ソフトウェアとして、国内外問わず大手の企業にも導入されています。RHEVは、仮想マシンにインストールされたゲストOSのライブマイグレーションが可能であることから、メンテナンス時に他のマシンへサービスを退避させるといった運用が可能です。この機能は、IT部門の運用チームから非常に評判がよく、VMwareやRHEVにかぎらず、ライブマイグレーションを使ったサービス継続運用手法は、多くのシステムで利用されています。
図. KVM(Kernel-based Virtual Machine)とは?
ちなみに、2000年代前半、VMwareの普及以前から、米国のサービスプロバイダーでは、ハイパーバイザー型の仮想化ではなく、Virtuozzo(バーチュオッゾ)と呼ばれるコンテナ型の仮想化環境が利用されていました。現在のDockerコンテナ環境と同様に、非常に小さなアプリ環境を「コンテナ」として稼働させ、ユーザーへの開発環境の提供や、仮想環境(コンテナ)のホスティングサービスが提供されていました。
Virtuozzoは、LinuxとWindowsの両方をサポートしていますが、Linuxで稼働するVirtuozzoは、日本でもサービスプロバイダーで利用されており、HPEのサーバーで稼働実績があります。現在のVirtuozzoは、KVMに独自の改良を加えたハイパーバイザー型の仮想化エンジンを搭載しており、仮想マシンとコンテナの両方をサポートしています。また、Virtuozzoのオープンソース実装であるOpenVZと呼ばれるコミュニティが存在し、開発を精力的に行っています。
図. Linuxを取り巻く仮想環境
OSSクラウド基盤の今
2017年現在、一つのサーバーハードウェア上に複数のOS環境を実現しハイパーバイザー型の仮想化ソフトウェアが稼働するクラウド基盤OSとして、もはやLinuxは、無視できない存在です。国内外を問わず、多くのサービスプロバイダーなどでは、ゲストOSが稼働するクラウド基盤には、無償のLinux OS、または、Linuxベースの仮想化ソフトウェア、コンテナ管理ソフトウェアなどが稼働しています。
KVMのテクノロジーを使ったクラウド基盤ソフトウェアとしては、Linux上で稼働するOpenStackが有名ですが、OpenStackも、Red Hat、SUSE、Canonical社のUbuntu Serverなどのディストリビューションに対応しています。また、OpenStackに独自のインストーラなどを付与したOpenStack専業ベンダーなども台頭してきており、商用Linuxで稼働するOpenStackを使ったクラウド基盤が、企業の社内システムや、社外向けのサービス基盤で本番稼働しています。
OpenStackのように、オープンソースをベースにしたクラウド基盤は、「OSSクラウド」と呼ばれます。OSSクラウドでは、基本的に、Linux OSに含まれるKVMをベースとした仮想マシンを「インスタンス」という形でユーザーに提供しますが、最近では、仮想化を使わずに、物理サーバーをユーザーに切り出して提供する「OpenStack Ironic」や、DockerコンテナをOpenStack基盤で動かす「OpenStack Magnum」、さらには、OpenStack自体をDockerコンテナで動かすKollaプロジェクトなどが注目を浴びています。
図. OSSクラウド基盤では、OpenStackが有名だが、KVM以外に、ベアメタル配備やDockerコンテナへの対応などが注目を浴びている
ビッグデータ基盤の過去、現在
大量のサーバーで構成されるスケールアウト型の基盤は、昔も今も、オープンソース・Linuxが採用されますが、特に、2010年代初頭から先進企業で利用が進んだビッグデータ分析基盤ソフトウェアであるApache Hadoopに代表される分析基盤ソフトウェアは、その最たる例です。近年は、ストレージ領域においても、オープンソースをベースとした「ソフトウェア定義型ストレージ」(Software Defined Storage、通称、SDS)が注目を浴びています。
製品としては、SUSE Enterprise Storage、Red Hat Gluster Storage、Red Hat Ceph Storageが存在します。最近では、データ容量がペタバイトを超えるようなシステムにおいて、オープンソースではないものの、Scality(スキャリティ)なども注目されており、これらのHadoopやSDSといったスケールアウト型のビッグデータ基盤ソフトウェアは、どれもベースのOSがLinuxです。
さらに最近では、大量のハードウェアが存在する大規模なデータセンター環境において、Hadoopなどのビッグデータ対応のオープンソースソフトウェアや、軽量なアプリケーション環境(マイクロサービスと呼ばれます)であるコンテナを自動的にベアメタル配備し、加えて、業務負荷に応じたリソース(IT資源)の利用効率を図るといった運用の自動化が注目され、米国の先進企業において導入が進んでいます。このような運用を実現するミドルウェアは、「データセンターOS」と呼ばれる計算資源管理ソフトウェアで実現します。
データセンターOSは、データセンター全体をあたかも1台のコンピューターのように見せるソフトウェアで、オープンソースのApache Mesosのエンジンを搭載したMesosphere DC/OS(メソスフィア・ディーシーオーエス)が有名ですが、このデータセンターOSとよばれる計算資源管理ソフトウェアも、基本的にRed Hat Enterprise Linuxや無償OSのCentOSなどで動作します。大規模なデータセンターを1台の仮想的なコンピューターとみなすことで、全体の計算資源の有効利用を図るこのようなソリューションも、Linux上で稼働することが前提になっており、Linuxで稼働するオープンソースソフトウェアの自動配備や、IT基盤全体の資源管理の省力化が行われています。
図. 自動配備や資源管理が行えるMesosphere DC/OS
一昔前では、とくにミッションクリティカルシステムに比べると、「Linux = 無料OS」、「Linux = 社内向けの小規模なオープンソース基盤で採用するOS」、「オープンソース = 無料ソフト」というイメージが付きまとっていましたが、現在では、仮想化基盤やOSSクラウド基盤、そして、ビッグデータやコンテナを駆使するデータセンターOSなど、様々な種類のIT基盤において、責任範囲が明確でベンダーのサポートが可能なエンタープライズ向けのオープンソースソフトウェアと商用Linux OSの利用が広まっています。
図. 様々なIT基盤で採用されるエンタープライズLinux
今回は、仮想化、クラウド、ビッグデータ、そして、最新のコンテナ技術を駆使するデータセンターOSなど、LinuxをベースとしたIT基盤ソフトウェアについて、簡単にご紹介しました。次回は、オープンソース・Linuxの採用理由などについて解説します。お楽しみに。
【筆者プロフィール】
古賀政純(こが・まさずみ)
日本ヒューレット・パッカード株式会社
オープンソース・Linuxテクノロジーエバンジェリスト
兵庫県伊丹市出身。1996年頃からオープンソースに携わる。2000年よりUNIXサーバーのSE及びスーパーコンピューターの並列計算プログラミング講師、SIを経験。2006年、米国ヒューレット・パッカードからLinux技術の伝道師として「OpenSource and Linux Ambassador Hall of Fame」を2年連続受賞。プリセールスMVPを4度受賞。
現在は、日本ヒューレット・パッカードにて、Hadoop、Spark、Docker、OpenStack、Linux、FreeBSDなどのサーバー基盤のプリセールスSE、文書執筆を担当。日本ヒューレット・パッカードが認定するオープンソース・Linuxテクノロジーエバンジェリストとして、メディアでの連載記事執筆、講演活動なども行っている。Red Hat Certified Virtualization Administrator, Novell Certified Linux Professional, Red Hat Certified System Administrator in Red Hat OpenStack, Cloudera Certified Administrator for Apache Hadoopなどの技術者認定資格を保有。著書に「Mesos実践ガイド」「Docker 実践ガイド」「CentOS 7実践ガイド」「OpenStack 実践ガイド」「Ubuntu Server実践入門」などがある。趣味はレーシングカートとビリヤード。