2023.4.16
【IT入門 Vol.1】クラウドの形態
今回はクラウドの形態について解説します。
クラウドの形態を理解することで、流行している開発技法であるサーバーレスの概念についても理解が深まると考えております。
1.クラウドとは
まずはクラウドについて解説していきたいと思います。
クラウドとはクラウドコンピューティングの略で、ネットワークを通じてサーバーやストレージなどのITリソースやアプリケーションを利用できるサービスを指します。
通常サーバーや共有ストレージを利用する際には、サーバーとなるコンピュータやNASサーバー、ネットワークなどのハードウェアを自前で用意して、必要なソフトウェアのインストールなどの準備を自分で行う必要がありました。
しかしながら、クラウドサービスを利用することで、ハードウェアやサービスによってはソフトのインストールなどを全てクラウド業者が行なうため、ユーザーは工数やコストを抑えてITリソースを使用することができます。
ただ、サービスによってと書いたのは、一口にクラウドと言っても様々なクラウドの種類があり、その種類によって、構築段階のどこまでをクラウド業者が担い、利用者が担うかが変わってきます。
次項以降でその全体像を理解していきましょう。
2.アプリケーションを実現するために必要な構成
みなさんがコンピュータで何か作業をしたいという時、何かしらのアプリケーションを立ち上げるかと思います。
そのアプリケーションがコンピュータ上で動作するためには下記の要素が必要になります。
・ハードウェア:パソコンやスマートフォンなどの機器そのもの
・OS:ハードウェアを利用できるように基本的な機能を提供するソフトウェア
・ミドルウェア:アプリケーションを実現するために必要な汎用的な機能を提供するソフトウェア
・アプリケーション:ユーザーが操作するソフトウェア
この4要素がコンピュータ上で構成されることでみなさんはアプリケーションを使用してコンピュータで何らかの作業を実現することができています。

3.クラウドの種類
アプリケーションが実現されるための構成を見ていきましたが、クラウドサービスは上記の構成の一部または全部をインターネット上で担うサービスとなります。
どの部分のITリソースをクラウドサービスが担うかによって 呼び方が変わってきます。
一つずつ見ていきましょう。
①IaaS(Infrastructure as a Service)
IaaSサーバーのハードウェアやネットワークなどのインフラ部分を担うサービスになります。アプリケーションの構成の部分ではハードウェアの部分までを担うサービスとなっています。
AWSのEC2などはクラウド上にコンピュータやネットワークなどを構築することでクラウド上にサーバーを構築するサービスとなっています。
②PaaS(Platform as a Service)
PaaSはデータベースや開発に必要なミドルウェア部分までを担うクラウドサービスになります。
AWSのRDSはデータベースをOS以下の構成を管理することなく、データベースとしての機能を提供しております。
AWS Elastic Beanstalkは、様々な実行環境を自動で構築するサービスで、RDS同様ハードウェアからミドルウェアまでをAWSが提供しており、利用者側で管理する必要はありません。
③SaaS(Software as a Service)
SaaSはアプリケーションまでを担うクラウドサービスになります。
IaaSやPaaSはより開発者よりのサービスでしたが、SaaSはすでに業務ロジックを実現するアプリケーションが開発されており、利用者のアカウント設定などによりしようすることができます。
Google workspaceやMicrosoft Office 365などは業務上で必要なソフトウェアをクラウド上で全て提供しており、アプリケーションはもちろん、ミドルウェア以下ハードウェアまでを気にすることなく、利用することができます。
④その他(FaaSやBaaS)
他にもサーバーレス開発に特化したFaaS(Function as a Service)やBaaS(Backend as a Service)などがあります。
ファンクションやバックエンドの機能をクラウド上から提供することで、ミドルウェア以下の階層を気にすることなくビジネスロジックを実装することができます。
これにより開発スピードが上がり、メンテナンスの工数が下がります。これがサーバーレスの良さになるかと思います。
サーバーレスについては次回詳しく解説していきたいと思います。
本日はここまでになります。
最後まで閲覧くださりありがとうございました。