クラウドコンピューティングは、ソフトウェアやハードウェア、データベース、サーバなどの各種リソースをインターネット経由で提供するサービス全般を指す。クラウドコンピューティングの目的は、必要なときに必要な分だけリソースを利用してシステムを構築可能にすることにある。(続きはページの末尾にあります)
クラウドコンピューティングは、プライベートクラウドとパブリッククラウドに分けることができる。プライベートクラウドはインターネットを経由して、そのユーザー専用のサーバやネットワークのリソースを提供することを指す。パブリッククラウドはインターネットを経由して、さまざまなユーザーが共有するインフラを使ってクラウドサービスを提供することを指す。
クラウドコンピューティングは、ユーザーのクライアント端末から遠隔地にある物理サーバやデータベース、アプリケーションへの接続を、インターネット経由で可能にする。
クラウドコンピューティングは、仮想化技術とインフラ管理の自動化技術に依存している。仮想化によって、物理サーバやデータベースをユーザーが必要に応じて利用できるリソースとして抽象化し、クラウドサービスとして提供できるようになる。インフラ管理の自動化技術によって、クラウドベンダーは大規模なデータセンターの運営ができるようになる。
クラウドサービスは、主にIaaS(Infrastructure as a Service)とPaaS(Platform as a Service)、SaaS(Software as a Service)の3種類に分類できる。
IaaSは、仮想サーバ(VM)やストレージなど、アプリケーションのインフラを提供するクラウドサービスを指す。ユーザーは利用料金を支払うことで、一定のスペックのVMやストレージを必要に応じて起動したり、停止したりできる。ユーザーは遠隔地にあるデータセンターのような感覚でサービスを利用する。
IaaSベンダーはユーザーのさまざまな需要に応じるために、VMの種類を複数用意している。これらのVMは、種類によってCPUの性能やGPUの搭載の有無、メモリ容量などが異なる。代表的なIaaSベンダーとして、Amazon Web Services(AWS)やMicrosoft、Googleなどが挙げられる。
PaaSは、ミドルウェアやアプリケーション開発ツールとして提供されるクラウドサービスを指す。ユーザーはインターネット経由でこれらのツールを利用し、アプリケーションを開発したり運用したりできる。大抵のPaaSベンダーは、開発したアプリケーションのホスティングサービスも提供する。主なPaaSとして、Salesforceのアプリケーション開発ツール群「Lightning Platform」やAWSのアプリケーション管理・デプロイツール「AWS Elastic Beanstalk」、Googleのアプリケーション開発・実行ツール「App Engine」などがある。
SaaSは、ソフトウェアをサービスとして提供するクラウドサービスを指す。ユーザーは、インターネットが使えるPCやモバイル端末を通して、どこからでもSaaSを利用できる。主なSaaSには、Microsoftの「Microsoft 365」やGoogleの「Google Workspace」といったクラウドオフィススイートが挙げられる。
プライベートクラウドは、クラウドベンダーやユーザー企業が構築したクラウドインフラのリソースを、特定の組織が占有する利用形態だ。プライベートクラウドはクラウドサービスの利便性と、オンプレミスインフラのセキュリティの堅固さや制御しやすさを両立させる。プライベートクラウドを構築するための技術を提供する代表的なベンダーとして、VMwareやRed Hatなどがある。