概要
- Tech-on MeetUp#01「開発現場に効くサーバーレス」に参加しました!
- slideshareが公開されるので、そちらを見るのが吉です。
- 自分が気になったポイントのみ拾っています。
このイベントでGETしてきたもの
- lambdaのBlueprintsに「slack-echo-command-python」というのがある
- ServerlessFramework
- サーバレス関連のリソースを良い感じに管理してくれる
- ローカルでサーバレスの検証をするため、lambdaのコードをWebサーバでも動くようにラップして可搬性を高める
- 24/365という無敵のサービス
以下、概要メモ書き
Tech-onとは
- ホンモノのナレッジは人と人との緩いつながりの中にこそある
- テーマを特定の技術に限定しない
- 開発の現場にいる技術者が登壇
- slideshareで公開されるのでバシャバシャ撮影しなくてよし
NG
- 製品紹介や広告は原則禁止
資料
明日から始めるちょい足しλ
- 中丸 良@SUPINFさん
- 開発現場に効くサーバレス
- 改善策を探していたら、結果的に
- AWS Lambdaは想像以上に難しい
- メンテナンスし続けるコスト、まったくもって無視できない
- 研究、PoC期間をちゃんと設けて小さめにスタート
社内の情報共有に
- どこにどんな情報があるか
- labmdaのBlueprintsに「slack-echo-command-python」というのがある
秘密情報の共有
- デフォルトのBlueprintsになかったらOSSを探そう
Githubの歩き方
- 調査段階でawesome-serverlessなどで探すのは有用
lambda@edge
- AWSのCLoudFront上で動くlambda
運用プロセスも改善したい
おすすめ
- ks888/LambStatus
- lambci/lambci
- prismagraphql/chromeless
- grycap/scar
- lambdaでdocker動かす
運用のためのヒント
- CI/CDパイプラインを組む
- CloudWatchで監視
社内からの声
- 「それサーバレスにした理由は?」を確認しよう
ローカル環境で気軽にはじめるサーバーレス
- TatchNicolasさん
資料
サーバレスを始める時の悩み
- 各種申請
身近で怒った悲劇
- 無限ループによる高級請求
- 定期実行の単位違い
- ローカルで手軽に試したい・・・
ローカルで動かすには
擬似的なクラウド環境
- AWS
- SAM CLI
- DynamoDB local
-
- Serverless Framework
- localstack
擬似的なクラウド
- dockerで起動
- インターネットがないところでもサーバレスが検証可能
可搬性を高めるパターン
- 任意のWebサーバで受けられるようにする
- lambdaのコードをWebサーバでも動くようにラップして可搬性を高める
- ラップする
- 使えるツール、フレームワーク
- awsgi
- Zappa
- Faas以外にも移動できる
- ベンダーロックイン回避
QA
- フレームワークにイベントを擬似的に発行できる機能がある
- 連続してイベント発行は厳しい
KDDIとCI/CDの歩み
- 廣田 翼@KDDIさん
概要
- CI/CDをどのように浸透させて
- どのような課題があって
- どのように解決したのか
CI/CI概論
- Continuous Integration
- Continuous Delivery
CI/CDの効果
CI
- 常に出荷可能な品質を維持できる
CD
- 常にサービス提供/更新できる状態を保てる
導入
- プロジェクト初期にCI/CD導入を目指す
- プロジェクト/プロダクトの特性に応じたCI/CDを作っている
課題/対応
- デプロイ作業が属人化
- GithubEnterprise + Jenkins
- CI/CDの設定自体もコード化
- Jenkinsの設定をコード化
- CI/CDに詳しい人材の不足
- 詳しい人材を流動的にした
普及のポイント
- 成功事例を作る
- 理解している人材をプロジェクトに参加させる
QA
- 県境毎にbranchがあり、そこにpushされたらデプロイが走る
StepFunctionsを一撃でデプロイする 〜 ServerlessFrameworkを用いたパッケージング 〜
- 若松 剛志@アイレットさん
概要
- サーバ管理サーバのサーバ管理はしたくない
ツール
- Lambda
- StepFunctions
- ServerlessFramework
- CodeDeploy
内容
とりあえずlambdaでやってみた
- 制限が厳しい
- 5分制限で落ちる
StepFunctionsがあるじゃん
- 複雑に・・・
- 1lambda1Functionになった
- コケたポイントがわかる
- リトライなどの制御が楽
- JSONが辛い
ServerlessFramework
監視
- 24/365
- lambdaのエラーハンドリングが難しい
- エラーが起きる想定で対応するということで落ち着いた
結果
- サーバの管理から開放された
- 運用自体はなくならない
- 構成管理が見える化した
課題
- CI/CD
- deployの均一化