クラウドについて
講義の中で「heroku」のサービスを使用するので、
それに関連してクラウドについて概要を解説。
クラウドとは
クラウドコンピューティングの略です。
コンピュータの資源を使いたい時に使いたい分だけ使うことのできる仕組みのことです。
要は、自分で一から用意しなくても、
インターネットを使用してあらかじめ用意されたサービスを使えるような仕組みのことです。
クラウドとは、雲という意味です。
物理的にハードがどこにあるか意識せずに使うことができるので、
隠れているというところから「クラウド」という名前になったらしいです。
実際にはデータセンターと呼ばれる、
サーバーがいくつも格納されている場所に物理的に配置されています。
3つのサービスモデル
クラウドで提供されているサービスには大きく分けて3種類あります。
- IaaS
- PaaS
- SaaS
の3つです。
IaaS
Infrastructure as a Service の略です。
アイアースと呼びます。
インフラを提供してくれるクラウドサービスのことです。
インフラとは、基盤という意味で、
コンピュータの世界でいえば、ストレージ(HDD, SSD)、メモリ、CPU
などのハードウェアが該当します。
3つのサービスモデルの中では最も自由度が高いものになりますが、
有効に使いこなすにはインフラの知識が必要です。
代表的なIaaSは
等があります。
PaaS
Platform as a Service の略です。
アプリケーション稼働のプラットフォームを提供してくれるサービスのことです。
例えば、プログラム言語やDB、開発フレームワーク、ライブラリ、モジュールなどです。
開発環境の構築をせずにすぐに開発を始めることができるのが利点です。
ただし、使用できる環境があらかじめ決められているので、
自由度は自分で構築するよりも下がります。
代表的なPaasは
- Azure
- Google App Engine
等があります。
SaaS
Software as a Service 略です。
あらかじめ作成されたソフトウェアを提供するタイプです。
例えば、G-mailや、office365など、
インターネットを利用して行うことができるサービスは全てSaaSに当たります。
これら3つのサービスは、どれが良い、というものではなく、
目的や予算に合わせて最適なものを選んでいく形になります。
クラウドとオンプレミス
クラウドの対比にあたる言葉として、「オンプレミス」があります。
オンプレミスは、クラウドに頼らず、自分たちでサーバーを調達し、
サービスを構築することをいいます。
クラウドとオンプレミスで、どちらにした方が良い、というものはなく、
ケースバイケースで目的や状況に合わせて使い分けることになります。
以下はクラウドと比較したときのオンプレミスの特徴です。
メリット
- 自由度が高い
- 自分たちでメンテナンスできる
- セキュリティ面でクラウドよりも安心
デメリット
- 調達までに時間がかかる
- 場所の確保が必要
- 運用のコスト(電気代、ハードの保守費用など)がかかる
などなど。
メリットもいろいろありますが、
世間的にはクラウドで環境を作ることの方が多くなっています。
サービスによってクラウドとオンプレミスをうまく使い分ける場合もあり、
ハイブリッドクラウドなどと呼ばれることもあります。
heroku
講義の中でherokuを使用するので、概要を少しだけ解説します。
herokuは3つのサービスモデルの中のPaaSに当たります。
Java, PHP, Ruby, Pyshonなどの言語が用意されています。
また、あらかじめ作成したWebアプリケーションをデプロイ(動作できる状態に設定)
して、動作させることもできます。
実際に試してみよう
IaaSやPaaSは、実際に試してみたほうが理解が深まると思います。
AmazonのAWS、MicrosoftのAzure、など
基本的には有料ですが、登録してから無料で使用できる期間もあります。
クラウドについてもっと勉強したいのであれば、
実際にアカウントを作成して試すことで、理解を深めることができるでしょう。