クラウド技術に関する世界観です。
クラウドとは、ネットワーク上のサービスやデータを使い、今までローカルのコンピュータでやっていた操作や仕事を、「ネットワーク上のソフトウェア」や「ネットワーク上のデータ」を使ってやりとりする、という新しいソフトウェアの形態。
たとえば、Microsoft Officeはクラウドではないが、GmailやYahoo!メールのようなものはクラウド。
単に「ネットワークで操作する」というWebアプリケーションは、昔から存在したが、「今までローカルでやっていたことをネットワークを通じて行う」というところで、今までの考え方とは違うソフトウェアの形態になる。たとえば、ストレージサービスのGoogle DriveやWebによるOfficeのGoogleドキュメントは、今までローカルでやっていたファイルの保存や書類の編集をネットワークで行うことができる。こうした発想を言い表す言葉として、「クラウド」という言葉が生まれた。
後日注記:基本的に、「今までローカルでやっていたことをリモートで行う」ということを指す言葉がクラウド。実際にはローカルでデータを保存するのではなく、クラウド上にデータを保存したり、ローカルのマシンだけでアプリの処理が完結するのではなく、クラウドのサーバーと通信し合いながら、サーバーがあってはじめて動作したりするようなアプリケーションのことをクラウドアプリケーションと呼ぶ。
また、クラウドはソフトウェアを開発・提供する側に大きな恩恵をもたらす。たとえば、自前で2ちゃんねるのような大規模な掲示板を作って運用したい、といった時に、掲示板の利用者全員の利用を可能にするだけの「大規模なWebサーバ」が必要だが、それを自前で自宅サーバで用意することは難しい。
この場合、GoogleやAmazonの「インフラ系クラウド資源」を使うことで、まるで銀行に融資を頼むかのように、クラウドインフラを貸してもらうことが出来る。
Googleのような大規模なサーバ資源が、個人や小規模な組織に対しても開かれて提供されるようになったのである。
クラウドサーバでは、データセンターの中の「仮想サーバ」という考え方をする。利用者は仮想サーバを使うことで、いつでも仮想サーバのスケールを拡張したり、使わなくなったら縮小できる。よって、キャンペーン中などでもっと多くのサーバ資源が必要になったら、迅速に仮想サーバを拡張することができる。この「仮想サーバを拡張できる」という考え方が、クラウドサーバの大きな利点である。
クラウドは分野と提供されるサービスによって3つに区分される。
サービス | 説明 |
---|---|
SaaS (Software as a Service) | クラウド上のソフトウェアサービス。 GmailやGoogleドキュメントのようなもの。 |
PaaS (Platform as a Service) | クラウド上のプラットフォームサービス。 Googleなどのクラウドアプリケーション開発環境を使って、 自前のクラウドアプリケーションを開発・提供できる。 |
HaaSまたはIaaS (Hardware / Infrastracture as a Service) | クラウド上のハードウェア・インフラサービス。 クラウド上の大規模サーバー資源を自分で利用できる。 |
さらに最近はCaaS(Container as a service)など用語がどんどん増えている。
クラウドサーバのデファクトスタンダードになりつつあるのが、Amazon AWS。
AWSを参照のこと。
現在では、会社の業務で使われるシステムも、クラウドで作られることが一般的になりつつある。
クラウドでは、マシンのリソース資源をネットワーク上に置き、ネットワーク上のクラウドシステムに顧客企業の社員がアクセスすることで業務を行う。
そもそも、エンタープライズの商用システムでは、ネットワーク上にシステムを置いて、そのネットワークに社員がアクセスすることで業務を行うことは一般的だった。クラウドはその新しい形であると言える。
基本的に、パブリッククラウドは専用のハードウェアを所有せず、必要な時だけシステムリソースをネットワークで利用するクラウド体系。
これに対してプライベートクラウドは、自社専用のクラウド環境を構築し、自社向けに提供するクラウド体系。
ハイブリッドクラウドはこの両者のいいとこどりであり、両者を組み合わせてクラウド環境を構築する。
オンプレ(オンプレミス)とは、システムを自社の内部に設置して利用すること。
開発した業務システムを、その業務システムの利用者が私有する施設内(企業の場合は企業内)に設置し、自社運用を行うことをオンプレミスと呼ぶ。
最近はクラウドとオンプレのどちらを使うかを比較し、カスタマイズ性やセキュリティなどの観点からオンプレを選ぶこともある。
逆に、クラウドは利用に基づいて課金されるため、初期投資のためのコストを抑えられるというメリットがある。
現代のパソコン業務では、クラウド上のリソースを使うことが一般的になりつつあります。
たとえば、ローカルのストレージではなく、オンラインのクラウド上のストレージにファイルやデータを保管し、ログインすればどのデバイス(パソコン・スマホ)からでもデータにアクセスできるようにする、クラウドストレージは、家庭内や業務において一般的になりつつあります。
クラウド上にファイルを保存することで、ひとりだけではなく、複数の人と同じファイルを参照したり編集したりできます。スマホで撮った写真をパソコンに移すために、このようなクラウドストレージを介するといった利用の仕方もあります。
また、ストレージだけではなく、プログラマであれば、プログラムの開発やビルドのために、ローカルの物理マシンではなく、クラウド上のハードウェアインフラを使うこともあります。
巨大なプログラムのビルドには時間がかかります。ビルドを行う際に、ローカルのマシンリソースに頼るのではなく、クラウド上のマシンリソースに頼ることで、ビルドを効率化できます。
このように、クラウドは単なるWebサービスやWebアプリケーションといった概念にとどまらず、リモートで行われるネットワーク上の補助的なマシンリソースという概念にも及びます。
構成管理や継続的インテグレーションを参照のこと。
分散ファイルシステムを参照のこと。
クラウドサービスを参照のこと。
クラスタ・分散・高信頼システムを参照のこと。
メインフレームも参照のこと。
オンラインストレージも参照のこと。