クラウド インフラストラクチャ ソフトウェア: 仮想化とコンテナー、どちらが勝つでしょうか?

クラウド インフラストラクチャ ソフトウェア: 仮想化とコンテナー、どちらが勝つでしょうか?

従来の IT アーキテクチャでは、オペレーティング システムはコンピューターのハードウェアとソフトウェアのリソースを管理する上で重要な役割を果たします。 IT アーキテクチャがクラウド コンピューティングの時代に入ると、それに応じた「クラウド オペレーティング システム」も必要になります。仮想化やコンテナに代表されるクラウド基本ソフトウェアは、データセンターのストレージやコンピューティングリソースの効率的な割り当てと管理、そして上位アプリケーションへの合理的な割り当てを担い、「ソフトウェア定義データセンター」を実現し、クラウドコンピューティング時代の重要なインフラストラクチャとなっています。

[[423246]]

世界的なクラウド基盤ソフトウェアの開発の歴史の中で、VMWareやRedHatなど数多くのクラウド基盤ソフトウェア大手が誕生し、OpenStackやKubernetesなど業界標準レベルの世界的なオープンソースプロジェクトも育まれてきました。中国政府や企業のクラウドへの移行の流れが進むにつれ、クラウドコンピューティングのローカライズが急速に進み、クラウドインフラソフトウェアが中国の新時代の新たな機会をもたらすと私たちは考えています。

サーバー仮想化からコンテナ仮想化まで、クラウド インフラストラクチャ ソフトウェアは進化し続けています。仮想化とコンテナは、2 つの典型的なクラウドベースのソフトウェアです。仮想化は、ソフトウェアを使用して基盤となるハードウェア リソースを再定義および分割するテクノロジです。これはリソース層を対象としており、リソース供給モデルを最適化します。コンテナは、アプリケーション層を指向したオペレーティング システム レベルでの仮想化であり、アプリケーションとビジネス アーキテクチャを変革します。現在の技術トレンドは、依然として仮想化とコンテナ技術の組み合わせによる開発です。 OpenStack と VMWare は、サーバー仮想化時代の 2 大「クラウド オペレーティング システム」ですが、コンテナ アプリケーションの台頭により、Kubernetes も徐々に重要な役割を果たすようになりました。クラウドネイティブ時代の「OS」の強力なライバルになると考えています。

クラウド時代を迎え、ソフトウェア情報技術のローカライゼーションが加速しています。ソフトウェアクラウドコンピューティングが大きなトレンドになるにつれ、政府機関、金融機関、さまざまな業界の企業も「クラウドローカリゼーション」の需要を積極的に提案し、ローカリゼーションとクラウドコンピューティングを並行して新しいデジタルアップグレードを実行することを望んでいます。クラウドコンピューティングのローカライズ化により、国内のクラウドインフラソフトウェアメーカーの活動領域がさらに広がり、インターネット業界から政府や金融などの伝統的な分野へと拡大しています。既存の実装事例に基づいて、「スタンドアロン ローカリゼーション」に基づく「クラウド ローカリゼーション」の重要な新しい方向性として、プライベート/ハイブリッド クラウド、仮想化ソフトウェア、コンテナ管理ソフトウェア、デスクトップ クラウド、クラウド管理プラットフォームの 5 つをまとめました。

クラウド インフラストラクチャ ソフトウェア - ソフトウェア定義データ センター

ソフトウェア定義データセンターとは何ですか?ソフトウェア定義データセンターは、基盤となるハードウェア アーキテクチャの上にインストールされる仮想インフラストラクチャの新しいレイヤーです。その目標は、データセンター内のすべての物理ハードウェア リソースを仮想化およびソフトウェア化し、基盤となるハードウェアを上位層のハードウェアから完全に分離し、リソース パフォーマンスの弾力性とアーキテクチャのスケーラビリティの問題を完全に解決することです。その意味合いには、ソフトウェア定義コンピューティング (コンピューティング仮想化)、ソフトウェア定義ストレージ (ストレージ仮想化)、ソフトウェア定義ネットワーキング (ネットワーク仮想化) という 3 つの主要なレベルが含まれます。

クラウド インフラストラクチャ ソフトウェアは、クラウド時代の「オペレーティング システム」であり、ソフトウェア定義のデータ センターを実現します。従来の IT アーキテクチャでは、オペレーティング システムがコンピューターのハードウェアとソフトウェアのリソースを管理する役割を果たします。 IT アーキテクチャがクラウド コンピューティングの時代に入ると、コンピューティング、ストレージ、ネットワークの仮想化を通じてデータ センターのストレージとコンピューティング リソースを効率的に割り当て、管理し、上位レベルのアプリケーションに合理的に割り当ててリソースの利用効率を最大化するための、対応する「オペレーティング システム」も必要になります。ソフトウェア定義型データセンターを実現するために、仮想化やコンテナ技術に代表されるクラウド基盤ソフトウェアが登場し、クラウドコンピューティング時代の重要なインフラとなりました。

仮想化: 基盤となるインフラストラクチャをターゲットにして、コンピューティング リソースの柔軟な割り当てを実現します。

仮想化は、ソフトウェアを使用して基盤となるハードウェア リソースを再定義および分割するテクノロジです。仮想化技術は主にサーバーレベルで使用されます。 x86 サーバーの設計上の制限により、一度に実行できるオペレーティング システムとアプリケーションは 1 つだけなので、基盤となるハードウェア リソースの使用率は低くなります。仮想化テクノロジーは、実際には、基本的な物理サーバーの CPU、メモリ、ハードウェア、ネットワーク カード、およびその他のリソースを「プール」し、複数の仮想マシン (VM) に割り当てます。仮想マシンは互いに独立していますが、基盤となる物理リソースを共有するため、単一の物理デバイス上で複数の OS とアプリケーションを実行できます。

仮想化技術はクラウド コンピューティングの基盤です。一般的に「クラウド化」と呼ばれるものは、ハードウェア リソースを仮想化し、仮想リソースを中央のリソース プールに集中させ、最後にリソースのスケジュール設定と共有を実現するためのサポート システムを追加するプロセスです。中央リソース プールの上に管理ソフトウェアのレイヤーを追加することで、ユーザーはクラウドで使用する必要のあるインフラストラクチャ、プラットフォーム ツール、アプリケーションを制御できます。仮想化テクノロジの役割は、ハードウェア リソースを「プール」して、ユーザーが必要に応じて柔軟かつ弾力的にコンピューティング リソースを呼び出せるようにすることです。

典型的な基盤となる仮想化技術 - KVM-QEMU

KVM-QEMU は、典型的な基盤となる仮想化テクノロジです。 KVM は、Linux カーネルを仮想化を実現できるハイパーバイザーに変換する Linux カーネル内のモジュールです。 QEMU は、CPU や IO デバイスを含むコンピュータ全体を独立してシミュレートできるオープンソースのシミュレーション プロセッサです。 KVM はカーネル空間に配置されているため、ユーザーはカーネルを直接制御できません。そのため、開発者は比較的成熟した QEMU テクノロジを選択し、ユーザー空間管理ツールの助けを借りてカーネルを操作しました。

KVM と QEMU は互いに補完し合います。 QEMU 自体は KVM に依存しませんが、QEMU 単体では仮想化効率は低くなります。 QEMU は KVM を通じてハードウェア仮想化の速度を実現し、KVM は QEMU を通じてデバイスをシミュレートします。 KVM + QEMU のみが完全なサーバー仮想化を実現できます。完全なハイパーバイザーでは、KVM の機能は、仮想マシンを実行するための CPU とメモリの仮想サポートを実装するためのカーネル インターフェイスを提供することです。 QEMU は、IO デバイスの仮想化の管理と、さまざまな仮想デバイスの作成と呼び出しを提供します。

仮想化のための複数の技術的ルート

完全仮想化と準仮想化は、2 つの典型的な技術的ルートです。仮想化とは、複数のゲスト オペレーティング システム (ゲスト OS) が元の基盤となるハードウェア リソースを共有できるようにするプロセスです。その核となるのは、ゲスト OS が発行する特権命令を実行し、ホストのハードウェア リソースを呼び出すという問題をどのように解決するかです。 X86 サーバー アーキテクチャの観点から見ると、CPU はリング 0 ~ 3 の 4 つの実行状態に分かれています。リング 0 はオペレーティング システム カーネルの実行状態 (カーネル モード) であり、リング 3 はユーザー モードです。さまざまな仮想化テクノロジ間の主な違いは、ゲスト OS が実行されるホスト CPU の実行状態です。

(1)完全仮想化と準仮想化:

両者の主な違いは、ゲスト OS のカーネルを変更する必要があるかどうかです。完全仮想化では、ゲスト OS カーネルの特別な構成は必要なく、柔軟で導入しやすく、互換性も良好です。ただし、ゲスト OS が基盤となるハードウェアを直接管理できないという欠点があります。ハイパーバイザーを介して基盤となるハードウェアを管理するには変換オーバーヘッドが必要であり、そのパフォーマンスは準仮想化に比べて遅れます。準仮想化は、ホストの基盤となるハードウェアを、事前に変更されたクライアント オペレーティング システム カーネルと共有することによって実現されます。その利点はパフォーマンスにありますが、展開の柔軟性と互換性も失われます (Windows などのクローズドソース オペレーティング システムをサポートできません)。

(2)ハードウェア支援仮想化:

ハードウェア技術の支援により、仮想マシンのパフォーマンスは物理マシンのパフォーマンスに近くなります。ハードウェア支援による仮想化では、CPU 自体がハイパーバイザーに利便性を提供し、ハイパーバイザーは命令を認識して例外を回避し、命令処理プロセスを簡素化してパフォーマンスを向上させることができます。ハードウェア支援仮想化テクノロジは、完全仮想化および準仮想化製品を最適化するためによく使用されます。現在、主なハードウェア支援仮想化技術は、Intel の VT-x と AMD の AMD-V です。同時に、市場で主流の完全仮想化および準仮想化製品は、基本的に KVM、VMware vSphere、Xen、Oracle VirtualBox など、ハードウェア支援による仮想化をサポートしています。

コンテナ: アプリケーションとプロセスのオペレーティング システム レベルでの仮想化

コンテナは、オペレーティング システムの仮想化を実装する方法であり、アプリケーションを実行するための環境を提供する役割を果たします。コンテナの目的は、プロセスの集合に独立した動作環境を提供することです。コンテナには、アプリケーションとそのすべての依存パッケージ (クラス/ライブラリ) が含まれます。異なるコンテナは、ホスト マシンのハードウェア リソースとオペレーティング システムを共有します。コンテナを使用することで、開発者はアプリケーション コード、構成、依存関係を簡単にパッケージ化できるため、高速で信頼性が高く、一貫性のあるアプリケーション展開が可能になります。

コンテナの本質は、分離されたビューと限られたリソースを持つプロセスです。コンテナと仮想マシンの類似点は、どちらもユーザーが分離された環境を作成するのに役立つことですが、仮想マシンとコンテナの分離レベルは異なります。仮想マシンはオペレーティング システム レベルで分離を実装しますが、コンテナーはプロセス レベルでリソースの分離を実装します。同時に、コンテナは仮想マシンよりもサイズが小さいため、より軽量で柔軟性があります。

コンテナの基盤となるテクノロジー: コンテナ ランタイム、コンテナ イメージ、コンテナ エンジン

コンテナ = Cgroup (リソース制御) + 名前空間 (アクセス分離) + rootfs (ファイル システムの分離) + コンテナ エンジン (ユーザー モード ツール)。 cgroups と Namespace は、コンテナ テクノロジが適用される Linux カーネルの 2 つの重要な機能です。名前空間は主にプロセスの分離を実現するために使用され、Crgourps はプロセスに割り当てられるハードウェア リソースを制限する役割を果たします。 Namespace+Cgroups で構成された分離された環境は、「コンテナ ランタイム」とも呼ばれます。 rootfs は、Linux ルート ファイル管理システムとして、主にコンテナ プロセスに分離された実行環境ファイル システム (いわゆる「コンテナ イメージ」) を提供する役割を担っています。

コンテナ エンジンは、コンテナの実行に必要なリソースを準備し、コンテナのライフサイクルを管理する役割を担います。コンテナーは、Namespace や CGroup などのカーネル関数と直接対話する役割を担い、それらとの外部統合を可能にする対応する API を提供します。コンテナエンジンの機能は、イメージ管理(イメージサービス)、運用管理(ランタイムサービス)、コンテナネットワーク(CNI)など、コンテナのライフサイクルを管理することです。上位レベルのコンテナ オーケストレーション管理システム (有名な Kubernetes プロジェクト「k8s」など) は、CRI インターフェースを介してコンテナ エンジンを呼び出します。現在、業界で活発に使用されているコンテナ エンジンには、Docker、rkt、Pouch、Containerd、Cri-o などがあります。

コンテナ上部構造: コンテナオーケストレーション管理システム

コンテナ オーケストレーションは、コンテナからコンテナ クラウドへの移行を実現するための鍵となります。実際のアプリケーションでは、複雑なアプリケーション アーキテクチャをサポートするために、通常、多数のコンテナーがコンテナー クラスターに組み込まれます。現時点では、コンテナ クラスターを統一的にオーケストレーション、管理、スケジュールするには、対応するシステムが必要です。 k8sに代表されるコンテナオーケストレーション管理システムは、コンテナエンジンをベースにコンテナ化されたアプリケーションの展開と運用、リソースのスケジューリング、サービスの検出、動的なスケーリングなど一連の完全な機能を提供し、大規模なコンテナクラスタ管理の利便性を向上させます。 1 人の開発者と 1 つのコンテナ イメージから、無数の開発者と巨大なコンテナ クラスターへと、コンテナ テクノロジーは「コンテナ」から「コンテナ クラウド」へと飛躍しました。

Kubernetes はコンテナ オーケストレーションの事実上の標準です。 Kubernetes (略して k8s) は、2014 年に Google が開始したオープンソース プロジェクトです。軽量、移植性が高く、スケーラブル、自己修復性があるなどの利点があります。 2015 年には、Meso や Docker Swarm などの競合他社との差が急速に広がり始めました。現在、k8s は基本的にコンテナ オーケストレーションの分野で業界標準となっています。 AWS、Azure、Google、Alibaba Cloud、Tencent Cloud などのパブリック クラウド ベンダーはすべて、k8s ベースのコンテナー サービスを提供しています。 Red Hat、Rancher、IBM、Mirantis などのベンダーも、Kubernetes ベースのコンテナ製品を積極的に推進しています。 Docker/Containerd+k8s は、世界の主流のコンテナ製品ルートになりました。

Kubernetes は、クラウドネイティブ時代の新しい「オペレーティング システム」です。 k8s クラスターはマスターノードとノードノードで構成されます。マスターノードは、API サーバー (外部インターフェース)、スケジューラー (資産管理スケジューリング)、コントローラーマネージャー (管理コントローラー) などの管理と制御を主に担当します。 Node ノードは主にワークロード ノードであり、Pod (基本操作単位、内部カプセル化コンテナー)、Docker (コンテナー エンジン)、Kubulet (Pod の監視を担当) が含まれます。コンテナ化されたアプリケーション展開のクラウドネイティブ時代において、k8s は自動展開、自動スケーリング、コンテナ クラスターの効率的で柔軟な管理を実現できます。これは、新世代のクラウド オペレーティング システムとクラウド ネイティブ時代の礎となるものだと考えています。

CNCF は、Kubernetes を中心に活気のあるクラウド ネイティブ エコシステムを構築しました。 2015 年、Google と RedHat は Kubernetes プロジェクトに基づく CNCF コミュニティの設立を主導しました。その後数年間で、CNCF は徐々に成長し、発展しました。実際的な問題により、Docker は徐々にオープンソース コミュニティから離脱しました。同社は2017年にContainerdをCNCFに寄贈し、Docker Enterprise Editionにk8sを組み込みました。それ以来、CNCF はグローバル コンテナ エコシステムの中核となりました。 2020 年現在、CNCF には世界中で 1,381 のプロジェクトが含まれており、機能に応じて 29 のモジュールに分かれており、9 つの異なるカテゴリ (アプリケーションの定義と開発、オーケストレーションと管理、ランタイム、構成、プラットフォーム、可観測性と分析、サーバーレス、メンバーシップなど) に属しています。これら 1,381 のプロジェクトが一体となって、壮大な「クラウド ネイティブ ワールド」を構築します。

仮想マシンとコンテナ:現在のトレンドは依然として、複合アプリケーションの共同開発である

コンテナと仮想マシンにはそれぞれ長所と短所がある

► コンテナの利点は、俊敏性と高性能です。ハイパーバイザー アーキテクチャでは、仮想サーバー上で単一のアプリケーションを実行すると、完全なオペレーティング システム (ゲスト OS) とその依存環境が実行されることになるため、ホスト上のシステム リソースの消費量が大量に増加します。それに比べて、コンテナは占有するスペースが少なく、基盤となるリソースと上位レベルのアプリケーション間の抽象化レベルが少なく、コンテナ テクノロジを通じて複数のアプリケーションがオペレーティング システム カーネルを共有できるため、リソースの使用率がさらに向上します。同時に、コンテナはアプリケーションの移行、急速な拡張、継続的インテグレーションと継続的デプロイメント (CI/CD) の実装においてもより柔軟で便利です。

► 仮想マシンの利点は、分離が強力で、操作と保守が簡単なことです。ハイパーバイザーベースの仮想マシンは、システムレベルのリソース分離を実現できます。仮想マシンは完全に独立しており、安全性も高く、バックアップや災害復旧に使用できます。コンテナは実際にはアプリケーション レベルでの分離のみを実現し、セキュリティと安定性は比較的低くなります。特にマルチテナント環境では、異なるコンテナがホストのカーネルを共有するため、コンテナ アプリケーションがカーネル パラメータを構成する必要がある場合、「ドミノ効果」が発生します。さらに、仮想化技術は長年の応用を経て、企業の運用・保守担当者にとって比較的馴染みのある技術になりました。同時に、2 層アーキテクチャには、操作と保守が簡単であるという利点もあります。

ユーザーは自分の好みに応じて適切なクラウド リソース管理ソリューションを選択できます。実際のアプリケーション プロセスでは、セキュリティと安定性を重視するユーザーは、基盤となるコンピューティング リソースを管理するために、依然としてハイパーバイザーをメインの「クラウド オペレーティング システム」として使用することがよくあります。たとえば、金融や通信などの従来の業界では、従来の VMWare または OpenStack (KVM ベース) を大規模に使用しています。クラウド ネイティブを追求し、より高いリソース使用率と、より柔軟で便利なアーキテクチャを必要とするお客様にとって、Docker/Containerd+k8s コンテナ ソリューションはより優れたソリューションです。実際、コンテナはインターネット業界で広く使用されています。従来の業界のアプリケーション ベンダーも、新世代のアプリケーションをコンテナーに積極的に変換しています。コンテナの普及・浸透は時間の問題だと考えています。

コンテナと仮想マシンを組み合わせたアプリケーションは依然として主流である

パブリック クラウドのマルチテナント シナリオでは、通常、コンテナーと仮想マシンが組み合わせて使用​​されます。クラウド コンピューティングの概念が提案されて以来、仮想マシンは常にクラウド プラットフォームの基盤となってきました。プラットフォーム独自のサービスとユーザーの使用は、基本的に一般的な仮想マシンの作成から始まります。そのため、現在のコンテナ アプリケーションのほとんどは仮想マシンに基づいて実行されます。通常の方法は、コンテナを実行するためのノードとして仮想マシンのバッチを構築し、仮想マシンのゲスト OS に基づいてコンテナ アプリケーションを作成することです。図 18 の左側は、パブリック クラウド コンテナ サービスの提供の一般的な形式です。

セキュア コンテナーは、コンテナー アプリケーションに仮想マシン レベルの分離をさらに直接導入します。パブリック クラウドのマルチテナント シナリオでは、上記のソリューションが直面する問題は、同じホストが異なるテナントのアプリケーションを実行する必要があり、コンテナーの分離レベルでは依然として共通のカーネル メカニズムが使用されるため、攻撃対象領域が広範囲に及ぶことです。いわゆるセキュア コンテナーは、ハードウェア仮想化などのテクノロジを使用して、各コンテナーをカーネル レベルで分離します。各コンテナは独立したカーネル インスタンスに基づいて軽量仮想マシン (Micro-VM) を形成します。

セキュア コンテナーは、コンテナーの効率性と利便性と、仮想マシンの安定性とセキュリティのバランスを実現します。セキュア コンテナの位置付けは、コンテナと仮想マシンの中間です (コンテナの速度、VM のセキュリティ)。セキュア コンテナは、コンテナの動作方法と互換性があり、起動速度やメモリ オーバーヘッドなどのパフォーマンス指標の点でもコンテナに非常に近いです。同時に、セキュア コンテナーは仮想マシン レベルの分離を導入することで、コンテナーの分離レベルとセキュリティを大幅に向上させます。現在、業界で一般的なセキュリティ コンテナの実装には、Kata-containers、Google gVisor、AWS Firecracker-containerd、IBM Nabla、VMware CRX などがあります。その中でも、Kata-containers は互換性が最も優れており、広く使用されています。

クラウド インフラストラクチャ ソフトウェアの進化: 歴史的変化と将来の傾向

クラウド インフラストラクチャ ソフトウェアの市場状況: 仮想化が成熟段階に入り、コンテナ アプリケーションが盛んに

仮想化技術の普及率は飽和状態に達し、市場規模は安定しています。 Statistaのデータによると、世界の仮想化市場規模は2018年の57億ドルから2025年には90億ドルに成長し、2018年から2025年にかけてCAGRは7%となる見込みです。Spiceworkの調査によると、2020年には92%の企業がサーバー仮想化技術を使用しています。企業における仮想化技術の応用は基本的に飽和状態に達しており、市場の成長は鈍化しています。

コンテナ アプリケーションは急速に普及しており、市場規模は拡大し続けています。ガートナーの予測によると、世界のコンテナ オーケストレーション システム市場規模は、2020 年の 4 億 7,000 万ドルから 2024 年には 9 億 4,000 万ドルに拡大し、2020 年から 2024 年にかけて CAGR は 20% になると予想されています。また、世界中の企業におけるコンテナ テクノロジーの需要も急速に高まっています。ガートナーは、2022年までに世界の企業の75%以上が業務でコンテナ化されたアプリケーションを使用すると予測していますが、2020年にはコンテナを使用していた企業は30%未満でした。 2024 年までに、エンタープライズ アプリケーションの最大 15% がコンテナ環境で実行されるようになりますが、2020 年には 5% 未満でした。

グローバルクラウドインフラストラクチャソフトウェアの主要プレーヤー

仮想化: 世界の仮想化市場の主要プレーヤーは、オープンソースとクローズドソースの 2 つの陣営に分けられます。 VMWare と Microsoft はクローズドソースの仮想化ソフトウェア ベンダーの代表ですが、他のほとんどのベンダーの製品はオープン ソースの KVM または Xen テクノロジに基づいています。

► クローズドソース仮想化の代表例としては、VMWare の ESXi と Microsoft の Hyper-V があります。ESXi は、完全な仮想化テクノロジを使用するタイプ I ハイパーバイザーであり、VMware の仮想化スイート vSphere の重要なコンポーネントです。 VMware は x86 サーバーをベースとしたサーバー仮想化ソリューションを提供した最初の企業であるため、ESXi は広く使用されています。 Hyper-V は、Windows システムに組み込むことができる準仮想化ハイパーバイザーです。ユーザーは、無料のリリース バージョンまたは有料のエンタープライズ バージョンのいずれかを選択できます。

► オープンソース仮想化の代表は KVM と Xen です。KVM は Linux カーネルに組み込まれたオープンソース仮想化テクノロジであり、Linux オペレーティングシステムを Type I ハイパーバイザーに変換できます。 RedHat や Oracle などのメーカーは、KVM ベースの仮想化の分野におけるリーダーです。同時に、AWS、Alibaba Cloud、Huawei Cloud などのクラウドベンダーも主に KVM ベースの仮想化サービスを提供しています。 Xen はケンブリッジ大学によって開発された準仮想化技術です。 2005 年に、Xen 3.0 は Intel によって変更され、完全に仮想化され、Intel ハードウェア支援による仮想化をサポートするようになりました。 Citrix は 2007 年に XenSource を買収しましたが、サーバー仮想化製品 XenServer をオープンソースのまま継続することを選択しました。

VMWare は依然としてエンタープライズ レベルのアプリケーションの第一選択肢であり、KVM はクラウド ベンダーの間で広く使用されています。 Spicework の調査によると、クローズドソースの Hyper-V と vSphere が依然としてエンタープライズ市場を支配しており、商用仮想化ソフトウェア市場における VMWare の主導的地位は依然として堅固です。しかし近年、業界でオープンソースのクラウドコンピューティング管理プロジェクトとして OpenStack の適用が拡大するにつれ、OpenStack の主流ハイパーバイザーの選択肢である KVM が市場での影響力を大幅に高めています。現在、RedHat、Oracleなどのメーカーに加え、AWS、Alibaba Cloud、Huawei Cloudなどのクラウドベンダーも主にKVMベースの仮想化サービスを提供しています。

OpenStack は、世界をリードするオープンソースのクラウド コンピューティング管理プロジェクトです。 OpenStack は、Rackspace と NASA によって設立されたオープンソース プロジェクトです。現在、Linux に次いで世界で 2 番目に大きなオープン ソース コミュニティです。 OpenStack は、コンピューティングやストレージなどの 10 個のコア コンポーネントと多数の追加コンポーネントを網羅し、クラウドを展開するためのオペレーティング プラットフォームまたはツール セットを提供します。ユーザーは、OpenStack ベースの物理クラスター上のすべての仮想マシンを管理し、パブリック クラウドとプライベート クラウドを構築および運用できます。 OpenStack はコンテナをサポートするようになりました。

OpenStack 自体には仮想化機能がなく、KVM が主流のハイパーバイザーの選択肢となります。クラウド管理プラットフォームである OpenStack 自体は仮想化機能を提供しません。実際の仮想化機能は、オープンソースの KVM、Xen、ベンダーの Hyper-V をサポートする基盤となるハイパーバイザーによって提供されます。ただし、OpenStack の初期バージョンの仮想化テクノロジは KVM に基づいており、両方とも同じオープンソースの概念と開発方法を使用しているため、KVM は依然として OpenStack の主流のハイパーバイザーの選択肢となっています。 2020 年の OpenStack ユーザー調査では、ユーザーの 94% がハイパーバイザーとして KVM を選択しました。

OpenStack と KVM は互いに補完し合います。 OpenStack は現在、世界最大のオープンソース クラウド コンピューティング管理プロジェクトの 1 つに成長しました。 2020年現在、そのエコシステムは850以上の企業や機関に拡大しています。私たちは、OpenStack と VMWare が、サーバー仮想化の時代における 2 つの主流の「クラウド オペレーティング システム」であると考えています。 OpenStack の台頭により、KVM の急速な発展も促進されました。 KVM は現在、世界的なオープンソース仮想化テクノロジーの主流となっています。 2020年にAWSとHuawei Cloudは、物理サーバーのハイパーバイザーをXenからKVMに切り替えると発表しました。将来的には、KVM がエンタープライズ市場における VMWare や他のメーカーの地位にさらに挑戦することになると考えています。

コンテナ: 前の章で説明したように、Docker/Containerd+k8s は、世界的なコンテナ テクノロジーの事実上の標準となっています。オープンソースのコンテナエンジンは基本的に商用化されていないため、コンテナ市場の規模と市場シェアに関する議論は、コンテナオーケストレーション管理ソフトウェア市場に焦点を当てています。 iResearch Consulting が発表したデータによると、2019 年の世界の Docker コンテナ オーケストレーション管理ツールのシェアのうち、k8s が 77% を占めており、市場に出回っているコンテナ オーケストレーション ソフトウェアのほとんどは、k8s の商用ディストリビューションに基づいています。

世界のコンテナ市場の急速な発展に伴い、メーカーは買収や協力を積極的に推進しています。現在、世界のコンテナ インフラストラクチャ ソフトウェア市場シェアの上位 5 社は、Red Hat (2019 年に IBM が買収)、Mirantis (2019 年に Docker を買収)、VMware、Rancher (2020 年に SUSE が買収)、Canonical です。その中でも、Red Hat がリリースした OpenShift は現在、世界で最も広く使用されているエンタープライズ レベルの k8s バージョンです。

従来の仮想化ベンダーもコンテナ技術を積極的に採用しています。コンテナオーケストレーション管理ソフトウェアの売上高で世界トップ3を占めるRed Hat、Mirantis、VMwareも、VMwareのvSphereや、MirantisのオリジナルOpenStackプラットフォームとK8Sの統合による新しいクラウドプラットフォームなど、代表的な仮想化製品を発売している。世界の主要なクラウドベンダーもコンテナ製品を積極的にリリースしています。たとえば、Huawei Cloud の仮想化スイート Fusion Sphere には、K8S をサポートする Fusion Container モジュールが含まれています。クラウドベンダーは、コンテナ技術と仮想化技術を組み合わせて体系的なソリューションを提供することに取り組んでいます。

クラウド オペレーティング システムの歴史的変化: サーバー仮想化からコンテナ仮想化へ

クラウド基本ソフトウェアの開発プロセスは、実際にはクラウドオペレーティングシステムの進化です。従来のオペレーティング システムは、コンピューターのハードウェアおよびソフトウェア リソースを管理するコンピューター プログラムとして定義されます。コンピューティング リソースが仮想化されるクラウド コンピューティングの時代では、仮想化されたハードウェア リソースを管理する Hypervisor、OpenStack、または Kubernetes がこの役割を果たします。歴史を振り返ると、仮想化の時代において、VMWare と OpenStack が実際に「クラウド オペレーティング システム」の役割を果たしていたと考えられます。そして、今後のクラウドネイティブ時代においては、Kubernetes が新世代の「クラウドオペレーティングシステム」となることが期待されています。

VMWare と OpenStack は、サーバー仮想化時代の 2 つの主要な「クラウド オペレーティング システム」です。 VMWare は製品の成熟度と安定性においてリードしており、現在でもエンタープライズ市場で支配的な地位を占めており、データ センター仮想化の分野では「王者」となっています。しかし、そのクローズドなソフトウェア システム アーキテクチャはオープンではないことも決定づけており、ソフトウェア開発ルートは VMware 独自の開発目標と完全に一致しています。オープンソース システムとしての OpenStack の固有の利点は、多様な開発パスと幅広い開発の可能性にあります。多くのクラウドコンピューティング業界の大手企業のサポートに支えられ、機能の完全性、安定性、使いやすさも近年急速に向上しています。オープンソース プロジェクトとしての中立性により、AWS や Alibaba Cloud などの多くのパブリック クラウド ベンダーの第一選択肢にもなっています。

Kubernetes は、コンテナ仮想化時代の新しい「クラウド オペレーティング システム」です。アプリケーションプロセスのコンテナ化されたデプロイメントの普及に伴い、コンテナのスケジューリング、オーケストレーション、モニタリングを担うKubernetesは、当然のことながらコンテナアプリケーションの時代における重要な「クラウドオペレーティングシステム」となっています。 Kubernetes と OpenStack の関係という観点から見ると、両者の間には競合よりも補完性があると考えています。 Kubernetes はアプリケーション層を重視しており、アプリケーションとビジネス アーキテクチャの変革を実現します。 OpenStack はリソース層を重視しており、リソース供給モデルの最適化を実現します。短期的には、OpenStack はクラウド インフラストラクチャを構築するための重要なツールであり続け、エンタープライズ クラウドおよびデータ センター アプリケーションで k8s を補完し、共存していくと考えています。

クラウドオペレーティングシステムの将来展望: Kubernetes がクラウドネイティブ時代へ

Kubernetes は、クラウドネイティブ時代の「オペレーティング システム」の強力な競争相手です。仮想化テクノロジーはクラウドコンピューティングの基盤であり、コンテナアプリケーションもクラウドネイティブ時代の基礎となります。クラウドネイティブの時代には、コンテナが最も基本的なプロセスユニットであり、コンテナオーケストレーション管理システム(K8S)がコンテナのスケジューリング、オーケストレーション、監視を担当するものであると考えています。将来、Kubernetesがマルチテナント設計における既存の問題のいくつかをさらに発達させ、成熟させ、解決できる場合、クラウドネイティブ時代の唯一の「オペレーティングシステム」にさらに発展する可能性があると考えています。

<<:  クラウドへの移行コストが急増しており、クラウド コンピューティング料金を改革する時期が来ています。

>>:  Amazon Elasticsearch Service が Amazon OpenSearch Service に

推薦する

タオバオのセラーからイベントマーケティングの方法を学び、短期間で最適なコミュニケーションを実現します

【ポイント】イベントマーケティングは、対象者が広く、突発性が強く、短期間で最大かつ最適な情報伝達効果...

launchvps: 米国東海岸のペンシルバニア州にある信頼性の高い KVM 仮想 VPS。大幅な割引あり

Launchvps は 2003 年の運営開始以来、全体的に非常に控えめな運営をしており、製品ライン...

ウェブマスターネットワークからの毎日のレポート:Facebookの株価が再び下落、オフシーズンではないにもかかわらずグループ購入が減少

民間の食品安全警告ネットワークは「窓から投げ出され」、政府の資金援助を拒否「Throw Out th...

あなたのウェブサイトを画像で表現しましょう

最近、SEO 最適化は厄介なグレーゾーンに入っているようです。検索エンジンは絶えず改良され、アルゴリ...

Baidu のスナップショット日付から見た Baidu 検索エンジン

数日前、私が管理するチャンネル(注:著者は重慶ポータルHualong.comのスタッフ)に、私のオリ...

2019 クラウド コンピューティング開発調査: 直感的なクラウド コンピューティングの「長所と短所」

[はじめに] 「2019 年クラウド コンピューティングの現状」調査では、企業がクラウド コンピュー...

ポストエピデミック時代におけるグローバルクラウドコンピューティングはどこに向かうのでしょうか?

[[416410]] 2020年を振り返ると、COVID-19パンデミックの影響により、オンラインで...

マルチクラウドの世界におけるプライベートクラウドの役割

クラウド ファーストは現在、アプリケーションの近代化と移行の指針となっており、クラウド ネイティブは...

#BlackWeek5# 予算vm-20USD/D525/4GB RAM/500GB HDD/5IP/IPMI

budgetvm.com では、ブラック フライデー スペシャルで安価なサーバーをご提供しています。...

デスクトップ検索が新時代の要素に受け入れられにくい理由

デスクトップ PC の絶対的な中核ビジネスとして、検索は常にインターネット企業やウェブマスターによる...

学術委員の呉和全氏: エッジ コンピューティングに関する「10 の新たな疑問」

2年前のエッジコンピューティング技術サミットで、中国工程院の院士である呉和全氏はエッジコンピューティ...

chicagovps シンプルレビュー/1.5g メモリ KVM VPS

数日前、私は「[推奨] chicagovps - 512M メモリ Kvm/年額 25 ドル - W...

異常なウェブサイトキーワードクロールの理由についての簡単な説明

みなさんこんにちは。私はハルビン仮想および現実ウェブサイト設計です。最近仕事が忙しくて、何も書く時間...