Configurar notificações de eventos
Você ativa notificações para um bucket criando XML de configuração de notificação e usando o Gerenciador de locatário para aplicar o XML a um bucket.
-
Os serviços de plataforma foram ativados para sua conta de locatário por um administrador do StorageGRID.
-
Você já criou um bucket para agir como a fonte das notificações.
-
O endpoint que você pretende usar como destino para notificações de eventos já existe, e você tem sua URNA.
-
Você pertence a um grupo de usuários que tem o "Gerencie todos os buckets ou permissão de acesso root". Essas permissões substituem as configurações de permissão nas políticas de grupo ou bucket ao configurar o bucket usando o Gerenciador do locatário.
Você configura notificações de eventos associando o XML de configuração de notificação a um bucket de origem. O XML de configuração de notificação segue convenções S3 para configurar notificações de bucket, com o tópico Kafka de destino ou Amazon SNS especificado como a URNA de um endpoint.
Para obter informações gerais sobre notificações de eventos e como configurá-las, consulte o "Documentação da Amazon". Para obter informações sobre como o StorageGRID implementa a API de configuração de notificação de bucket do S3, consulte o "Instruções para a implementação de aplicativos cliente S3".
Observe os seguintes requisitos e caraterísticas ao configurar notificações de eventos para um bucket:
-
Quando você cria e aplica XML de configuração de notificação válida, ele deve usar a URN de um endpoint de notificações de eventos para cada destino.
-
Embora a notificação de evento possa ser configurada em um bucket com o bloqueio de objeto S3 ativado, os metadados do bloqueio de objeto S3 (incluindo o status reter até a data e retenção legal) dos objetos não serão incluídos nas mensagens de notificação.
-
Depois de configurar notificações de eventos, sempre que um evento especificado ocorre para um objeto no bucket de origem, uma notificação é gerada e enviada para o tópico Amazon SNS ou Kafka usado como o endpoint de destino.
-
Se você ativar notificações de eventos para um bucket que contém objetos, as notificações serão enviadas apenas para ações executadas após a configuração de notificação ser salva.
-
Ativar notificações para o intervalo de origem:
-
Use um editor de texto para criar a configuração de notificação XML necessário para habilitar notificações de eventos, conforme especificado na API de notificação S3.
-
Ao configurar o XML, use a URNA 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 Gerenciador do Locatário, selecione STORAGE (S3) > Buckets.
-
Selecione o nome do intervalo de origem.
É apresentada a página de detalhes do balde.
-
Selecione Serviços de plataforma > notificações de eventos.
-
Marque 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 de plataforma devem estar habilitados para cada conta de locatário por um administrador do StorageGRID usando o Gerenciador de Grade ou a API de Gerenciamento de Grade. Contacte o administrador do StorageGRID se ocorrer um erro ao guardar 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 se uma notificação foi entregue ao tópico do Amazon SNS ou Kafka de destino.
Por exemplo, se o tópico de destino estiver hospedado no Amazon SNS, você poderá 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 êxito o bucket de origem para notificações do StorageGRID.
-