SlideShare a Scribd company logo
1 of 17
Download to read offline
そろそろLambda

(CI/CD編)
Copyright © 2018 Akira Koyasu. All rights reserved.
こんばんは
• ⼦安 輝 (@akirakoyasu)
• 主にサーバーサイド
• Ruby on Rails
• 分析基盤
• CI/CD周りの整備
2
Copyright © 2018 Akira Koyasu. All rights reserved.
今⽇のお話
3
AWS LambdaをCI/CDする
Copyright © 2018 Akira Koyasu. All rights reserved.
というのも
4
そろそろLambda使っていきたい
今まで使ってきた実⾏環境と⽐べて

考えないといけないことがいくつかある
Copyright © 2018 Akira Koyasu. All rights reserved.
ファンクションを開発する
5
コード管理
CI/CD
監視
権限
←
Copyright © 2018 Akira Koyasu. All rights reserved.
やりたいことの確認
6
https://flic.kr/p/o7uhHG
Copyright © 2018 Akira Koyasu. All rights reserved.
やりたいことの確認
7
ファンクションを書いて、リポジトリへpushしたら、

チェンジセットのステータスによって

確認環境やら本番環境やらにデプロイできる
Copyright © 2018 Akira Koyasu. All rights reserved.8
Copyright © 2018 Akira Koyasu. All rights reserved.
何が難しいのか
9
環境を⽤意すること
扱う単位が⼩さいこと
Copyright © 2018 Akira Koyasu. All rights reserved.
SAM
10
https://github.com/awslabs/serverless-application-model
Copyright © 2018 Akira Koyasu. All rights reserved.
SAM Local
11
https://github.com/awslabs/aws-sam-local
https://github.com/lambci/docker-lambda
Copyright © 2018 Akira Koyasu. All rights reserved.
CodeBuild / CodePipeline
12
https://aws.amazon.com/jp/codebuild/
https://aws.amazon.com/jp/codepipeline/
Copyright © 2018 Akira Koyasu. All rights reserved.13
https://flic.kr/p/97LG6ehttps://flic.kr/p/B1wD1u
Copyright © 2018 Akira Koyasu. All rights reserved.
LambdaのCI/CD
14
Copyright © 2018 Akira Koyasu. All rights reserved.
まだ悩みはある
• PRの確認環境どうしよう

(特に依存リソースの⽤意)
• CodePipelineに必要な

権限がややこしい
• CloudFormation(SAM)に

必要な権限がややこしい
• CodeBuild/CodePipelineが

思ったより不器⽤
15
https://flic.kr/p/aCBtW6
https://flic.kr/p/bkmJ3P
Copyright © 2018 Akira Koyasu. All rights reserved.17
Thank you!

More Related Content

What's hot

DeveloperSuccess として何を届けられるか、様々な分野を経た先として何ができるか
DeveloperSuccess として何を届けられるか、様々な分野を経た先として何ができるかDeveloperSuccess として何を届けられるか、様々な分野を経た先として何ができるか
DeveloperSuccess として何を届けられるか、様々な分野を経た先として何ができるか
bitbank, Inc. Tokyo, Japan
 
統合ソフトウェアプラットフォームVitisとFPGA無償利用環境「ACRiルーム」のご紹介
統合ソフトウェアプラットフォームVitisとFPGA無償利用環境「ACRiルーム」のご紹介統合ソフトウェアプラットフォームVitisとFPGA無償利用環境「ACRiルーム」のご紹介
統合ソフトウェアプラットフォームVitisとFPGA無償利用環境「ACRiルーム」のご紹介
Jun Ando
 

What's hot (20)

[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
 
5分でわかる Capabilities と Privilege + KubeCon Recap
5分でわかる Capabilities と Privilege + KubeCon Recap5分でわかる Capabilities と Privilege + KubeCon Recap
5分でわかる Capabilities と Privilege + KubeCon Recap
 
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
Recap: [Code fresh] Deploying to kubernetes thousands of times per day @kuber...
 
Storylineでデザインする心地よい会話体験
Storylineでデザインする心地よい会話体験Storylineでデザインする心地よい会話体験
Storylineでデザインする心地よい会話体験
 
『コンテナ疲れ』と戦う、k8s・PaaS・Serverlessの活用法
『コンテナ疲れ』と戦う、k8s・PaaS・Serverlessの活用法『コンテナ疲れ』と戦う、k8s・PaaS・Serverlessの活用法
『コンテナ疲れ』と戦う、k8s・PaaS・Serverlessの活用法
 
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2Certified XXX まわりのはなし Kubernetes Invitational Meetup #2
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2
 
Node.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたことNode.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたこと
 
Kube con + cloudnativecon 2017 社内報告会(外部公開用)
Kube con + cloudnativecon 2017 社内報告会(外部公開用)Kube con + cloudnativecon 2017 社内報告会(外部公開用)
Kube con + cloudnativecon 2017 社内報告会(外部公開用)
 
DeveloperSuccess として何を届けられるか、様々な分野を経た先として何ができるか
DeveloperSuccess として何を届けられるか、様々な分野を経た先として何ができるかDeveloperSuccess として何を届けられるか、様々な分野を経た先として何ができるか
DeveloperSuccess として何を届けられるか、様々な分野を経た先として何ができるか
 
AWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャAWSによるサーバーレスアーキテクチャ
AWSによるサーバーレスアーキテクチャ
 
Cloud Foundry Container-to-Container Networking
Cloud Foundry Container-to-Container NetworkingCloud Foundry Container-to-Container Networking
Cloud Foundry Container-to-Container Networking
 
TypeScriptでCLIアプリケーション開発
TypeScriptでCLIアプリケーション開発TypeScriptでCLIアプリケーション開発
TypeScriptでCLIアプリケーション開発
 
KustomizeとGitHub Actionsを利用したUbieのデプロイの仕組み
KustomizeとGitHub Actionsを利用したUbieのデプロイの仕組みKustomizeとGitHub Actionsを利用したUbieのデプロイの仕組み
KustomizeとGitHub Actionsを利用したUbieのデプロイの仕組み
 
Kubernetesと暮らすRancherな生活
Kubernetesと暮らすRancherな生活Kubernetesと暮らすRancherな生活
Kubernetesと暮らすRancherな生活
 
Sumo logic meetup 2020 jan
Sumo logic meetup 2020 janSumo logic meetup 2020 jan
Sumo logic meetup 2020 jan
 
統合ソフトウェアプラットフォームVitisとFPGA無償利用環境「ACRiルーム」のご紹介
統合ソフトウェアプラットフォームVitisとFPGA無償利用環境「ACRiルーム」のご紹介統合ソフトウェアプラットフォームVitisとFPGA無償利用環境「ACRiルーム」のご紹介
統合ソフトウェアプラットフォームVitisとFPGA無償利用環境「ACRiルーム」のご紹介
 
MLCT#12 使われる機能目指して 測ったり試したり
MLCT#12 使われる機能目指して 測ったり試したりMLCT#12 使われる機能目指して 測ったり試したり
MLCT#12 使われる機能目指して 測ったり試したり
 
20190604 Containerized MagicOnion on kubernetes with Observability with New R...
20190604 Containerized MagicOnion on kubernetes with Observability with New R...20190604 Containerized MagicOnion on kubernetes with Observability with New R...
20190604 Containerized MagicOnion on kubernetes with Observability with New R...
 
サーバーレス・アーキテクチャ概要
サーバーレス・アーキテクチャ概要サーバーレス・アーキテクチャ概要
サーバーレス・アーキテクチャ概要
 
Istioサービスメッシュ入門
Istioサービスメッシュ入門Istioサービスメッシュ入門
Istioサービスメッシュ入門
 

Similar to そろそろLambda(CI/CD編)

drecomにおけるwinning the metrics battle
drecomにおけるwinning the metrics battledrecomにおけるwinning the metrics battle
drecomにおけるwinning the metrics battle
Mitsuki Kenichi
 

Similar to そろそろLambda(CI/CD編) (20)

Dockerで始める開発環境構築
Dockerで始める開発環境構築Dockerで始める開発環境構築
Dockerで始める開発環境構築
 
Datadog monitoring with HashiCorp
Datadog monitoring with HashiCorpDatadog monitoring with HashiCorp
Datadog monitoring with HashiCorp
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
 
20分でわかるgVisor入門
20分でわかるgVisor入門20分でわかるgVisor入門
20分でわかるgVisor入門
 
Datadog monitoring with HashiCorp stack
Datadog monitoring with HashiCorp stackDatadog monitoring with HashiCorp stack
Datadog monitoring with HashiCorp stack
 
20180221 AWS Black Belt Online Seminar AWS Lambda@Edge
20180221 AWS Black Belt Online Seminar AWS Lambda@Edge20180221 AWS Black Belt Online Seminar AWS Lambda@Edge
20180221 AWS Black Belt Online Seminar AWS Lambda@Edge
 
愛せよ、さもなくば捨てよ。
愛せよ、さもなくば捨てよ。愛せよ、さもなくば捨てよ。
愛せよ、さもなくば捨てよ。
 
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドBuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
 
Apache Big Data Miami 2017 - Hadoop Source Code Reading #23 #hadoopreading
Apache Big Data Miami 2017 - Hadoop Source Code Reading #23 #hadoopreadingApache Big Data Miami 2017 - Hadoop Source Code Reading #23 #hadoopreading
Apache Big Data Miami 2017 - Hadoop Source Code Reading #23 #hadoopreading
 
Kubernetes Cluster Adminやってました #con_rider
Kubernetes Cluster Adminやってました #con_riderKubernetes Cluster Adminやってました #con_rider
Kubernetes Cluster Adminやってました #con_rider
 
最新ゲームを支える文言
最新ゲームを支える文言最新ゲームを支える文言
最新ゲームを支える文言
 
Eight meets Realm
Eight meets RealmEight meets Realm
Eight meets Realm
 
Soracom gateによるルータの向こう側
Soracom gateによるルータの向こう側Soracom gateによるルータの向こう側
Soracom gateによるルータの向こう側
 
2018/7/27 SAP on AWS お客様事例セミナー@大阪(BeeX資料2/2)
2018/7/27  SAP on AWS お客様事例セミナー@大阪(BeeX資料2/2)2018/7/27  SAP on AWS お客様事例セミナー@大阪(BeeX資料2/2)
2018/7/27 SAP on AWS お客様事例セミナー@大阪(BeeX資料2/2)
 
(AWS DevOps祭り 2018) AWS Management Toolsサービスアプデートのご紹介
(AWS DevOps祭り 2018) AWS Management Toolsサービスアプデートのご紹介(AWS DevOps祭り 2018) AWS Management Toolsサービスアプデートのご紹介
(AWS DevOps祭り 2018) AWS Management Toolsサービスアプデートのご紹介
 
drecomにおけるwinning the metrics battle
drecomにおけるwinning the metrics battledrecomにおけるwinning the metrics battle
drecomにおけるwinning the metrics battle
 
rablについてざっくりだけ調べてみた #shinjukurb 新宿rb 41th
rablについてざっくりだけ調べてみた #shinjukurb 新宿rb 41thrablについてざっくりだけ調べてみた #shinjukurb 新宿rb 41th
rablについてざっくりだけ調べてみた #shinjukurb 新宿rb 41th
 
Rails on GKEで運用するWebアプリケーションの紹介
Rails on GKEで運用するWebアプリケーションの紹介Rails on GKEで運用するWebアプリケーションの紹介
Rails on GKEで運用するWebアプリケーションの紹介
 
CloudHubのログバックアップについて
CloudHubのログバックアップについてCloudHubのログバックアップについて
CloudHubのログバックアップについて
 
Innovation and Startups Today
Innovation and Startups TodayInnovation and Startups Today
Innovation and Startups Today
 

More from 輝 子安

More from 輝 子安 (13)

Protractor under the hood
Protractor under the hoodProtractor under the hood
Protractor under the hood
 
Dockerで構成するWebサービス 〜EmotionTechの場合〜
Dockerで構成するWebサービス 〜EmotionTechの場合〜Dockerで構成するWebサービス 〜EmotionTechの場合〜
Dockerで構成するWebサービス 〜EmotionTechの場合〜
 
Workshop: Docker on Elastic Beanstalk
Workshop: Docker on Elastic BeanstalkWorkshop: Docker on Elastic Beanstalk
Workshop: Docker on Elastic Beanstalk
 
PHP conference 2013 ja report
PHP conference 2013 ja reportPHP conference 2013 ja report
PHP conference 2013 ja report
 
Scala for Java programmers
Scala for Java programmersScala for Java programmers
Scala for Java programmers
 
Garbage Collection for Dummies
Garbage Collection for DummiesGarbage Collection for Dummies
Garbage Collection for Dummies
 
JavaOne Guide for the Petite Bourgeoisie
JavaOne Guide for the Petite BourgeoisieJavaOne Guide for the Petite Bourgeoisie
JavaOne Guide for the Petite Bourgeoisie
 
Java, Moving Forward
Java, Moving ForwardJava, Moving Forward
Java, Moving Forward
 
Java, Up to Date
Java, Up to DateJava, Up to Date
Java, Up to Date
 
Java, Up to Date Sources
Java, Up to Date SourcesJava, Up to Date Sources
Java, Up to Date Sources
 
Hello, Guava ! samples
Hello, Guava ! samplesHello, Guava ! samples
Hello, Guava ! samples
 
Hello, Guava !
Hello, Guava !Hello, Guava !
Hello, Guava !
 
Tokyo Cabinet & Tokyo Tyrant
Tokyo Cabinet & Tokyo TyrantTokyo Cabinet & Tokyo Tyrant
Tokyo Cabinet & Tokyo Tyrant
 

Recently uploaded

Recently uploaded (10)

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 

そろそろLambda(CI/CD編)

  • 2. Copyright © 2018 Akira Koyasu. All rights reserved. こんばんは • ⼦安 輝 (@akirakoyasu) • 主にサーバーサイド • Ruby on Rails • 分析基盤 • CI/CD周りの整備 2
  • 3. Copyright © 2018 Akira Koyasu. All rights reserved. 今⽇のお話 3 AWS LambdaをCI/CDする
  • 4. Copyright © 2018 Akira Koyasu. All rights reserved. というのも 4 そろそろLambda使っていきたい 今まで使ってきた実⾏環境と⽐べて
 考えないといけないことがいくつかある
  • 5. Copyright © 2018 Akira Koyasu. All rights reserved. ファンクションを開発する 5 コード管理 CI/CD 監視 権限 ←
  • 6. Copyright © 2018 Akira Koyasu. All rights reserved. やりたいことの確認 6 https://flic.kr/p/o7uhHG
  • 7. Copyright © 2018 Akira Koyasu. All rights reserved. やりたいことの確認 7 ファンクションを書いて、リポジトリへpushしたら、
 チェンジセットのステータスによって
 確認環境やら本番環境やらにデプロイできる
  • 8. Copyright © 2018 Akira Koyasu. All rights reserved.8
  • 9. Copyright © 2018 Akira Koyasu. All rights reserved. 何が難しいのか 9 環境を⽤意すること 扱う単位が⼩さいこと
  • 10. Copyright © 2018 Akira Koyasu. All rights reserved. SAM 10 https://github.com/awslabs/serverless-application-model
  • 11. Copyright © 2018 Akira Koyasu. All rights reserved. SAM Local 11 https://github.com/awslabs/aws-sam-local https://github.com/lambci/docker-lambda
  • 12. Copyright © 2018 Akira Koyasu. All rights reserved. CodeBuild / CodePipeline 12 https://aws.amazon.com/jp/codebuild/ https://aws.amazon.com/jp/codepipeline/
  • 13. Copyright © 2018 Akira Koyasu. All rights reserved.13 https://flic.kr/p/97LG6ehttps://flic.kr/p/B1wD1u
  • 14. Copyright © 2018 Akira Koyasu. All rights reserved. LambdaのCI/CD 14
  • 15. Copyright © 2018 Akira Koyasu. All rights reserved. まだ悩みはある • PRの確認環境どうしよう
 (特に依存リソースの⽤意) • CodePipelineに必要な
 権限がややこしい • CloudFormation(SAM)に
 必要な権限がややこしい • CodeBuild/CodePipelineが
 思ったより不器⽤ 15 https://flic.kr/p/aCBtW6
  • 17. Copyright © 2018 Akira Koyasu. All rights reserved.17 Thank you!