ヤマムギ

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

  関連記事

「Serverless Days Tokyo 2023 サーバーレスは死ぬな!みんなEDA(Event Driven Architecture)として使ってるでしょ?」を見ました

2023/9/23にServerless Days Tokyo 2023に参加し …

php-fpm で Out of memoryが発生した際にメール通知する(AWS CloudWatch , Amazon SNS)

AWS CloudWatch LogsエージェントでAmazon EC2上のNg …

Pepper 開発 ワークショップ初級~中級~番外編に1日で一気に参加した

Pepperの開発方法が知りたかったので、Pepperアトリエ秋葉原 with …

Amazon ECSサービスでAWS App Meshを使用

AWS App MeshユーザーガイドのAWS App Mesh とAmazon …

Amazon Location Service入門ワークショップ-マップの操作

関連記事 Amazon Location Service入門ワークショップの前提 …

AWS Summit 2016 Tokyoに参加してきました (Day2)

馬込は非常に良い天気です。 泊まっている部屋が2Fでしたので窓を明けると歩いてい …

Amazon BedrockがGAしたので触りました(boto3からも)

Amazon Bedrock Is Now Generally Availabl …

『JAWS-UG 名古屋 セキュリティ勉強会』に参加しました

初心者向けAWSの守り方 JAWS-UG名古屋 森さん 初心者向けということで、 …

ALBのヘルスチェックでPHPとMySQL接続をチェック

当ブログで504エラーが発生して、オートスケーリングにより自動でインスタンスが置 …

CloudWatch LogsメトリクスフィルタでNginxのaccess_logから転送バイト数をモニタリングする

ユーザーガイドのApache ログからのフィールドの抽出を見てて、これ、Ngin …