ヤマムギ

growing hard days.

*

「JAWS-UG Osaka 第22回勉強会 東西の中の人が語る!!! Microservices × Serverless On AWS」で運営と懇親会LTをしてきました

      2018/01/22

「JAWS-UG Osaka 第22回勉強会 東西の中の人が語る!!! Microservices × Serverless On AWS」で運営と、懇親会でのLTをしてきました。

MOTEXさん、いつも素敵な会場をご提供いただきまして本当にありがとうございます!
当日の運営は、受付したり、会場案内したり、誘導したりします。

勉強会会場ではステッカーやバッジを配ってます。

運営をしてても本編が始まれば、参加者と一緒に勉強できます。

以下、本編は印象に残ったフレーズや機能、思ったことをメモしました。

RESTful APIをChaliceで紐解く 〜Python Serverless Microframework for AWS

清水さん@AWS

  • サーバーレスアーキテクチャなRESTful API
  • リクエストがどういう処理をするか、そこだけに注力する
  • API Gateway + Lambdaをデプロイしようとすると汎用性があるため、煩雑性がある(SAMを使って解決する場合もある)
  • それを解決する手段としてChalice

Chaliceとは

  • ChaliceはPythonのフレームワーク
  • RESRTful API記述用のフレームワーク
  • コードを書いてデプロイするとAPI GatewayとLambdaを自動的に作成、更新
  • IAMの権限など付随する設定回りも自動
  • ローカルでの起動も可能
  • pipでインストール出来る
  • charice deployでデプロイを実行(早ければ5秒ぐらい)
  • コードを分析して必要なポリシーを自動でIAMロールに設定する
  • Domovoiのようなプラグインで拡張可能

Microservices On AWS

西谷さん@AWS

  • システムだけでなく組織、運用、開発、管理も分散
  • 各コンポーネントは独立して他のコンポーネントに影響を与えない
  • 1つのことをうまくやる
  • 多言語 OS , ツール、DBに対して異なるアプローチをとる
  • 各サービスごとに最適な言語とDBを組み合わせている
  • 各サービスが独立しているから、操作、データタイプに応じて、適したデータストア、ストレージを選択できる
  • 個々のコンポーネントはブラックボックスとして設計する、明確に定義されているAPIを介することで中身を意識してもらう必要はない。
  • APIをバックエンドとしたSPA
  • CF S3の静的ページ
  • ECS + ALBが多い
  • FargateはECSコンテナを気にせずに実行できる
  • API Gateway + Cognito User Poolと連携して簡単に認証を追加できる
  • DNSベースのサービスディスカバリ
  • ECSイベントストリームを使用したサービスディスカバリ
  • 可用性のトレードオフのため結果整合性を採用
  • 各サービスの状態の変化にあわせてイベントを発行
  • Event Sourcing
  • モニタリングはCloudWatchに集約
  • ログファイルはS3かCloudWatch Logs
  • ECSはawslogsでコンテナログの一元化が可能
  • 分散トレースは X-Ray活用

Serverless Reliability Engineering

照井さん@Serverworks

ServerlessでRASISを高められることはある

  • RASISはReliability, Availability ,
  • API Gateway(Lambda) Multi Regionで可用性を高める
  • sls , SAMでデプロイすることは簡単
  • Route 53のヘルスチェックでActiveとSecondary
  • DynamoDB Global Tables未対応リージョンでは、DBのマスタはレイテンシ覚悟で 単一にする
  • X-Rayだけでは足りない、Tokenでトレースする
  • ACID
  • 2回目以降の処理リクエストを処理しないことが冪等
  • ACID

実践Microservice × Serverless

小西さん@MOTEX

  • CloudWaatchを使ってトレースしている
  • 疎結合にして無停止デプロイ
  • そのための自動化(CI)
  • kinesis(Data Stream) を間に挟んでいる
  • SQSを挟んでいる人多い
  • 非同期だけどなるべくリアルタイムを求められるのでkinesisを置いている
  • SQSのほうがだいぶ安い
  • Lambdaでタイムゾーンはどこと保証されないので環境変数などで明示的に固定する
  • kinesisの順序保証が必要なケース
  • DynamoDBバックアップどうする問題

懇親会

LTをさせていただきました。

ライブでもで5分間でAlexaスキルを作るってLTをしてみました。
AlexaスキルのHello World的にでも試してもらえれば幸いです。

1回目、MacBookのWiFiがUSB Type-Cと2.4GHz帯の干渉問題で接続断。
テザリング(2.4GHz帯)に頼らないように会場のWiFiをお借りしてやり直しました。

失敗を恐れていては何も前には進みません。
とはいえ、本番に近い環境で練習をしておくべきです。

  • iPhoneテザリングを使う場合はUSB接続する。
  • 可能な限り本番と同じ環境でリハーサルをしておく。

次回からはこの2点を改善したいと思います。

このごたごたで、けんさんのLTをちゃんと見れなかった。
なので後で見させていただく。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS, event, study , , ,

ad

ad

  関連記事

AWSアカウント内のLambda関数を削除するLambda(Python)

やりたいこと 特定のAWSアカウントの特定リージョンのAWS Lambda関数を …

AWS AmplifyでTodoアプリを作るハンズオンをやってみました

【お手軽ハンズオンで AWS を学ぶ】AWS Amplify で Todo アプ …

AWS OrganizatonsのRCP(リソースコントロールポリシー)を設定しました

2024/11月に発表されましたリソースコントロールポリシーを管理している組織に …

Java SE 7 Silver対策勉強をしながらメモ 2015/1/30

本日は配列です。 いつものごとくマークダウンで記載したのでそのままJetpack …

「JAWS-UG佐賀 3年ぶり!re:Bootするよ!」に参加しました

全員自己紹介からスタートしました。 さくさくっとマイクをまわしてなんと10分まき …

JAWS FESTA 東海道 2016に行ってきました

JAWS FESTA 2016に行ってきました。 今回はボランティアスタッフ参加 …

Amazon EC2 Auto Scalingのライフサイクルフック

EC2 Auto Scalingにライフサイクルフックという機能があります。 ス …

AWS Certificate Manager証明書とAmazon Route 53でAmazon API GatewayのAPIのカスタムドメイン名前解決する

AWS Certificate ManagerとAmazon Route 53と …

「gusuku Meetup OSAKA Vol.1」に参加させていただきました

前回のkinotne Cafeの懇親会でふと言った「gusuku Meetupっ …

AWS Toolkit for Eclipseをセットアップ(2021年版)

AWS Toolkit for Eclipseをセットアップするで6年前に書いて …