Configure as notificações de eventos no StorageGRID
Você habilita as notificações para um bucket criando um arquivo XML de configuração de notificações e usando o Tenant Manager para aplicar o XML a um bucket.
-
Os serviços da plataforma foram ativados para sua conta de locatário por um administrador do StorageGRID.
-
Você já criou um bucket para servir como fonte de notificações.
-
O endpoint que você pretende usar como destino para notificações de eventos já existe e você possui seu URN.
-
Você pertence a um grupo de usuários que possui as "Gerenciar todos os buckets ou permissão de acesso à raiz". Essas permissões substituem as configurações de permissão nas políticas de grupo ou bucket ao configurar o bucket usando o Gerenciador de Locatários.
Você configura as notificações de eventos associando um arquivo XML de configuração de notificações a um bucket de origem. O arquivo XML de configuração de notificações segue as convenções do S3 para configurar notificações de buckets, com o destino Amazon SNS topic, Kafka topic ou endpoint do webhook especificado como o URN de um endpoint.
Para informações gerais sobre notificações de eventos e como configurá-las, consulte a "Documentação da Amazon". Para informações sobre como o StorageGRID implementa a API de configuração de notificações do bucket S3, consulte a "Instruções para implementar aplicativos cliente S3".
Observe os seguintes requisitos e características ao configurar notificações de eventos para um bucket:
-
Ao criar e aplicar um XML de configuração de notificação válido, é necessário usar o URN de um endpoint de notificações de eventos para cada destino.
-
Embora seja possível configurar a notificação de eventos em um bucket com o S3 Object Lock ativado, os metadados do S3 Object Lock (incluindo Retain Until Date e o status de Legal Hold) dos objetos não serão incluídos nas mensagens de notificação.
-
Após configurar as notificações de eventos, sempre que um evento específico ocorrer para um objeto no bucket de origem, uma notificação será gerada e enviada para o tópico Amazon SNS, tópico Kafka ou endpoint webhook usado como destino.
-
Se você ativar as notificações de eventos para um bucket que contém objetos, as notificações serão enviadas apenas para ações realizadas após o salvamento da configuração de notificação.
-
Ative as notificações para seu bucket de origem:
-
Utilize um editor de texto para criar o XML de configuração de notificações necessário para habilitar as notificações de eventos, conforme especificado na API de notificações do S3.
-
Ao configurar o XML, utilize o URN de um endpoint de notificações de eventos como o tópico de destino.
<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>
-
-
No Tenant Manager, selecione STORAGE (S3) > Buckets.
-
Selecione o nome do bucket de origem.
A página de detalhes do bucket é exibida.
-
Selecione Serviços da plataforma > Notificações de eventos.
-
Selecione a caixa de seleção Ativar notificações de eventos.
-
Cole o XML de configuração de notificação na caixa de texto e selecione Salvar alterações.
Os serviços da plataforma devem ser ativados para cada conta de locatário por um administrador do StorageGRID usando o Grid Manager ou a Grid Management API. Entre em contato com o administrador do StorageGRID se ocorrer um erro ao salvar o XML de configuração. -
Verifique se as notificações de eventos estão configuradas corretamente:
-
Execute uma ação em um objeto no bucket de origem que atenda aos requisitos para acionar uma notificação conforme configurado no XML de configuração.
No exemplo, uma notificação de evento é enviada sempre que um objeto é criado com o
images/prefixo. -
Confirme que uma notificação foi entregue ao destino Amazon SNS topic, Kafka topic ou endpoint do webhook.
Por exemplo, se o seu tópico de destino estiver hospedado no Amazon SNS, você pode configurar o serviço para enviar um e-mail quando a notificação for entregue.
{ "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" } } } ] }+ Se a notificação for recebida no tópico de destino, você configurou com sucesso seu bucket de origem para notificações do StorageGRID.
-