Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

イベント通知を設定する

共同作成者

通知サービスは、 3 つの StorageGRID プラットフォームサービスのうちの 1 つです。バケットの通知を有効にすると、指定したイベントに関する情報をAWS Simple Notification Service(Amazon SNS)をサポートするデスティネーションKafkaクラスタまたはサービスに送信できます。

作業を開始する前に
  • テナントアカウントのプラットフォームサービスがStorageGRID 管理者によって有効にされている。

  • 通知のソースとして機能するバケットを作成しておきます。

  • イベント通知のデスティネーションとして使用するエンドポイントがすでに存在し、URNが設定されている必要があります。

  • が設定されたユーザグループに属している必要があります "すべてのバケットまたはRoot Access権限を管理します"。これらの権限は、 Tenant Manager を使用してバケットを設定する際にグループポリシーまたはバケットポリシーの権限設定よりも優先されます。

このタスクについて

イベント通知を設定すると、ソースバケット内のオブジェクトで指定したイベントが発生するたびに通知が生成され、デスティネーションエンドポイントとして使用されているAmazon SNSまたはKafkaトピックに送信されます。バケットの通知を有効にするには、有効な通知設定 XML を作成して適用する必要があります。通知設定 XML では、各デスティネーションとしてイベント通知エンドポイントの URN を使用する必要があります。

イベント通知とその設定方法の一般的な情報については、Amazonのドキュメントを参照してください。StorageGRIDでS3バケットの通知設定APIを実装する方法については、を参照してください。 "S3 クライアントアプリケーションを実装するための手順"

オブジェクトを含むあるバケットのイベント通知を有効にした場合、通知は通知設定の保存後に実行された処理に対してのみ送信されます。

手順
  1. ソースバケットの通知を有効にします。

    • イベント通知を有効にするために必要な通知設定 XML を、 S3 通知 API で指定されている内容に従ってテキストエディタで作成します。

    • XML を設定するにあたっては、デスティネーショントピックとしてイベント通知エンドポイントの URN を使用します。

      <NotificationConfiguration>
        <TopicConfiguration>
           <Id>Image-created</Id>
           <Filter>
              <S3Key>
                <FilterRule>
                  <Name>prefix</Name>
                  <Value>images/</Value>
                </FilterRule>
              </S3Key>
          </Filter>
          <Topic>arn:aws:sns:us-east-1:050340950352:sgws-topic</Topic>
          <Event>s3:ObjectCreated:*</Event>
         </TopicConfiguration>
       </NotificationConfiguration>
  2. Tenant Manager で、 * Storage ( S3 ) * > * Buckets * を選択します。

  3. ソースバケットの名前を選択します。

    バケットの詳細ページが表示されます。

  4. プラットフォームサービス > イベント通知 * を選択します。

  5. [イベント通知を有効にする]*チェックボックスをオンにします。

  6. 通知設定 XML をテキストボックスに貼り付け、 * 変更を保存 * を選択します。

    イベント通知の設定ダイアログボックスのスクリーンショット
    メモ StorageGRID 管理者がグリッドマネージャまたはグリッド管理 API を使用して各テナントアカウントのプラットフォームサービスを有効にしておく必要があります。設定 XML の保存時にエラーが発生した場合は、 StorageGRID 管理者にお問い合わせください。
  7. イベント通知が正しく設定されていることを確認します。

    1. 設定 XML で設定した通知をトリガーする要件を満たす操作をソースバケット内のオブジェクトに対して実行します。

      この例では、を使用してオブジェクトが作成されるたびにイベント通知が送信されます images/ プレフィックス。

    2. デスティネーションのAmazon SNSまたはKafkaトピックに通知が配信されたことを確認します。

      たとえば、デスティネーショントピックがAmazon SNSでホストされている場合は、通知が配信されたときにEメールを送信するようにサービスを設定できます。

    {
       "Records":[
          {
             "eventVersion":"2.0",
             "eventSource":"sgws:s3",
             "eventTime":"2017-08-08T23:52:38Z",
             "eventName":"ObjectCreated:Put",
             "userIdentity":{
                "principalId":"1111111111111111111"
             },
             "requestParameters":{
                "sourceIPAddress":"193.51.100.20"
             },
             "responseElements":{
                "x-amz-request-id":"122047343"
             },
             "s3":{
                "s3SchemaVersion":"1.0",
                "configurationId":"Image-created",
                "bucket":{
                   "name":"test1",
                   "ownerIdentity":{
                      "principalId":"1111111111111111111"
                   },
                   "arn":"arn:sgws:s3:::test1"
                },
                "object":{
                   "key":"images/cat.jpg",
                   "size":0,
                   "eTag":"d41d8cd98f00b204e9800998ecf8427e",
                   "sequencer":"14D90402421461C7"
                }
             }
          }
       ]
    }

    + デスティネーショントピックに通知が届いた場合は、 StorageGRID 通知のソースバケットが正しく設定されています。