Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SQS SNS EventBridge update 2021

kensh
January 26, 2022

SQS SNS EventBridge update 2021

SQS/SNS/EventBridge update 2021

kensh

January 26, 2022
Tweet

More Decks by kensh

Other Decks in Technology

Transcript

  1. © 2022, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. サービスアップデート サーバーレス編︓ SQS/SNS/EventBridge アップデート Yohsuke Ishii S e r v e r l e s s M e e t u p J a p a n V i r t u a l # 2 0 - A W S r e : C a p Sr. Solutions Architect Amazon Web Services Japan
  2. About the presenter AWS Lambda Amazon Simple Queue Service Amazon

    API Gateway ⽯井 陽介 アマゾン ウェブ サービス ジャパン株式会社 技術統括本部 インダストリーソリューション部 ソリューション アーキテクト 好きなAWSサービス
  3. 当セッションの概要 • AWS re:Invent 2021 期間中に発表されたものを中⼼に、2021 年の Amazon SQS, Amazon

    SNS, Amazon EventBridge に関連する 主要アップデートをご紹介します。 • 各サービスの基本的な動作の解説は当セッションでは⾏いませんので、 AWS Black Belt Online Seminar をご視聴ください。 https://aws.amazon.com/jp/aws-jp-introduction/
  4. 2021 Amazon SQS 主要 Update • Amazon SQS が段階的価格設定を発表 (2021/01/05)

    https://aws.amazon.com/about-aws/whats-new/2021/01/amazon-sqs-announces-tiered-pricing/ • Amazon SQS が、 FIFO キューの⾼スループットモードをサポート開始しました (2021/05/27) https://aws.amazon.com/about-aws/whats-new/2021/05/amazon-sqs-now-supports-a-high-throughput-mode-for-fifo-queues/ • AWS Lambda が、イベントソースとしての SQS への部分バッチ応答のサポートを開始 (2021/11/23) https://aws.amazon.com/about-aws/whats-new/2021/11/aws-lambda-partial-batch-response-sqs-event-source/ • Amazon SQS が Amazon SQS マネージドの暗号化キーによるサーバー側の暗号化を発表 (2021/11/23) https://aws.amazon.com/about-aws/whats-new/2021/11/amazon-sqs-server-side-encryption-keys-sse/ • Amazon SQS が標準キューのデッドレターキュー管理エクスペリエンスを強化 (2021/12/01) https://aws.amazon.com/about-aws/whats-new/2021/12/amazon-sqs-dead-letter-queue-management-experience-queues/
  5. 2021 Amazon SQS 主要 Update • Amazon SQS が段階的価格設定を発表 (2021/01/05)

    https://aws.amazon.com/about-aws/whats-new/2021/01/amazon-sqs-announces-tiered-pricing/ • Amazon SQS が、 FIFO キューの⾼スループットモードをサポート開始しました (2021/05/27) https://aws.amazon.com/about-aws/whats-new/2021/05/amazon-sqs-now-supports-a-high-throughput-mode-for-fifo-queues/ • AWS Lambda が、イベントソースとしての SQS への部分バッチ応答のサポートを開始 (2021/11/23) https://aws.amazon.com/about-aws/whats-new/2021/11/aws-lambda-partial-batch-response-sqs-event-source/ • Amazon SQS が Amazon SQS マネージドの暗号化キーによるサーバー側の暗号化を発表 (2021/11/23) https://aws.amazon.com/about-aws/whats-new/2021/11/amazon-sqs-server-side-encryption-keys-sse/ • Amazon SQS が標準キューのデッドレターキュー管理エクスペリエンスを強化 (2021/12/01) https://aws.amazon.com/about-aws/whats-new/2021/12/amazon-sqs-dead-letter-queue-management-experience-queues/
  6. • 暗号化対象はメッセージ本⽂で、メッ セージ属性(後述)は対象外 • AWS 利⽤料⾦が別途必要。暗号化に利⽤ するデータキーのキャッシュ時間の調整 によりコストを調整可能 • キュー内に保存されたメッセージを暗号

    化により保護 • キューへのアクセス権に加えAWS KMS の鍵へのアクセス権をもつユーザーのみ がメッセージの送信・受信が可能になる サーバサイド暗号化 (SSE) を利⽤したメッセージの暗号化 Amazon SQS キュー内に保持されたメッセージを AES-256 による暗号化で保護 AWS KMS key または [New!] Amazon SQS Key SendMessage Request ReceiveMessage Request キュー プロデューサ コンシューマ メッセージ メッセージ メッセージ (暗号化済み) サーバサイド暗号化︓ https://docs.aws.amazon.com/ja_jp/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html 利⽤⽬的 考慮点 Amazon SQS
  7. マネージドキーによるサーバーサイドの暗号化 • SQSが所有する暗号化キーで機密データを 保護 (SSE-SQS) • KMS を使⽤した顧客提供の暗号化キー(SSE-KMS)に 加えて提供される新たな選択肢 •

    新規のキュー作成時に SSE-SQS または SSE-KMS を選択可能 • いずれの暗号化オプションも、データの保護に伴う業務 上の負担と複雑さを軽減 • SSE-SQS では、暗号化キーを作成や管理が不要に • 中国リージョンを除く、すべてのAWS の商 ⽤および GovCloud リージョンで利⽤可能 SQS 所有の暗号化キー (SSE-SQS) を使⽤したマネージドなサーバーサイド暗号化を提供
  8. デッドレター キュー Dead Letter Queue(DLQ) 正しく処理できないメッセージがキュー内に滞留し続ける状態を回避するために分離先として利⽤ されるキュー。分離後、メッセージを解析して原因分析が可能 DLQ︓https://docs.aws.amazon.com/ja_jp/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html • 同⼀リージョン、同⼀アカウント、同⼀タイプ

    (FIFO/スタンダードキュー)で作成する必要 あり • データの保持期間は元のキューに追加された際 のタイムスタンプに基づく • FIFOキューで順序が変わることが許容できない 場合は利⽤しない。 • 無制限に繰り返したい場合は利⽤しない。 • 正常処理できないメッセージが残り続けること を早期(保持期間より前)に回避する • DLQのメッセージを解析し原因の分析に活⽤ • DLQにアラームを設定することで検知可能 時間経過 ソースキュー コンシューマ メッセージ コンシューマ 利⽤⽬的 考慮点 コンシューマ メッセージ .ReceiveMessage Request redrive policy [New!] dead-letter queue redrive
  9. デッドレターキューの再処理 • デッドレターキュー (DLQ) に格納された メッ セージを再処理 (リドライブ) • メッセージのライフサイクル管理を効率的に

    • SQS 標準キューに対応 • Amazon SQS コンソールから利⽤可能 • 簡単なクリック操作によって、DLQ 内のメッセージサンプルを検 査し、ソースキューへの移動が可能 • カスタムスクリプトによる再投⼊が不要に • 中国リージョンを除く、すべてのAWS の商⽤およ び GovCloud リージョンで利⽤可能 標準キューのデッドレターキュー管理エクスペリエンス強化 Source Queue DLQ Application エラー発⽣時 DLQに移動 Source Queue DLQ Application DLQから 書き戻す メッセージを 取得して再処理 (通常時と同じ処理)
  10. 再処理タスク • 内部的に SendMessageBatch, ReceiveMessage, and DeleteMessageBatch の各APIを発⾏ • messageid

    と enqueueTime は新たに⽣成され、保持期間も再 計算される • 再処理の宛先はソースキューまたは既存の標準 キューから選択 • 最⼤実⾏時間: 36時間 • アカウント当たりの最⼤同時実⾏数: 100 • メッセージのフィルタリングや修正は未対応 • 実⾏中のタスクをマネージメントコンソール上から キャンセル可能 • キャンセル時点で移動済みのメッセージは宛先キューに残る
  11. Demo - SQS DLQ Redrive 1. Queue と Poison Message

    <Source Queue> DemoQueue1 Message Sender Receiver Amazon SQS Message
  12. Demo - SQS DLQ Redrive 2. Dead Letter Queue と

    Redrive Policy <Source Queue> DemoQueue1 <Dead-letter Queue> DLQ1 Message Redrive Policy Sender Receiver Amazon SQS Message
  13. Demo - SQS DLQ Redrive 3. DLQ Redrive <Source Queue>

    DemoQueue1 <Dead-letter Queue> DLQ1 Message Redrive Policy DLQ Redrive Task Sender Receiver Amazon SQS Message
  14. 2021 Amazon SNS 主要 Update • Amazon SNS が、Kinesis Data

    Firehose サブスクリプションを介してメッセージのアーカイブと分析のサポート を追加 (2021/01/12) https://aws.amazon.com/about-aws/whats-new/2021/01/amazon-sns-adds-support-for-message-archiving-and-analytics-via- kineses-data-firehose-subscriptions/ • Amazon SNS が 1 分間隔の CloudWatch メトリクスをサポート (2021/01/29) https://aws.amazon.com/about-aws/whats-new/2021/01/amazon-sns-now-supports-1-minute-cloudwatch-metrics/ • Amazon SNS でメッセージフィルタリング演算⼦のセットが増加 (2021/04/26) https://aws.amazon.com/about-aws/whats-new/2021/04/amazon-sns-grows-the-set-of-message-filtering-operators/ • Amazon SNS は SMS Sandbox をサポートし、お客様のアカウントの利⽤できる発信者 ID を表⽰します (2021/06/01) https://aws.amazon.com/about-aws/whats-new/2021/06/amazon-sns-now-supports-sms-sandbox-and-displays-available- origination-ids-in-your-account/ • Amazon SNS で APN モバイルプッシュ通知のトークンベース認証に対応 (2021/11/09) https://aws.amazon.com/about-aws/whats-new/2021/11/amazon-sns-token-authentication-api-mobile-notifications/ • Amazon SNS が、単⼀の API リクエストで最⼤10個のメッセージのバッチを発⾏するサポートを開始 (2021/11/18) https://aws.amazon.com/about-aws/whats-new/2021/11/amazon-sns-supports-publishing-batches-messages-single-api-request/
  15. 2021 Amazon SNS 主要 Update • Amazon SNS が、Kinesis Data

    Firehose サブスクリプションを介してメッセージのアーカイブと分析のサポート を追加 (2021/01/12) https://aws.amazon.com/about-aws/whats-new/2021/01/amazon-sns-adds-support-for-message-archiving-and-analytics-via- kineses-data-firehose-subscriptions/ • Amazon SNS が 1 分間隔の CloudWatch メトリクスをサポート (2021/01/29) https://aws.amazon.com/about-aws/whats-new/2021/01/amazon-sns-now-supports-1-minute-cloudwatch-metrics/ • Amazon SNS でメッセージフィルタリング演算⼦のセットが増加 (2021/04/26) https://aws.amazon.com/about-aws/whats-new/2021/04/amazon-sns-grows-the-set-of-message-filtering-operators/ • Amazon SNS は SMS Sandbox をサポートし、お客様のアカウントの利⽤できる発信者 ID を表⽰します (2021/06/01) https://aws.amazon.com/about-aws/whats-new/2021/06/amazon-sns-now-supports-sms-sandbox-and-displays-available- origination-ids-in-your-account/ • Amazon SNS で APN モバイルプッシュ通知のトークンベース認証に対応 (2021/11/09) https://aws.amazon.com/about-aws/whats-new/2021/11/amazon-sns-token-authentication-api-mobile-notifications/ • Amazon SNS が、単⼀の API リクエストで最⼤10個のメッセージのバッチを発⾏するサポートを開始 (2021/11/18) https://aws.amazon.com/about-aws/whats-new/2021/11/amazon-sns-supports-publishing-batches-messages-single-api-request/
  16. メッセージのバッチ発行をサポート • 新たに PublishBatch API が提供開始 • これまでは、メッセージごとに個別の API リクエストが必要

    • リクエストごとに最⼤ 10 メッセージをバッチ処理可能 • スタンダードトピックと FIFOトピックをサポート • メッセージ発⾏ API の実⾏回数を最適化 • Quotaの消費とコストを最適化することができる • すべてのAWS の商⽤および GovCloud リー ジョンで利⽤可能 最⼤10個のメッセージを単⼀のバッチリクエストで発⾏可能に Topic Amazon Simple Notification Service (Amazon SNS) ・・・ Messages PublishBatch
  17. 2021 Amazon EventBridge 主要 Update • Amazon EventBridge が X-Ray

    トレースコンテキスト伝達のサポートを開始 (2021/03/02) https://aws.amazon.com/about-aws/whats-new/2021/03/amazon-eventbridge-now-supports-propagation-of-x-ray-trace-context/ • Amazon EventBridge が API Destinations のサポートを導⼊ (2021/03/04) https://aws.amazon.com/about-aws/whats-new/2021/03/amazon-eventbridge-introduces-support-for-api-destinations/ • Amazon EventBridge でクロスリージョンでのイベントバスのターゲットをサポート開始 (2021/04/15) https://aws.amazon.com/about-aws/whats-new/2021/04/amazon-eventbridge-introduces-support-cross-region-event-bus- targets/ • Amazon EventBridge が同じアカウントとリージョン内の複数のイベントバス間でのイベント共有をサポート (2021/05/19) https://aws.amazon.com/about-aws/whats-new/2021/05/amazon-eventbridge-supports-sharing-events-between-event-buses- same-account-region/ • Amazon EventBridge クロスリージョンサポートをより多くのリージョンに拡張 (2021/11/22) https://aws.amazon.com/about-aws/whats-new/2021/11/amazon-eventbridge-cross-region-expands/ • Amazon EventBridge と Amazon S3 イベント通知でアドバンストサーバーレスアプリケーションの構築を⾼速化 (2021/11/29) https://aws.amazon.com/about-aws/whats-new/2021/11/amazon-s3-event-notifications-amazon-eventbridge-build-advanced- serverless-applications/
  18. 2021 Amazon EventBridge Update • Amazon EventBridge が X-Ray トレースコンテキスト伝達のサポートを開始

    (2021/03/02) https://aws.amazon.com/about-aws/whats-new/2021/03/amazon-eventbridge-now-supports-propagation-of-x-ray-trace-context/ • Amazon EventBridge が API Destinations のサポートを導⼊ (2021/03/04) https://aws.amazon.com/about-aws/whats-new/2021/03/amazon-eventbridge-introduces-support-for-api-destinations/ • Amazon EventBridge でクロスリージョンでのイベントバスのターゲットをサポート開始 (2021/04/15) https://aws.amazon.com/about-aws/whats-new/2021/04/amazon-eventbridge-introduces-support-cross-region-event-bus- targets/ • Amazon EventBridge が同じアカウントとリージョン内の複数のイベントバス間でのイベント共有をサポート (2021/05/19) https://aws.amazon.com/about-aws/whats-new/2021/05/amazon-eventbridge-supports-sharing-events-between-event-buses- same-account-region/ • Amazon EventBridge クロスリージョンサポートをより多くのリージョンに拡張 (2021/11/22) https://aws.amazon.com/about-aws/whats-new/2021/11/amazon-eventbridge-cross-region-expands/ • Amazon EventBridge と Amazon S3 イベント通知でアドバンストサーバーレスアプリケーションの構築を⾼速化 (2021/11/29) https://aws.amazon.com/about-aws/whats-new/2021/11/amazon-s3-event-notifications-amazon-eventbridge-build-advanced- serverless-applications/
  19. ターゲットに API Destinations を指定可能に ポイント • 任意のエンドポイントに対して HTTPリクエストを送ることができる • コードの実装は不要

    • 3種類の認証タイプ (Basic認証 / OAuth クライアントクレデンシャル / API キー) を利⽤可能。クレデンシャル は AWS Secrets Manager で管理。 • ⼊⼒値のカスタマイズやリトライ、 呼び出しレートの調整も可能
  20. Amazon S3 イベント通知のサポート • ObjectCreated, ObjectRemoved, ObjectRestored や レプリケーションを含む全ての S3

    イベント通知タイプ に対応 • オブジェクトサイズや時刻などのイベント メタデータ に基づいて、ターゲットを呼び出す前に フィルターを 適⽤ • EventBridge の⾼度なフィルタリング機能やルーティ ング機能を利⽤して、AWS Lambda、Amazon Kinesis、AWS Step Functions、Amazon SQS を含む 18 のターゲットにイベントを送信できるように Amazon Simple Storage Service (Amazon S3) S3 Standard S3 Glacier Amazon EventBridge Event
  21. Thank you! © 2022, Amazon Web Services, Inc. or its

    affiliates. All rights reserved. Yohsuke Ishii [email protected] https://www.linkedin.com/in/yohsuke-ishii-jp/