PaaS(Platform as a Service)とは

Paasとは「サーバ機器などのハードウェア」「ネットワーク環境」「OS」までの管理メンテナンス作業を提供してくれるサービスです。

代表的なサービス

代表的なPaaSにはHeroku、AWS ElasticBeanstalk、GCP APP Engine、Azure App Service、などがあります。

基本情報予想問題

基本情報の予想問題集ではPaaSの責任範囲を問われる問題がありました。そこでわかりにくかったのがアプリケーションサーバOSの脆弱性というものでした。私はElastic Beanstalkの運用経験がありますがアプリケーションサーバOSはAWS側で提供されたいくつかのバージョンから選んで自分で設定するという仕様とBeanstalk側で自動的に更新していくという機能があります。問題では「アプリケーションサーバOSの脆弱性はどの組織が対処するか?」という問われ方をしており、アプリ管理会社、PaaS提供会社という選択肢があったのですが迷いました。結果としてはPaaS提供会社が最新バージョンのOSを提供するというところで落ち着いていたのでアプリケーションサーバのOS脆弱性はPaaS提供会社が対処するということでした。私の経験で手動での更新経験があったので迷いましたが、基本情報でPaaSについて問われる際はアプリケーションサーバOSはPaaS提供会社が対処するという回答をすれば良さそうです。

AWS ElasticBeanstalkでできること

ロードバランサ+EC2(コンテナも)の素早い構築、管理、デプロイができます。RDSは管理に含めないことが推奨されています。(Beanstalkで管理することもできますが運用中に削除してしまうリスクが高まるため非推奨になっています。)

またEC2内の言語(PHPやJavaなど)、サーバアプリ(Apache、NginX、Tomcatなど)の設定やバージョン管理もBeanstalk側で提供されているのでこの辺りはBeanstalk管理画面やYAMLファイルなどで簡単にバージョン管理ができます。

さらにアプリケーションディレクトリのバージョン管理機能も標準で装備されているので、一つ前のバージョンに戻すなどもGUIで簡単にできます。EBコマンドという専用のコマンドラインもあるのでローカルからのデプロイもこちらでできたり、各種CI/CDツールとも連携ができます。

前段にCloudFrontを配置して静的ファイルをキャッシュさせアプリ部分のみのアクセスをBeanstalk管理下のオリジンサーバに通信させることも可能です。

IaaS、SaaSとの違い

具体的にサービス名を出した方がわかりやすいかもしれません。IaaSの代表例はAWS、GCP、Azureです。SaaSの代表例はGoogle WorkSpace、Microsoft365などになります。こうしてみるとPaaSが一番触る人が少ない(開発者限定の)分野になるかもしれませんね。


投稿日

カテゴリー:

,

投稿者:

タグ:

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)