6.5. クラウド
クラウドはコンピュータ/ネットワーク資源の利用形態の1つである。正式にはクラウドコンピューティングと呼ぶ。
クラウドではクラウドサービス事業者が用意した大規模のデータセンターにある多数のサーバ上に構築されたリソースを、インターネットを介して利用者が使うものとなる。 メリットとしてはソフトウェアの購入/インストール/更新、メンテナンスなど管理にかかる費用を削減できる。
クラウドで提供されるサービスにはアプリケーションの機能を提供するもの(SaaS)、アプリケーションの実行基盤を提供するもの(PaaS)、オンラインストレージ、データベース、仮想マシンなどの基盤構築環境自体を提供するもの(IaaS)などがある。
自前で社内などに物理的なサーバやネットワークなどのリソースを構築/運用/配置することはオンプレミスと呼ばれる。
6.5.1. クラウドの技術
クラウドは仮想化と呼ばれる技術が根幹技術となっている。
従来のオンプレミスサーバ
仮想化技術登場以前では1台の物理的なマシンに1つのOSをインストールしてサービスを展開するのが主流の方式であった。
この当時は異なるOSを扱いたい場合その数分だけサーバ台数が増えてしまい導入コスト/運用保守コストが増大する問題があった。
仮想サーバ
仮想化されたサーバでは1つの物理サーバ上に複数の異なるOSを動かすことができる。
仮想化基盤にはハイパーバイザ型、ホスト型、コンテナ型がある。


ハイパーバイザ型では仮想マシンが動く。 また代表的な技術と種類の関係は以下の通り。
| 技術/製品 | 種類 | 特徴 | 
|---|---|---|
| Vmware ESXI/vSphere | ハイパーバイザ型 | vSphereは仮想マシンの管理、クラスタリング、リソースプールなどの高度な機能を提供する | 
| Proxmox VE | ハイパーバイザ型 | KVMとLXCを組み合わせたOSSの仮想化プラットフォーム。Webベースの管理インターフェースを備えている | 
| Hyper-V | ハイパーバイザ型 | Windows Server上で動作する | 
| Xen | ハイパーバイザ型 | OSSの仮想化プラットフォーム。ハードウェア支援仮想化を提供する | 
| KVM | ハイパーバイザ型 | Linuxカーネル内に組み込まれた仮想化技術。Linuxサーバー上で仮想マシンを実行するために使用される。 | 
| Virtual Box | ホスト型 | ホストOS上で動作する。仮想マシンを作成し実行できる | 
| VMware Player | ホスト型 | VMware Workstation Playerとも呼ばれる | 
| LXC | コンテナ型 | プロセス間の仮想化を使用してコンテナを提供するOSSの仮想化技術 | 
| Docker | コンテナ型 | アプリケーションをコンテナとしてパッケージ化し簡単にデプロイできるようにする。軽量でポータブル | 
6.5.2. クラウドのサービス形態
プライベートクラウド
プライベートクラウドは企業や機関専用のクラウドとして利用する形態を指す。
クラウド事業者のクラウド内にその企業専用のクラウドを構築するケースもある。 導入コストはパブリッククラウドよりも上がるが、セキュリティの向上や企業独自の基盤に合わせやすいメリットがある。
パブリッククラウド
パブリッククラウドは利用者を限定せずに個人や複数ユーザ/企業・機関に向けてクラウド機能を提供する形態を指す。
クラウド機能と代表的なサービスは以下より。
| 種類 | 代表的サービス | 説明 | 
|---|---|---|
| SaaS | ICloud, Microsoft Office | サーバからアプリケーションまでを含めたサービスの提供 | 
| PaaS | Firebase, Heroku | アプリケーションの開発基盤/ミドルウェアの提供 | 
| IaaS | AWS, GCP, Azure, Alibaba Cloud | 物理サーバ, ネットワーク, OS等のインフラ部分のリソースのみの提供 |