クラウド・コンピューティングと仮想化は同じものではありません。両者の概念が混同されることもありますが、クラウド・コンピューティングと仮想化は、ほぼ無関係な2つの異なるコンピューティング方法です。企業は、IT部門全体で柔軟性とスケーラビリティを実現するために両者を採用しています。クラウド・コンピューティングは、内部および外部両方のアプリケーションとデータベースのアクセシビリティを高めます。仮想化は、物理ハードウェアを最小限に抑え、DevOpsプロセスを効率化するのに役立ちます。仮想化はクラウド・コンピューティング設定の一部となる場合がありますが、クラウド・コンピューティングに必ず仮想化が含まれているわけではありません。
これらの違いの理解を深めるために、この2つの概念についてさらに詳しく説明します。
仮想化は、幅広く使用されているシンプルな概念です。本質的に、仮想化は、シミュレートされたマシンつまり仮想マシン(ゲスト)を作成するプロセスです。仮想マシンは、ソフトウェア領域内にのみ存在し、物理マシン(ホスト)内で動作するエミュレートされたコンピュータ・システムです。ゲスト・マシンには、メモリ、CPU、ストレージ領域、およびオペレーティング・システムがあり、すべてハードウェアではなくソフトウェアによって定義されます。仮想マシンは、さまざまな規模で構築され、異なるワークロードおよびユース・ケースをサポートするための構成可能なパラメータを備えています。仮想マシンは、時代遅れのハードウェアをエミュレートするために作成されたり、リソース管理に対する戦略的なアプローチを提供したりする場合もあります。
仮想マシンが動作するには、ハイパーバイザと呼ばれるソフトウェアが必要です。ハイパーバイザは、リソース・マネージャおよびホストとゲスト間のインタフェースとして機能します。ハイパーバイザは、必要なメモリ、処理能力、およびストレージ領域を仮想マシンに割り当てます。また、仮想マシンがアクティブである間、仮想マシンのアプリケーションおよび一般的な正常性も管理します。仮想マシン内のアプリケーションはホスト・マシンから完全に分離されるため、ゲストとホストは相互にファイルをやりとりできません。
仮想マシンに加えて、コンテナは仮想化を扱うもう1つの方法を提供します。コンテナと仮想マシンは混同されることがあり、類似性もありますが、両者の機能は異なります。コンテナは、個々のアプリケーション専用のスタンドアロン・ランタイム環境であり、仮想マシンはソフトウェア・ドリブン環境を提供します。仮想マシンは特に個々のアプリケーションへのアクセスに使用される場合がありますが、それ以上の機能を備えています。単一のアプリケーションのみを実行する必要がある場合、コンテナは仮想マシンよりもリソース負荷の少ないオプションとなる可能性があります。
仮想化には、より明確なリソース割当てや、ソフトウェア・リソース間のハードのサイロ化など、多くの利点があります。個人のユース・ケースとしては、物理コンピュータに別のオペレーティング・システム(Windowsマシン上のLinuxなど)をインストールすることが考えられます。企業の場合、仮想化はサーバー統合の簡素化などの利点があります。
クラウド・コンピューティングは、オンラインにある任意のアプリケーション、データベース、ストレージ、またはネットワーク・サービスであり、インターネットを介してアクセスします。3種類の主要なクラウド・コンピューティング・サービスとして、Software as a Service、Infrastructure as a Service、およびPlatform as a Serviceがあります。
現在、ほぼすべての人々がクラウド・コンピューティングを使用しています。TVストリーミング、写真のバックアップ・ストレージ、ソーシャル・メディア・アプリなど、どのタイプのオンライン・サービスを使用する場合でも、何らかの形式のクラウド・コンピューティングを利用しています。エンタープライズ・レベルのクラウド・コンピューティング・サービスには、クラウド・インフラストラクチャ、ERPなどのクラウドベースのアプリケーション、クラウドベースのディザスタ・リカバリおよびバックアップが含まれる場合があります。
仮想化がクラウドの一部に含まれる場合もありますが、クラウド・コンピューティング自体は、アプリケーション、サービス、およびデータへのオンライン・アクセスをサポートするために構築されたインフラストラクチャ全体に相当します。プロバイダがオンライン経路を通じてリソース、処理能力、アプリケーションへのアクセスを有効にしている場合、利用者はクラウド・コンピューティングを利用していることになります。これには、教室や職場の同僚などの小規模なグループにカスタム・アプリケーションを提供する単一サーバーのようなシンプルな場合もあります。より大規模な場合、Zoomなどのプラットフォーム・サービスでは、機能、データ、冗長性を、連携する多数のサーバーに分散させる必要があります。
クラウド・コンピューティングには、次のような数多くの利点があります。
クラウド・コンピューティングでは、異なるオペレーティング・システムにおけるシミュレートされたアプリケーションのサポートから、リソース間のサイロの構築による効率の最大化まで、さまざまな目的で仮想化を使用できます。クラウドは仮想化なしで導入できますが、仮想化は、多数のクラウド・プラットフォーム(特に大規模なオーディエンス向けに構築するプラットフォーム)をサポートするために使用される重要なツールです。
無料のOracle Cloud試用版で、クラウド・コンピューティングのハンズオン・エクスペリエンスを試すことをお勧めします。