イベントストレージとバックアップパイプラインを Amazon にデプロイしてサブスクライブする SNS - Amazon Simple Notification Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

イベントストレージとバックアップパイプラインを Amazon にデプロイしてサブスクライブする SNS

イベントのアーカイブと分析のために、Amazon は Amazon Data Firehose とのネイティブ統合の使用を推奨SNSするようになりました。Firehose 配信ストリームをSNSトピックにサブスクライブできます。これにより、Amazon Simple Storage Service (Amazon S3) バケット、Amazon Redshift テーブル、Amazon OpenSearch Service (OpenSearch Service) などのアーカイブエンドポイントと分析エンドポイントに通知を送信できます。Amazon SNSを Firehose 配信ストリームで使用することは、 AWS Lambda 関数を使用する必要がない、フルマネージド型のコードレスソリューションです。詳細については、「Firehose 配信ストリームを使用したファンアウト Amazon SNS通知によるデータ管理の強化」を参照してください。

このページでは、イベントストレージとバックアップパイプラインをデプロイし、Amazon SNSトピックにサブスクライブする方法を示します。このプロセスは、パイプラインに関連付けられた AWS SAM テンプレートを自動的に AWS CloudFormation スタックに変換し、スタックを にデプロイします AWS アカウント。また、このプロセスでは、イベントのストレージおよびバックアップパイプラインを構成する、以下のようなリソースのセットを作成して設定します。

  • Amazon SQSキュー

  • Lambda 関数

  • Firehose 配信ストリーム

  • Amazon S3 バックアップバケット

S3 バケットを宛先としてストリームを設定する方法の詳細については、Amazon Data Firehose APIリファレンスS3DestinationConfigurationの「」を参照してください。

イベントの変換、およびイベントバッファリング、イベント圧縮、イベント暗号化の設定の詳細については、Amazon Data Firehose デベロッパーガイドの「Amazon Data Firehose 配信ストリームの作成」を参照してください。

イベントのフィルター処理の詳細については、このガイドの「Amazon SNSサブスクリプションフィルターポリシー」を参照してください。

  1. AWS Lambda コンソール にサインインします。

  2. ナビゲーションパネルで [関数] を選択し、[関数の作成] を選択します。

  3. [関数の作成] ページで、次の操作を実行します。

    1. サーバーレスアプリケーションリポジトリ を参照パブリックアプリケーション カスタムIAMロールまたはリソースポリシー を作成するアプリケーションを表示する を選択します。

    2. fork-event-storage-backup-pipeline を検索し、このアプリケーションを選択します。

  4. fork-event-storage-backupパイプラインページで、次の操作を行います。

    1. [アプリケーション設定] セクションで、[アプリケーション名] に名前 (my-app-backup など) を入力します。

      注記
      • 名前は、デプロイごとに一意にする必要があります。アプリケーション名を再利用すると、デプロイは (新しいスタックを作成するのではなく) 以前にデプロイされた AWS CloudFormation スタックのみを更新します。

    2. (オプション) にはBucketArn、受信イベントがロードされる S3 バケットARNの を入力します。値を入力しない場合、 AWS アカウントに新しい S3 バケットが作成されます。

    3. (オプション) にはDataTransformationFunctionArn、受信イベントARNが変換される Lambda 関数の を入力します。値を入力しないと、データ変換は無効になります。

    4. (オプション) アプリケーションの Lambda 関数を実行するために、次のいずれかLogLevelの設定を入力します。

      • DEBUG

      • ERROR

      • INFO (デフォルト)

      • WARNING

    5. にはTopicArn、フォークパイプラインARNのこのインスタンスをサブスクライブする Amazon SNSトピックの を入力します。

    6. (オプション) StreamBufferingIntervalInSecondsおよび にはStreamBufferingSizeInMBs、受信イベントのバッファリングを設定するための値を入力します。値を入力しないと、300 秒と 5 MB が使用されます。

    7. (オプション) 受信イベントを圧縮するには、次のいずれかStreamCompressionFormatの設定を入力します。

      • GZIP

      • SNAPPY

      • UNCOMPRESSED (デフォルト)

      • ZIP

    8. (オプション) にはStreamPrefix、S3 バックアップバケットに保存されているファイルに名前を付ける文字列プレフィックスを入力します。値を入力しないと、プレフィックスは使用されません。

    9. (オプション) にはSubscriptionFilterPolicy、受信イベントのフィルタリングに使用する Amazon SNSサブスクリプションフィルターポリシーを JSON形式で入力します。フィルターポリシーは、 OpenSearch サービスインデックスでインデックスを作成するイベントを決定します。値を入力しないと、フィルター処理は使用されません (すべてのイベントにインデックスが作成されます)。

    10. (オプション) にはSubscriptionFilterPolicyScope、文字列 MessageBodyまたは を入力してMessageAttributes、ペイロードベースまたは属性ベースのメッセージフィルタリングを有効にします。

    11. 「このアプリケーションがカスタムIAMロール、リソースポリシーを作成し、ネストされたアプリケーションをデプロイする」を選択し、「デプロイ」を選択します。

デプロイステータス my-app ページ、Lambda にアプリケーションがデプロイ中ステータスが表示されます。

リソースセクションで、スタックの作成 AWS CloudFormation を開始し、各リソースの CREATE_IN_PROGRESS ステータスを表示します。プロセスが完了すると、 は CREATE_COMPLETE ステータス AWS CloudFormation を表示します。

デプロイが完了すると、Lambda によって [アプリケーションはデプロイ済みです] ステータスが表示されます。

Amazon SNSトピックに発行されたメッセージは、イベントストレージとバックアップパイプラインによってプロビジョニングされた S3 バックアップバケットに自動的に保存されます。