今回は、Serverless Frameworkについて、まだ利用したことがない人向けにどんなことができるのかを簡単にまとめてみようと思います。

Serverless Frameworkとは

serverless frameworkは、Node.jsを使用して記述されたOSSのWebフレームワークです。開発当初は、AWS Lambdaを構築することを目的に作られていました。

serverless frameworkでは、以下のような特徴があります。

  • Node.js製のOSSである。(無料で誰でも利用できる。)
  • サーバーレスなアプリケーションを簡単に開発・デプロイすることができる。
  • クラウドサービスによらない。(AWS,GCP, Azure, IBM Cloudなど)
  • クラウドサービスが提供しているランタイム言語を利用可能である。

「クラウドサービスが提供しているランタイム言語を利用可能である。」とは、AWS Lambdaが提供しているLambdaのランタイムであれば、利用可能であるということです。

導入するメリット

serverless frameworkを導入するメリットについては、以下のようなことがあげられると思います。

インフラもコードで管理できる

Lambdaのようなコード以外にもインフラもコードで管理できます。インフラ環境もコードで管理することで、環境自身も構成管理できるというのが魅力的です。

デプロイが簡単

AWSのlambdaをデプロイする場合にCloud Formationを利用すると意外と記述量が多くなる傾向にあります。serverless Frameworkであれば設定ファイルという形でLambdaを定義することができ、様々なサーバーレスアーキテクチャのパターンが想定されているため、柔軟で記述量も少なくて済みます。また、serverless deployというコマンド一つでデプロイできます。

プラグインが豊富

プラグインが豊富です。実際、ちょっとしたことをしたいだけでも、自分で実装しなければならない状況がおきると工数が結構かかるので、プラグインが豊富であるというのは、重要です。
プラグイン一覧は、ここから探すことが多いです。

今回は、Serverless Frameworkの概要と使った際の感想などをまとめてみました。普段、フロントエンドの開発などでjavascriptをメインで触っている人などは、利用しやすくあまり学習コストも必要ないので、IAC導入の足がかりにしてみてはどうでしょうか。