【プレビュー版】AWS Serverless Application Repositoryをためしてみる 〜アプリケーションの使用〜 #reinvent

クラウドでコスト削減はこちら

どうも!大阪オフィスの西村祐二です。

AWS Serverless Application Repository はre:Invent 2017にて公開されたサーバーレスアプリケーションのためのクラウドリポジトリサービスです。

現在(2017/12/27)のところ Preview となっているため、利用申請を出して通過するまで利用できません。ということで Preview が通過したので、早速使ってみたいと思います。

AWS Serverless Application Repository にアクセスしてみる

▼Lambdaのコンソールからアクセスしていきます。
「関数の作成」をクリックします。

▼「サーバーレスアプリケーションのレポジトリ」という項目が追加されているのでチェックします。
利用できるサーバーレスアプリケーションが表示されます。
すでに多くのサーバーレスアプリケーションが利用できるようです。

▼ちなみにAWS Serverless Application Repositoryへのアクセス(GUIから)は今のところ、Lambdaからのみ?のようです。
サービスからは見当たりませんでした。

サーバーレスアプリケーションをためしてみる

AWS Serverless Application Repository に「hello-world-python3」があるので、これを自分の環境にデプロイしてみます。

▼「hello-world-python3」をクリックします。

▼下記設定画面に移動します。
「IdentityNameParameter」に入力が必要のようです。

確認できる設定をそれぞれ見ていきます。

Configuration

ここでは、AWS CloudFormationで作成されるサーバーレスアプリケーションのスタックの名前と、その他のパラメーターの設定を行います。

Details

ここではサーバーレスアプリケーションの詳細が確認できます。
ソースのURLも記載されており、デプロイする前にプログラムを確認できます。
ドキュメントに一般公開するアプリケーションのみ必要と書いてあるので、一般公開する場合はソース非公開は難しいかもしれません。

Permissions

デプロイするアプリケーションで利用されるIAMポリシーが表示されます。
どのサービスの権限が許可されるのか事前に確認できるのはGoodですね。
今回の場合はSESの権限が付与されるようですね。

Template

AWS SAMのテンプレートファイルがここから確認できます。

Readme

Readmeがここから確認できます。

License

ライセンス情報が確認できます。簡単にライセンスを確認できるのはいいですね。

自分の環境にデプロイしてみる

さっそくデプロイしてみます。

▼パラメーターに適当な設定を行い、「Deploy」ボタンをクリックします。

▼下記画面になり、デプロイのステータスを確認できるようになっています。
また、右上の「View CloudFormation Stack」からCloudFormationのサービス画面にいき、スタックの状況を確認できます。

▼デプロイが完了したら下記画面のようになります。

▼Lambdaの関数一覧でも作成された関数が確認できます。

▼デプロイされたLambda関数の中を確認すると、テンプレートファイルやプログラムファイルもあるので、
デプロイされてから、個人でカスタマイズなどもできそうです。

サーバーレスアプリケーションの削除

AWS SAMやServerless Frameworkと同じように、CloudFormationにスタックが作成されているので、
このスタックを削除すれば、AWS Serverless Application Repositoryでデプロイしたサーバーレスアプリケーションも削除できます。

さいごに

いかがだったでしょうか。

AWS Serverless Application Repositoryで公開されているアプリケーションの利用の流れをつかむことができました。
とても簡単にサーバーレスアプリケーションを利用することができました。

次は実際にアプリケーションを公開してみたいと思います。

誰かの参考になれば幸いです。

Invent2017japan portal