As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Eventos do Amazon EventBridge para o Amazon EBS
O Amazon EBS envia eventos para o Amazon EventBridge para ações realizadas em volumes e snapshots. Com o EventBridge, você pode estabelecer regras que acionam ações programáticas em resposta a esses eventos. Por exemplo, você pode criar uma regra que envia uma notificação para seu e-mail quando um snapshot é habilitado para restauração rápida de snapshot.
Os eventos no EventBridge são representados como objetos JSON. Os campos que são exclusivos do evento estão contidos na seção "detalhes" do objeto JSON. O campo "evento" contém o nome do evento. O campo "resultados" contém o status concluído da ação que acionou o evento. Para obter mais informações, consulte Amazon EventBridge event patterns no Amazon EventBridge User Guide.
Para obter mais informações, consulte O que é o Amazon EventBridge? no Manual do usuário do Amazon EventBridge.
Eventos
Eventos de volume do EBS
O Amazon EBS envia eventos ao EventBridge quando os eventos de volume a seguir ocorrem.
Criar volume (createVolume)
O evento createVolume
é enviado à sua conta da AWS quando uma ação para criar um volume for concluída. Contudo, não é salvo, registrado ou arquivado. Esse evento pode ter um resultado de available
ou failed
. Ocorrerá uma falha se uma AWS KMS key inválida for fornecida, conforme mostrado nos exemplos abaixo.
Dados de eventos
A lista abaixo é um exemplo de um objeto JSON emitido por EBS para um evento createVolume
bem-sucedido.
{
"version": "0",
"id": "01234567
-0123
-0123
-0123
-012345678901
",
"detail-type": "EBS Volume Notification",
"source": "aws.ec2",
"account": "012345678901
",
"time": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"region": "us-east-1
",
"resources": [
"arn:aws:ec2:us-east-1
:012345678901
:volume/vol-01234567
"
],
"detail": {
"result": "available",
"cause": "",
"event": "createVolume",
"request-id": "01234567
-0123
-0123
-0123
-0123456789ab
"
}
}
A lista abaixo é um exemplo de um objeto JSON emitido por EBS depois de um evento createVolume
com falha. A causa da falha foi uma Chave do KMS desabilitada.
{
"version": "0",
"id": "01234567
-0123
-0123
-0123
-0123456789ab
",
"detail-type": "EBS Volume Notification",
"source": "aws.ec2",
"account": "012345678901
",
"time": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"region": "sa-east-1
",
"resources": [
"arn:aws:ec2:sa-east-1
:0123456789ab
:volume/vol-01234567
",
],
"detail": {
"event": "createVolume",
"result": "failed",
"cause": "arn:aws:kms:sa-east-1
:0123456789ab
:key/01234567
-0123
-0123
-0123
-0123456789ab
is disabled.",
"request-id": "01234567
-0123
-0123
-0123
-0123456789ab
",
}
}
A lista a seguir é um exemplo de um objeto JSON emitido por EBS depois de um evento createVolume
com falha. A causa da falha foi a importação pendente de uma Chave do KMS.
{
"version": "0",
"id": "01234567
-0123
-0123
-0123
-0123456789ab
",
"detail-type": "EBS Volume Notification",
"source": "aws.ec2",
"account": "012345678901
",
"time": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"region": "sa-east-1
",
"resources": [
"arn:aws:ec2:sa-east-1
:0123456789ab
:volume/vol-01234567
",
],
"detail": {
"event": "createVolume",
"result": "failed",
"cause": "arn:aws:kms:sa-east-1
:0123456789ab
:key/01234567
-0123
-0123
-0123
-0123456789ab
is pending import.",
"request-id": "01234567
-0123
-0123
-0123
-0123456789ab
",
}
}
Excluir volume (deleteVolume)
O evento deleteVolume
é enviado à sua conta da AWS quando uma ação para excluir um volume for concluída. Contudo, não é salvo, registrado ou arquivado. Esse evento tem o resultado deleted
. Se a exclusão não for concluída, o evento nunca será enviado.
Dados de eventos
A lista abaixo é um exemplo de um objeto JSON emitido por EBS para um evento deleteVolume
bem-sucedido.
{
"version": "0",
"id": "01234567
-0123
-0123
-0123
-012345678901
",
"detail-type": "EBS Volume Notification",
"source": "aws.ec2",
"account": "012345678901
",
"time": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"region": "us-east-1
",
"resources": [
"arn:aws:ec2:us-east-1
:012345678901
:volume/vol-01234567
"
],
"detail": {
"result": "deleted",
"cause": "",
"event": "deleteVolume",
"request-id": "01234567
-0123
-0123
-0123
-0123456789ab
"
}
}
Anexar ou reanexar volumes (attachVolume, reattachVolume)
O evento attachVolume
ou o reattachVolume
será enviado à sua conta da AWS se ocorrer uma falha ao associar ou reassociar um volume a uma instância. Contudo, não é salvo, registrado ou arquivado. Se você usar uma Chave do KMS para criptografar um volume do EBS e a Chave do KMS se tornar inválida, o EBS emitirá um evento se a Chave do KMS for usada posteriormente para associar ou reassociar a uma instância, conforme mostrado nos exemplos abaixo.
Dados de eventos
A lista abaixo é um exemplo de um objeto JSON emitido por EBS depois de um evento attachVolume
com falha. A causa da falha foi a exclusão pendente de uma Chave do KMS.
nota
A AWS pode tentar reanexar a um volume seguindo a manutenção rotineira do servidor.
{
"version": "0",
"id": "01234567
-0123
-0123
-0123
-0123456789ab
",
"detail-type": "EBS Volume Notification",
"source": "aws.ec2",
"account": "012345678901
",
"time": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"region": "us-east-1
",
"resources": [
"arn:aws:ec2:us-east-1
:0123456789ab
:volume/vol-01234567
",
"arn:aws:kms:us-east-1
:0123456789ab
:key/01234567
-0123
-0123
-0123
-0123456789ab
"
],
"detail": {
"event": "attachVolume",
"result": "failed",
"cause": "arn:aws:kms:us-east-1
:0123456789ab
:key/01234567
-0123
-0123
-0123
-0123456789ab
is pending deletion.",
"request-id": ""
}
}
A lista abaixo é um exemplo de um objeto JSON emitido por EBS depois de um evento reattachVolume
com falha. A causa da falha foi a exclusão pendente de uma Chave do KMS.
{
"version": "0",
"id": "01234567
-0123
-0123
-0123
-0123456789ab
",
"detail-type": "EBS Volume Notification",
"source": "aws.ec2",
"account": "012345678901
",
"time": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"region": "us-east-1
",
"resources": [
"arn:aws:ec2:us-east-1
:0123456789ab
:volume/vol-01234567
",
"arn:aws:kms:us-east-1
:0123456789ab
:key/01234567
-0123
-0123
-0123
-0123456789ab
"
],
"detail": {
"event": "reattachVolume",
"result": "failed",
"cause": "arn:aws:kms:us-east-1
:0123456789ab
:key/01234567
-0123
-0123
-0123
-0123456789ab
is pending deletion.",
"request-id": ""
}
}
Desanexar volume (detachVolume)
O evento detachVolume
é enviado para sua conta da AWS quando um volume é desanexado de uma instância do Amazon EC2.
Dados de eventos
O exemplo a seguir é um evento de detachVolume
bem-sucedido.
{
"version":"0",
"id":"2ec37298-1234-e436-70fc-c96b1example
",
"detail-type":"AWS API Call via CloudTrail",
"source":"aws.ec2",
"account":"123456789012
",
"time":"2024-03-18T16:35:52Z
",
"region":"us-east-1
",
"resources":[],
"detail":
{
"eventVersion":"1.09",
"userIdentity":
{
"type":"IAMUser",
"principalId":"AIDAJT12345SQ2EXAMPLE
",
"arn":"arn:aws:iam::123456789012:user/administrator"
,
"accountId":"123456789012"
,
"accessKeyId":"AKIAJ67890A6EXAMPLE"
,
"userName":"administrator
"
},
"eventTime":"2024-03-18T16:35:52Z
",
"eventSource":"ec2.amazonaws.com",
"eventName":"DetachVolume",
"awsRegion":"us-east-1
",
"sourceIPAddress":"12.12.123.12
",
"userAgent":"aws-cli/2.7.12 Python/3.9.11 Windows/10 exe/AMD64 prompt/off command/ec2.detach-volume",
"requestParameters":
{
"volumeId":"vol-072577c46bexample
",
"force":false
},
"responseElements":
{
"requestId":"1234513a-6292-49ea-83f8-85e95example
",
"volumeId":"vol-072577c46bexample
",
"instanceId":"i-0217f7eb3dexample
",
"device":"/dev/sdb
",
"status":"detaching",
"attachTime":1710776815000
},
"requestID":"1234513a-6292-49ea-83f8-85e95example
",
"eventID":"1234551d-a15a-43eb-9e69-c983aexample
",
"readOnly":false,
"eventType":"AwsApiCall",
"managementEvent":true,
"recipientAccountId":"123456789012
",
"eventCategory":"Management",
"tlsDetails":
{
"tlsVersion":"TLSv1.3",
"cipherSuite":"TLS_AES_128_GCM_SHA256",
"clientProvidedHostHeader":"ec2.us-east-1.amazonaws.com
"
}
}
}
Eventos de modificação de volume do EBS
O Amazon EBS envia eventos modifyVolume
para o EventBridge quando um volume é modificado. Contudo, não é salvo, registrado ou arquivado.
{
"version": "0",
"id": "01234567
-0123
-0123
-0123
-012345678901
",
"detail-type": "EBS Volume Notification",
"source": "aws.ec2",
"account": "012345678901
",
"time": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"region": "us-east-1
",
"resources": [
"arn:aws:ec2:us-east-1
:012345678901
:volume/vol-03a55cf56513fa1b6
"
],
"detail": {
"result": "optimizing
",
"cause": "",
"event": "modifyVolume",
"request-id": "01234567
-0123
-0123
-0123
-0123456789ab
"
}
}
Eventos de snapshot do EBS
O Amazon EBS envia eventos ao EventBridge quando os eventos de volume a seguir ocorrem.
Criar snapshot (createSnapshot)
O evento createSnapshot
é enviado à sua conta da AWS quando uma ação para criar um snapshot termina. Contudo, não é salvo, registrado ou arquivado. Esse evento pode ter um resultado de succeeded
ou failed
.
Dados de eventos
A lista abaixo é um exemplo de um objeto JSON emitido por EBS para um evento createSnapshot
bem-sucedido. Na seção detail
, o campo source
contém o ARN do volume de origem. Os campos startTime
e endTime
indicam quando a criação do snapshot começou e foi concluída.
{
"version": "0",
"id": "01234567
-0123
-0123
-0123
-012345678901
",
"detail-type": "EBS Snapshot Notification",
"source": "aws.ec2",
"account": "012345678901
",
"time": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"region": "us-east-1
",
"resources": [
"arn:aws:ec2::us-west-2
:snapshot/snap-01234567
"
],
"detail": {
"event": "createSnapshot",
"result": "succeeded",
"cause": "",
"request-id": "",
"snapshot_id": "arn:aws:ec2::us-west-2
:snapshot/snap-01234567
",
"source": "arn:aws:ec2::us-west-2
:volume/vol-01234567
",
"startTime": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"endTime": "yyyy
-mm
-dd
Thh
:mm
:ss
Z" }
}
Criar snapshots (createSnapshots)
O evento createSnapshots
é enviado à sua conta da AWS quando uma ação para criar um snapshot de vários volumes termina. Esse evento pode ter um resultado de succeeded
ou failed
.
Dados de eventos
A lista abaixo é um exemplo de um objeto JSON emitido por EBS para um evento createSnapshots
bem-sucedido. Na seção detail
, o campo source
contém os ARNs dos volumes de origem do conjunto de snapshots de vários volumes. Os campos startTime
e endTime
indicam quando a criação do snapshot começou e foi concluída.
{
"version": "0",
"id": "01234567-0123-0123-0123-012345678901
",
"detail-type": "EBS Multi-Volume Snapshots Completion Status",
"source": "aws.ec2",
"account": "012345678901
",
"time": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"region": "us-east-1
",
"resources": [
"arn:aws:ec2::us-east-1
:snapshot/snap-01234567
",
"arn:aws:ec2::us-east-1
:snapshot/snap-012345678
"
],
"detail": {
"event": "createSnapshots",
"result": "succeeded",
"cause": "",
"request-id": "",
"startTime": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"endTime": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"snapshots": [
{
"snapshot_id": "arn:aws:ec2::us-east-1
:snapshot/snap-01234567
",
"source": "arn:aws:ec2::us-east-1
:volume/vol-01234567
",
"status": "completed"
},
{
"snapshot_id": "arn:aws:ec2::us-east-1
:snapshot/snap-012345678
",
"source": "arn:aws:ec2::us-east-1
:volume/vol-012345678
",
"status": "completed"
}
]
}
}
A lista abaixo é um exemplo de um objeto JSON emitido por EBS depois de um evento createSnapshots
com falha. A causa da falha foi a impossibilidade de conclusão de um ou mais snapshots do conjunto de snapshots de múltiplos volumes. Os valores de snapshot_id
são os ARNs dos snapshots com falha. startTime
e endTime
representam quando a ação de criação de snapshots começou e terminou.
{
"version": "0",
"id": "01234567-0123-0123-0123-012345678901
",
"detail-type": "EBS Multi-Volume Snapshots Completion Status",
"source": "aws.ec2",
"account": "012345678901
",
"time": "yyyy-mm-ddThh:mm:ssZ
",
"region": "us-east-1
",
"resources": [
"arn:aws:ec2::us-east-1
:snapshot/snap-01234567
",
"arn:aws:ec2::us-east-1
:snapshot/snap-012345678
"
],
"detail": {
"event": "createSnapshots",
"result": "failed",
"cause": "Snapshot snap-01234567 is in status error",
"request-id": "",
"startTime": "yyyy-mm-ddThh:mm:ssZ
",
"endTime": "yyyy-mm-ddThh:mm:ssZ
",
"snapshots": [
{
"snapshot_id": "arn:aws:ec2::us-east-1
:snapshot/snap-01234567
",
"source": "arn:aws:ec2::us-east-1
:volume/vol-01234567
",
"status": "error"
},
{
"snapshot_id": "arn:aws:ec2::us-east-1
:snapshot/snap-012345678
",
"source": "arn:aws:ec2::us-east-1
:volume/vol-012345678
",
"status": "error"
}
]
}
}
Copiar snapshot (copySnapshot)
O evento copySnapshot
é enviado à sua conta da AWS quando uma ação para copiar um snapshot termina. Contudo, não é salvo, registrado ou arquivado. Esse evento pode ter um resultado de succeeded
ou failed
.
Se você estiver copiando o snapshot entre regiões, o evento será emitido na região de destino.
Dados de eventos
A lista abaixo é um exemplo de um objeto JSON emitido pelo EBS após um evento copySnapshot
bem-sucedido. O valor de snapshot_id
é o ARN do snapshot recém-criado. Na seção detail
, o valor de source
é o ARN do snapshot de origem. startTime
e endTime
representam quando a ação copy-snapshot começou e terminou. incremental
indica se o snapshot é um snapshot incremental (true
) ou um snapshot completo (false
).
{
"version": "0",
"id": "01234567
-0123
-0123
-0123
-012345678901
",
"detail-type": "EBS Snapshot Notification",
"source": "aws.ec2",
"account": "123456789012
",
"time": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"region": "us-east-1
",
"resources": [
"arn:aws:ec2::us-west-2
:snapshot/snap-01234567
"
],
"detail": {
"event": "copySnapshot",
"result": "succeeded",
"cause": "",
"request-id": "",
"snapshot_id": "arn:aws:ec2::us-west-2
:snapshot/snap-01234567
",
"source": "arn:aws:ec2::eu-west-1
:snapshot/snap-76543210
",
"startTime": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"endTime": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"incremental": "true"
}
}
A lista abaixo é um exemplo de um objeto JSON emitido por EBS depois de um evento copySnapshot
com falha. A causa da falha era um ID de snapshot de origem inválido. O valor de snapshot_id
é o nome de recurso da Amazon (ARN) do snapshot com falha. Na seção detail
, o valor de source
é o ARN do snapshot de origem. startTime
e endTime
representam o início e o fim da ação copy-snapshot.
{
"version": "0",
"id": "01234567
-0123
-0123
-0123
-012345678901
",
"detail-type": "EBS Snapshot Notification",
"source": "aws.ec2",
"account": "123456789012
",
"time": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"region": "us-east-1
",
"resources": [
"arn:aws:ec2::us-west-2
:snapshot/snap-01234567
"
],
"detail": {
"event": "copySnapshot",
"result": "failed",
"cause": "Source snapshot ID is not valid",
"request-id": "",
"snapshot_id": "arn:aws:ec2::us-west-2
:snapshot/snap-01234567
",
"source": "arn:aws:ec2::eu-west-1
:snapshot/snap-76543210
",
"startTime": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"endTime": "yyyy
-mm
-dd
Thh
:mm
:ss
Z"
}
}
Compartilhar snapshot (shareSnapshot)
O evento shareSnapshot
é enviado à sua conta da AWS quando outra conta compartilha um snapshot com ela. Contudo, não é salvo, registrado ou arquivado. O resultado é sempre succeeded
.
Dados de eventos
Veja a seguir um exemplo de um objeto JSON emitido pelo EBS depois de um evento shareSnapshot
concluído. Na seção detail
, o valor de source
é o número da conta da AWS do usuário que compartilhou o snapshot com você. startTime
e endTime
representam o início e o fim da ação share-snapshot. O evento shareSnapshot
é emitido somente quando um snapshot privado é compartilhado com outro usuário. Compartilhar um snapshot público não aciona o evento.
{
"version": "0",
"id": "01234567
-01234
-0123
-0123
-012345678901
",
"detail-type": "EBS Snapshot Notification",
"source": "aws.ec2",
"account": "012345678901
",
"time": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"region": "us-east-1
",
"resources": [
"arn:aws:ec2::us-west-2
:snapshot/snap-01234567
"
],
"detail": {
"event": "shareSnapshot",
"result": "succeeded",
"cause": "",
"request-id": "",
"snapshot_id": "arn:aws:ec2::us-west-2
:snapshot/snap-01234567
",
"source": 012345678901
,
"startTime": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"endTime": "yyyy
-mm
-dd
Thh
:mm
:ss
Z"
}
}
Eventos de arquivo de snapshots do EBS
O Amazon EBS emite eventos relacionados a ações de arquivamento de snapshots. Para obter mais informações, consulte Monitore o arquivamento de EBS snapshots da Amazon usando Eventos CloudWatch .
Eventos de restauração rápida do snapshot do EBS
O Amazon EBS envia eventos para o EventBridge quando o estado da restauração rápida do snapshot muda. Eventos são emitidos com base no melhor esforço.
A seguir estão dados de exemplo para esse evento.
{
"version": "0",
"id": "01234567
-0123
-0123
-0123
-012345678901
",
"detail-type": "EBS Fast Snapshot Restore State-change Notification",
"source": "aws.ec2",
"account": "123456789012
",
"time": "yyyy
-mm
-dd
Thh
:mm
:ss
Z",
"region": "us-east-1
",
"resources": [
"arn:aws:ec2:us-east-1
::snapshot/snap-03a55cf56513fa1b6
"
],
"detail": {
"snapshot-id": "snap-1234567890abcdef0
",
"state": "optimizing
",
"zone": "us-east-1a
",
"message": "Client.UserInitiated - Lifecycle state transition
",
}
}
Os valores possíveis para state
são enabling
, optimizing
, enabled
, disabling
e disabled
.
Os valores possíveis para message
são os seguintes:
Client.InvalidSnapshot.InvalidState - The requested snapshot transitioned to an invalid state (Error)
-
A solicitação para habilitar a restauração rápida do snapshot falhou e o estado mudou para
disabling
oudisabled
. A restauração rápida do snapshot não pode ser habilitada para esse snapshot. Client.UserInitiated
-
O estado fez a transição para
enabling
oudisabling
. Client.UserInitiated - Lifecycle state transition
-
O estado fez a transição para
optimizing
,enabled
oudisabled
. Server.InsufficientCapacity - There was insufficient capacity available to satisfy the request
-
A solicitação para habilitar a restauração rápida do snapshot falhou por capacidade insuficiente, e o estado mudou para
disabling
oudisabled
. Espere e tente novamente. Server.InternalError - An internal error caused the operation to fail
-
A solicitação para habilitar a restauração rápida do snapshot falhou por erro interno, e o estado mudou para
disabling
oudisabled
. Espere e tente novamente. Client.InvalidSnapshot.InvalidState - The requested snapshot was deleted or access permissions were revoked
-
Foi feita a transição do estado de restauração rápida de snapshots para
disabling
oudisabled
porque o snapshot foi excluído ou não compartilhado pelo proprietário do snapshot. A restauração rápida de snapshots não pode ser habilitada para um snapshot que tenha sido excluído ou não seja mais compartilhado com você.
Usar o AWS Lambda para lidar com eventos do EventBridge
É possível usar o Amazon EBS e o Amazon EventBridge para automatizar o fluxo de trabalho de backup de dados. Fazer isso exige a criação de uma política do IAM, uma função do AWS Lambda para lidar com o evento e uma regra do EventBridge que corresponda aos eventos de entrada e os roteie para a função do Lambda.
O procedimento a seguir usa o evento createSnapshot
para copiar automaticamente um snapshot concluído em outra região para recuperação de desastres.
Como copiar um snapshot concluído em outra região
-
Crie uma política do IAM, como a mostrada no exemplo a seguir, para fornecer permissões para usar a ação
CopySnapshot
e gravá-la no log do EventBridge. Atribua a política ao usuário que lidará com o evento do EventBridge.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:*:*:*" }, { "Effect": "Allow", "Action": [ "ec2:CopySnapshot" ], "Resource": "*" } ] }
-
Defina uma função no Lambda que estará disponível no console do EventBridge. O exemplo de função do Lambda abaixo, escrito em Node.js, é invocado pelo EventBridge quando um evento
createSnapshot
correspondente é emitido pelo Amazon EBS (significando que um snapshot foi concluído). Quando invocada, a função copia o snapshot deus-east-2
emus-east-1
.// Sample Lambda function to copy an EBS snapshot to a different Region var AWS = require('aws-sdk'); var ec2 = new AWS.EC2(); // define variables var destinationRegion = '
us-east-1
'; var sourceRegion = 'us-east-2
'; console.log ('Loading function'); //main function exports.handler = (event, context, callback) => { // Get the EBS snapshot ID from the event details var snapshotArn = event.detail.snapshot_id.split('/'); const snapshotId = snapshotArn[1]; const description = `Snapshot copy from ${snapshotId} in ${sourceRegion}.`; console.log ("snapshotId:", snapshotId); // Load EC2 class and update the configuration to use destination Region to initiate the snapshot. AWS.config.update({region: destinationRegion}); var ec2 = new AWS.EC2(); // Prepare variables for ec2.modifySnapshotAttribute call const copySnapshotParams = { Description: description, DestinationRegion: destinationRegion, SourceRegion: sourceRegion, SourceSnapshotId: snapshotId }; // Execute the copy snapshot and log any errors ec2.copySnapshot(copySnapshotParams, (err, data) => { if (err) { const errorMessage = `Error copying snapshot ${snapshotId} to Region ${destinationRegion}.`; console.log(errorMessage); console.log(err); callback(errorMessage); } else { const successMessage = `Successfully started copy of snapshot ${snapshotId} to Region ${destinationRegion}.`; console.log(successMessage); console.log(data); callback(null, successMessage); } }); };Para garantir que a sua função do Lambda esteja disponível no console do EventBridge, crie-a na região onde o evento do EventBridge ocorrerá. Para mais informações, consulte o Guia do desenvolvedor do AWS Lambda.
Abra o console do Amazon EventBridge em https://console.aws.amazon.com/events/
. -
No painel de navegação, escolha Rules (Regras) e Create rule (Criar regras).
-
Em Step 1: Define rule detail (Etapa 1: definir detalhe da regra), faça o seguinte:
-
Insira valores para Name (Nome) e Description (Descrição).
-
Em Event bus (Barramento de eventos), mantenha o valor default (padrão).
-
Certifique-se de que Enable the rule on the selected event bus (Habilitar a regra nos barramentos de eventos selecionados) esteja ativada.
-
Em Rule type (Tipo de regra), escolha Rule with an event pattern (Regra com um padrão de evento).
-
Escolha Próximo.
-
-
Em Step 2: Build event pattern (Etapa 2: criar padrão de evento), faça o seguinte:
-
Em Origem dos eventos, selecione Eventos da AWS ou eventos de parceiro do EventBridge.
-
Na seção Padrão dos eventos, em Origem dos eventos, certifique-se de que a opção Serviço da AWS esteja selecionada e, em Serviço da AWS, selecione EC2.
-
Em Event type (Tipo de evento), selecione EBS Snapshot Notification (Notificação de snapshot de EBS), selecione Specific event(s) (Eventos específicos) e, em seguida, selecione createSnapshot.
-
Selecione Specific result(s) (Resultados específicos) e depois escolha succeeded (com êxito).
-
Escolha Próximo.
-
-
Em Etapa 3: Select targets (Etapa 3: selecionar destinos), faça o seguinte:
-
Em Tipos de destino, escolha Serviço da AWS.
-
Em Select target (Selecionar destino), escolha Lambda function (Função do Lambda) e, em Function (Função), selecione a função criada anteriormente.
-
Escolha Next (Avançar).
-
-
Em Step 4: Configure tags (Etapa 4: configurar etiquetas), especifique as etiquetas para a regra, se necessário e, em seguida, escolha Next (Avançar).
-
Em Step 5: Review and create (Etapa 5: revisar e criar), revise a regra e escolha Create rule (Criar regra).
A regra agora deve aparecer na guia Rules (Regras). No exemplo mostrado, o evento que você configurou deve ser emitido pelo EBS na próxima vez você copiar um snapshot.