Submit Search
Upload
Serverless Framework 使ってる話(node.js)
•
Download as PPTX, PDF
•
3 likes
•
2,060 views
Naoto Teruya
Follow
JAWS-UG沖縄 真夏の熱すぎるサーバレス祭り! 2016年08月 で発表したスライドです。
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 46
Download now
Recommended
AWS Lambda + Python資料 ver0.94 20160825
AWS Lambda + Python資料 ver0.94 20160825
Yasuharu Suzuki
実践サーバレスアーキテクチャ
実践サーバレスアーキテクチャ
太郎 test
サーバーレスの今とこれから
サーバーレスの今とこれから
真吾 吉田
今なぜサーバーレスなのか
今なぜサーバーレスなのか
真吾 吉田
Jaws days2017-ops jaws-2
Jaws days2017-ops jaws-2
Serverworks Co.,Ltd.
Serverless Ninja Warriors [panel]
Serverless Ninja Warriors [panel]
真吾 吉田
May the FaaS be with us!!
May the FaaS be with us!!
真吾 吉田
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
Terui Masashi
Recommended
AWS Lambda + Python資料 ver0.94 20160825
AWS Lambda + Python資料 ver0.94 20160825
Yasuharu Suzuki
実践サーバレスアーキテクチャ
実践サーバレスアーキテクチャ
太郎 test
サーバーレスの今とこれから
サーバーレスの今とこれから
真吾 吉田
今なぜサーバーレスなのか
今なぜサーバーレスなのか
真吾 吉田
Jaws days2017-ops jaws-2
Jaws days2017-ops jaws-2
Serverworks Co.,Ltd.
Serverless Ninja Warriors [panel]
Serverless Ninja Warriors [panel]
真吾 吉田
May the FaaS be with us!!
May the FaaS be with us!!
真吾 吉田
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
Terui Masashi
Serverless ArchitectureにおけるNoSQL Services 〜DynamoDBも良いけどSimpleDBも忘れないであげてください!!〜
Serverless ArchitectureにおけるNoSQL Services 〜DynamoDBも良いけどSimpleDBも忘れないであげてください!!〜
Terui Masashi
サーバーレスにおける開発プロセス戦略(パネルディスカッション用スライド)
サーバーレスにおける開発プロセス戦略(パネルディスカッション用スライド)
真吾 吉田
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
Akira Nagata
実務で活かせる AWSアーキテクチャ設計 〜AWS re:Invent 2016アップデート最新版〜
実務で活かせる AWSアーキテクチャ設計 〜AWS re:Invent 2016アップデート最新版〜
真吾 吉田
AWS Step FunctionとLambdaでディープラーニングの訓練を全自動化する
AWS Step FunctionとLambdaでディープラーニングの訓練を全自動化する
mizugokoro
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪
真吾 吉田
JAWS DAYS 2017 Mafia Talk
JAWS DAYS 2017 Mafia Talk
真吾 吉田
Scalaプロダクトのビルド高速化
Scalaプロダクトのビルド高速化
kuro kuro
VRディープ座談会 introduction ojima
VRディープ座談会 introduction ojima
Hideki Ojima
サーバレスアーキテクチャを実戦投入するにあたって知るべきこと
サーバレスアーキテクチャを実戦投入するにあたって知るべきこと
暁 三宅
Jawsug chiba API Gateway
Jawsug chiba API Gateway
Takuro Sasaki
What is Serverless?
What is Serverless?
Terui Masashi
Serverless Meetup Tokyo #2 オープニング
Serverless Meetup Tokyo #2 オープニング
真吾 吉田
AWS Serverless++
AWS Serverless++
真吾 吉田
Serverless Meetup Tokyo #1 オープニング
Serverless Meetup Tokyo #1 オープニング
真吾 吉田
Serverless Meetup Osaka #2 Intro
Serverless Meetup Osaka #2 Intro
真吾 吉田
AWS CAF & Well-Architected Framework
AWS CAF & Well-Architected Framework
真吾 吉田
Serverless Anti-Patterns
Serverless Anti-Patterns
Keisuke Nishitani
What's new with Serverless
What's new with Serverless
Keisuke Nishitani
MySQL→Aurora移行セミナー
MySQL→Aurora移行セミナー
真吾 吉田
Web技術勉強会 第33回
Web技術勉強会 第33回
龍一 田中
2015年GMOペパボ新卒エンジニア研修 Webオペレーション研修イントロダクション
2015年GMOペパボ新卒エンジニア研修 Webオペレーション研修イントロダクション
Takahiro Okumura
More Related Content
What's hot
Serverless ArchitectureにおけるNoSQL Services 〜DynamoDBも良いけどSimpleDBも忘れないであげてください!!〜
Serverless ArchitectureにおけるNoSQL Services 〜DynamoDBも良いけどSimpleDBも忘れないであげてください!!〜
Terui Masashi
サーバーレスにおける開発プロセス戦略(パネルディスカッション用スライド)
サーバーレスにおける開発プロセス戦略(パネルディスカッション用スライド)
真吾 吉田
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
Akira Nagata
実務で活かせる AWSアーキテクチャ設計 〜AWS re:Invent 2016アップデート最新版〜
実務で活かせる AWSアーキテクチャ設計 〜AWS re:Invent 2016アップデート最新版〜
真吾 吉田
AWS Step FunctionとLambdaでディープラーニングの訓練を全自動化する
AWS Step FunctionとLambdaでディープラーニングの訓練を全自動化する
mizugokoro
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪
真吾 吉田
JAWS DAYS 2017 Mafia Talk
JAWS DAYS 2017 Mafia Talk
真吾 吉田
Scalaプロダクトのビルド高速化
Scalaプロダクトのビルド高速化
kuro kuro
VRディープ座談会 introduction ojima
VRディープ座談会 introduction ojima
Hideki Ojima
サーバレスアーキテクチャを実戦投入するにあたって知るべきこと
サーバレスアーキテクチャを実戦投入するにあたって知るべきこと
暁 三宅
Jawsug chiba API Gateway
Jawsug chiba API Gateway
Takuro Sasaki
What is Serverless?
What is Serverless?
Terui Masashi
Serverless Meetup Tokyo #2 オープニング
Serverless Meetup Tokyo #2 オープニング
真吾 吉田
AWS Serverless++
AWS Serverless++
真吾 吉田
Serverless Meetup Tokyo #1 オープニング
Serverless Meetup Tokyo #1 オープニング
真吾 吉田
Serverless Meetup Osaka #2 Intro
Serverless Meetup Osaka #2 Intro
真吾 吉田
AWS CAF & Well-Architected Framework
AWS CAF & Well-Architected Framework
真吾 吉田
Serverless Anti-Patterns
Serverless Anti-Patterns
Keisuke Nishitani
What's new with Serverless
What's new with Serverless
Keisuke Nishitani
MySQL→Aurora移行セミナー
MySQL→Aurora移行セミナー
真吾 吉田
What's hot
(20)
Serverless ArchitectureにおけるNoSQL Services 〜DynamoDBも良いけどSimpleDBも忘れないであげてください!!〜
Serverless ArchitectureにおけるNoSQL Services 〜DynamoDBも良いけどSimpleDBも忘れないであげてください!!〜
サーバーレスにおける開発プロセス戦略(パネルディスカッション用スライド)
サーバーレスにおける開発プロセス戦略(パネルディスカッション用スライド)
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
実務で活かせる AWSアーキテクチャ設計 〜AWS re:Invent 2016アップデート最新版〜
実務で活かせる AWSアーキテクチャ設計 〜AWS re:Invent 2016アップデート最新版〜
AWS Step FunctionとLambdaでディープラーニングの訓練を全自動化する
AWS Step FunctionとLambdaでディープラーニングの訓練を全自動化する
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪
Anchors Aweigh!! - re:Invent報告@re:Port 2016 大阪
JAWS DAYS 2017 Mafia Talk
JAWS DAYS 2017 Mafia Talk
Scalaプロダクトのビルド高速化
Scalaプロダクトのビルド高速化
VRディープ座談会 introduction ojima
VRディープ座談会 introduction ojima
サーバレスアーキテクチャを実戦投入するにあたって知るべきこと
サーバレスアーキテクチャを実戦投入するにあたって知るべきこと
Jawsug chiba API Gateway
Jawsug chiba API Gateway
What is Serverless?
What is Serverless?
Serverless Meetup Tokyo #2 オープニング
Serverless Meetup Tokyo #2 オープニング
AWS Serverless++
AWS Serverless++
Serverless Meetup Tokyo #1 オープニング
Serverless Meetup Tokyo #1 オープニング
Serverless Meetup Osaka #2 Intro
Serverless Meetup Osaka #2 Intro
AWS CAF & Well-Architected Framework
AWS CAF & Well-Architected Framework
Serverless Anti-Patterns
Serverless Anti-Patterns
What's new with Serverless
What's new with Serverless
MySQL→Aurora移行セミナー
MySQL→Aurora移行セミナー
Similar to Serverless Framework 使ってる話(node.js)
Web技術勉強会 第33回
Web技術勉強会 第33回
龍一 田中
2015年GMOペパボ新卒エンジニア研修 Webオペレーション研修イントロダクション
2015年GMOペパボ新卒エンジニア研修 Webオペレーション研修イントロダクション
Takahiro Okumura
Ansible の CI を drone/Dokcker で試してみた
Ansible の CI を drone/Dokcker で試してみた
Kenta Nishimura
Serverless frameworkを使ってみた話 at #nseg #90
Serverless frameworkを使ってみた話 at #nseg #90
ko ty
RustでWebAssembly
RustでWebAssembly
ceres-inc
Developers Summit 2014 14E-5 Azureでターイムアタック
Developers Summit 2014 14E-5 Azureでターイムアタック
Kazumi Hirose
hbstudy#6LTyuzorock
hbstudy#6LTyuzorock
yuzorock
AWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャ
真吾 吉田
愛せよ、さもなくば捨てよ。
愛せよ、さもなくば捨てよ。
Sho Yoshida
転職とLaravel
転職とLaravel
kasikasikasi
僕の Serverless web application
僕の Serverless web application
祐樹 夏目
AWS でサーバーレスを使っている話.pptx
AWS でサーバーレスを使っている話.pptx
Ryo Higashigawa
Single Command Deployのための gradle-aws-plugin講座
Single Command Deployのための gradle-aws-plugin講座
都元ダイスケ Miyamoto
実プロジェクトの経験から学ぶazureサービス適用パターン
実プロジェクトの経験から学ぶazureサービス適用パターン
Kuniteru Asami
温故知新ローカルに検証環境を作ろう
温故知新ローカルに検証環境を作ろう
武彦 大山
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
Akihiro Kuwano
ご注文は監視自動化ですか?
ご注文は監視自動化ですか?
Masahito Zembutsu
serverless
serverless
Kohei Misu
Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)
Tokuhiro Matsuno
ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版
DIVE INTO CODE Corp.
Similar to Serverless Framework 使ってる話(node.js)
(20)
Web技術勉強会 第33回
Web技術勉強会 第33回
2015年GMOペパボ新卒エンジニア研修 Webオペレーション研修イントロダクション
2015年GMOペパボ新卒エンジニア研修 Webオペレーション研修イントロダクション
Ansible の CI を drone/Dokcker で試してみた
Ansible の CI を drone/Dokcker で試してみた
Serverless frameworkを使ってみた話 at #nseg #90
Serverless frameworkを使ってみた話 at #nseg #90
RustでWebAssembly
RustでWebAssembly
Developers Summit 2014 14E-5 Azureでターイムアタック
Developers Summit 2014 14E-5 Azureでターイムアタック
hbstudy#6LTyuzorock
hbstudy#6LTyuzorock
AWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャ
愛せよ、さもなくば捨てよ。
愛せよ、さもなくば捨てよ。
転職とLaravel
転職とLaravel
僕の Serverless web application
僕の Serverless web application
AWS でサーバーレスを使っている話.pptx
AWS でサーバーレスを使っている話.pptx
Single Command Deployのための gradle-aws-plugin講座
Single Command Deployのための gradle-aws-plugin講座
実プロジェクトの経験から学ぶazureサービス適用パターン
実プロジェクトの経験から学ぶazureサービス適用パターン
温故知新ローカルに検証環境を作ろう
温故知新ローカルに検証環境を作ろう
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
ご注文は監視自動化ですか?
ご注文は監視自動化ですか?
serverless
serverless
Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)
ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版
Serverless Framework 使ってる話(node.js)
1.
Serverless Framework使ってる話 @tnaototo Naoto Teruya RyukyuInteractive,
Inc. Developer
2.
- 琉球インタラクティブ所属 - エンジニアやってます -
インフラも見てます - マネジメントも(ちょっと)やってます - めんどくさがり - ビール大好き - スプラトゥーン大好き - Ingressやってます(が、ルールわかってない) 自己紹介 Naoto Teruya (@tnaototo)
3.
- なんでServerless Framework? -
v0.5.6の使い方 - 失敗したこと 話すこと
4.
- AWS Lambda
+ Node.jsでの開発 - v1.0について 話さないこと
5.
- AWS Lambda
+ Node.jsでの開発 - v1.0について 話さないこと
6.
本スライド及びDemoは Serverless Framework v0.5.6 で記載しています 注意点
7.
- 導入経緯 - Serverless
Frameworkとは - Demo - 失敗したことなどなど - まとめ アジェンダ
8.
導入経緯
9.
- 行動履歴を取得したい 導入経緯
10.
- 行動履歴を取得したい - リアルタイムじゃないからSQSに 導入経緯
11.
- 行動履歴を取得したい - リアルタイムじゃないからSQSに -
EC2で受け口作るのはちょっと・・ 導入経緯
12.
- 行動履歴を取得したい - リアルタイムじゃないからSQSに -
EC2で受け口作るのはちょっと・・ - API Gateway + AWS Lambdaで動 作確認はできている(手動) 導入経緯
13.
イメージ
14.
- 行動履歴を取得したい - リアルタイムじゃないからSQSに -
EC2で受け口作るのはちょっと・・ - API Gateway + AWS Lambdaで動 作確認はできている(手動) - 手動でポチポチしたくない 導入経緯
15.
- 行動履歴を取得したい - リアルタイムじゃないからSQSに -
EC2で受け口作るのはちょっと・・ - API Gateway + AWS Lambdaで動 作確認はできている(手動) - 手動でポチポチしたくない - コードで管理したい(簡単に・・) 導入経緯
16.
ググる
17.
ありました
18.
Serverless Framework
19.
https://github.com/serverless/serverless
20.
- API Gateway、Lambdaのデプロイ -
Lambdaの実行 - Lambdaのログ表示 - ステージでの管理 - IAM Roleの作成 などなど Serverless Frameworkでできること
21.
- API Gateway、Lambdaのデプロイ -
Lambdaの実行 - Lambdaのログ表示 - ステージでの管理 - IAM Roleの作成 などなど Serverless Frameworkでできること
22.
- 行動履歴を取得したい - リアルタイムじゃないからSQSに -
EC2で受け口作るのはちょっと・・ - API Gateway + AWS Lambdaで動 作確認はできている(手動) - 手動でポチポチしたくない - コードで管理したい(簡単に・・) 導入経緯
23.
- 行動履歴を取得したい - リアルタイムじゃないからSQSに -
EC2で受け口作るのはちょっと・・ - API Gateway + AWS Lambdaで動 作確認はできている(手動) - 手動でポチポチしたくない - コードで管理したい 導入経緯 解消できた
24.
ステキすぎる・・
25.
Demo
26.
- インストール - Lambdaファンクション作成 -
Lambdaデプロイ - API Gatewayにデプロイ ※事前に実行用IAM Userを作る必要あり Demo
27.
$ npm install
serverless@0.5.6 -g $ sls -v $ sls project create -s dev $ tree $ sls function create functions/demo $ tree $ sls function deploy -s dev $ sls endpoint deploy -s dev Demo
28.
ステキさが伝わりました?
29.
Demo その2
30.
- API +
簡易フォーム - もちろんサーバーレス! - G◯◯gle F◯rmでもいいけど、 独自デザインで(ry - 落ちてると面倒なことに - クレームになりやすい Demo その2 – お問い合わせAPI
31.
Demo その2 –
お問い合わせAPI
32.
Demo その2 –
お問い合わせAPI
33.
ソース https://github.com/naotty/contact-api ※不具合があっても自己責任でお願いします Demo その2 –
お問い合わせAPI
34.
事前準備 - Serverless Framework用IAM
User - SNS Topic - SubscriptionはEmail Demo その2 – お問い合わせAPI
35.
デプロイ・動作確認 (Readmeの内容をなぞります・・) Demo その2 –
お問い合わせAPI
36.
ステキですね
37.
失敗したことなどなど
38.
- _metaにあるファイルはデフォルト で.gitignore されているので、作り直し で消える 失敗したことなどなど
39.
- プロジェクトを消す 失敗したことなどなど - $
sls project remove で消えることは 消えるが、全ステージが消える・・ - _metaの中身は消えるので、ちゃん とステージを指定する - $ sls project remove -s dev
40.
- API Gatewayデプロイ時の
-a オプション 失敗したことなどなど - このオプションを付けないとOPTIONS メソッドが生成されず、CORSやx-api- keyカスタムヘッダーを使う時に403エ ラーになる
41.
- 新しくステージを作る 失敗したことなどなど - 変数ファイルが作成時に作られるため、 それを見る箇所があるとエラーで止まる -
対策 CloudFormation無しで作る $ sls project create -c true 変数セットしてから $ sls resources deploy -s dev
42.
- 付与しないといけない権限が強い - APIキーの設定は手動 -
API Gateway、Lambdaの削除は手動 - 消えゆくv0.5・・ その他
43.
- Serverless Framework使えば API
Gateway・Lambdaをコード管理可能 - デプロイも簡単 - サーバーレス最高 まとめ
44.
質問ありますか?
45.
ご清聴ありがとうございました
46.
焦るんじゃない、 俺は開発に集中したいだけなんだ
Editor's Notes
今やっているプロジェクトでServerless Frameworkというサーバーレスそのものみたいな名前のフレームワークを使っています。 今日は、選定理由、デモを交えてその使い方と失敗したことなどをお話ししして、便利さをお伝えできればと思っています
Node.jsって書いてますけど、そこには全く触れませんw
V1.0がbetaで出ていますが、業務では使っていないので触れません。 時間が無くて話が出来るだけのネタもないので・・
せっかくなのでサーバーレスでやりたい
特にAPI Gateway
CloudFormationまではちょっとツライ・・
サーバレスなアプリケーションサービスを構築するためのフレームワーク 元々あったJAWS Frameworkのリニューアル版
これができちゃうと
実際に使ってみたらホント簡単にコードで管理できるので導入することにしました。もちろん、全部というわけでは無いのですが・・
で、口頭だけだとイマイチ伝わらないと思いますので、どのぐらい簡単に使えるのかをデモします。
こんな感じです IAM Userを事前に作っておく必要があります。 こんな感じですが、Role作ったりCloudFormationであれこれやったりするので、強めの権限が必要です。 公式だとAdmin権限を与えるとか。 今回はAdminでやっておきます。
コマンドはこれだけです。 今回はNode.jsがインストール済みのEC2でやりたいと思います。 (画面切り替え) ログの表示もやるか
ま、ですよね。ふーんって感じですよね。
サンプル的なのだけやっても面白く無いので、実務で使えそうなものもやります。
ちゃんと通知が飛ぶようにしておかないとまずいやつ 以外にめんどくさい
S3にフォームを置いてAjaxで〜メール通知って構成です
で、さくっと作りたいところですが時間があれなので、料理番組っぽく、事前に作ったソースを使って、デプロイのところだけをやっていこうと思います。 ただ、中身は大したことやってません。
Githubにアップしていますので、興味を持った方はどうぞ
SNSのタブを見せる
ターミナルに切り替え
リポジトリのreadmeに内容を書いています。 リポジトリに入っていても問題ないものは.gitignoreから外したらいいと思います。
基本はステージ指定
時間が余ったら、ステージの作成、v2-functionの作成
Download now