Reúna informações do bucket do Amazon S3 usando AWS SDKintegrações de serviços - AWS Step Functions

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á.

Reúna informações do bucket do Amazon S3 usando AWS SDKintegrações de serviços

Este tutorial mostra como realizar um AWS SDKintegração com o Amazon Simple Storage Service. A máquina de estado que você cria neste tutorial reúne informações sobre seus buckets do Amazon S3 e lista seus buckets junto com as informações de versão de cada bucket na região atual.

Etapa 1: Criar a máquina de estado

Usando o console do Step Functions, você vai criar uma máquina de estado que inclui um estado Task para listar todos os buckets do Amazon S3 na conta e na região atuais. Em seguida, você adicionará outro Task estado que invoca o HeadBucket API para verificar se o bucket retornado está acessível na região atual. Se o bucket não estiver acessível, a HeadBucket API chamada retornará o S3.S3Exception erro. Você incluirá um bloco Catch para capturar essa exceção e um estado Pass como estado alternativo.

  1. Abra o console do Step Functions e clique em Criar máquina de estado.

  2. Na caixa de diálogo Escolher um modelo, selecione Em branco.

  3. Escolha Selecionar para abrir o Workflow Studio emModo de design.

  4. Neste tutorial, você escreverá a definição Amazon States Language (ASL) da sua máquina de estado noEditor de código. Para isso, clique em Código.

  5. Remova o código clichê existente e cole a seguinte definição de máquina de estado.

    { "Comment": "A description of my state machine", "StartAt": "ListBuckets", "States": { "ListBuckets": { "Type": "Task", "Parameters": {}, "Resource": "arn:aws:states:::aws-sdk:s3:listBuckets", "Next": "Map" }, "Map": { "Type": "Map", "ItemsPath": "$.Buckets", "ItemProcessor": { "ProcessorConfig": { "Mode": "INLINE" }, "StartAt": "HeadBucket", "States": { "HeadBucket": { "Type": "Task", "ResultPath": null, "Parameters": { "Bucket.$": "$.Name" }, "Resource": "arn:aws:states:::aws-sdk:s3:headBucket", "Catch": [ { "ErrorEquals": [ "S3.S3Exception" ], "ResultPath": null, "Next": "Pass" } ], "Next": "GetBucketVersioning" }, "GetBucketVersioning": { "Type": "Task", "End": true, "Parameters": { "Bucket.$": "$.Name" }, "ResultPath": "$.BucketVersioningInfo", "Resource": "arn:aws:states:::aws-sdk:s3:getBucketVersioning" }, "Pass": { "Type": "Pass", "End": true, "Result": { "Status": "Unknown" }, "ResultPath": "$.BucketVersioningInfo" } } }, "End": true } } }
  6. Especifique um nome para a máquina de estado. Para fazer isso, escolha o ícone de edição ao lado do nome padrão da máquina de estado de MyStateMachine. Em seguida, em Configuração da máquina de estado, insira um nome na caixa Nome da máquina de estado.

    Para este tutorial, insira o nome Gather-S3-Bucket-Info-Standard.

  7. (Opcional) Em Configuração da máquina de estado, especifique outras configurações do fluxo de trabalho, como o tipo de máquina de estado e a função de execução.

    Mantenha todas as seleções padrão nas configurações da máquina de estado.

    Se você já criou uma IAM função com as permissões corretas para sua máquina de estado e deseja usá-la, em Permissões, selecione Escolher uma função existente e selecione uma função na lista. Ou selecione Inserir uma função ARN e, em seguida, forneça uma ARN para essa IAM função.

  8. Na caixa de diálogo Confirmar criação do perfil, selecione Confirmar para continuar.

    Você também pode escolher Exibir configurações do perfil para voltar às Configurações da máquina de estado.

    nota

    Se você excluir a IAM função criada pelo Step Functions, o Step Functions não poderá recriá-la posteriormente. Da mesma forma, se você modificar a função (por exemplo, removendo Step Functions dos principais na IAM política), o Step Functions não poderá restaurar suas configurações originais posteriormente.

    Na Etapa 2, você vai adicionar as permissões ausentes à função de máquina de estado.

Etapa 2: adicionar as permissões de IAM função necessárias

Para coletar informações sobre os buckets do Amazon S3 em sua região atual, forneça à sua máquina de estado as permissões necessárias para acessar os buckets do Amazon S3.

  1. Na página da máquina de estado, escolha IAMfunção ARN para abrir a página Funções da função da máquina de estado.

  2. Escolha Adicionar permissões e depois Criar política em linha.

  3. Escolha a JSONguia e cole as seguintes permissões no JSON editor.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "s3:ListAllMyBuckets", "s3:ListBucket", "s3:GetBucketVersioning" ], "Resource": "*" } ] }
  4. Escolha Revisar política.

  5. No campo Política de revisão, em Nome da política, insira s3-bucket-permissions.

  6. Escolha Criar política.

Etapa 3: Iniciar a execução de uma máquina de estado padrão

  1. Na página Gather-S3-Bucket-Info-Standard, escolha Iniciar execução.

  2. Na caixa de diálogo Iniciar execução, faça o seguinte:

    1. (Opcional) Insira um nome de execução personalizado para substituir o padrão gerado.

      ASCIINão-nomes e registro

      Step Functions aceita nomes para máquinas de estado, execuções, atividades e rótulos que não contenham ASCII caracteres. Como esses caracteres não funcionarão com a Amazon CloudWatch, recomendamos usar somente ASCII caracteres para que você possa acompanhar as métricas CloudWatch.

    2. Selecione Iniciar execução.

    3. O console do Step Functions direciona você para uma página em que o título é o ID da execução. Essa página é conhecida como página de Detalhes da execução. Nesta página, você pode revisar os resultados da execução à medida que a execução avança ou após a conclusão.

      Para revisar os resultados da execução, escolha estados individuais na Exibição em gráfico e, em seguida, escolha as guias individuais no painel Detalhes da etapa para visualizar os detalhes de cada estado, incluindo entrada, saída e definição, respectivamente. Para obter detalhes sobre as informações de execução que você pode visualizar na página Detalhes da execução, consulte Visão geral dos detalhes da execução.

Etapa 4: Executar uma execução de máquina de estado Express

  1. Crie uma máquina de estado expresso usando a definição de máquina de estado apresentada na Etapa 1. Certifique-se de incluir também as permissões de IAM função necessárias, conforme explicado na Etapa 2.

    dica

    Para diferenciar da máquina padrão criada antes, dê à máquina de estado expresso o nome Gather-S3-Bucket-Info-Express.

  2. Na página Gather-S3-Bucket-Info-Standard, escolha Iniciar execução.

  3. Na caixa de diálogo Iniciar execução, faça o seguinte:

    1. (Opcional) Insira um nome de execução personalizado para substituir o padrão gerado.

      ASCIINão-nomes e registro

      Step Functions aceita nomes para máquinas de estado, execuções, atividades e rótulos que não contenham ASCII caracteres. Como esses caracteres não funcionarão com a Amazon CloudWatch, recomendamos usar somente ASCII caracteres para que você possa acompanhar as métricas CloudWatch.

    2. Selecione Iniciar execução.

    3. O console do Step Functions direciona você para uma página em que o título é o ID da execução. Essa página é conhecida como página de Detalhes da execução. Nesta página, você pode revisar os resultados da execução à medida que a execução avança ou após a conclusão.

      Para revisar os resultados da execução, escolha estados individuais na Exibição em gráfico e, em seguida, escolha as guias individuais no painel Detalhes da etapa para visualizar os detalhes de cada estado, incluindo entrada, saída e definição, respectivamente. Para obter detalhes sobre as informações de execução que você pode visualizar na página Detalhes da execução, consulte Visão geral dos detalhes da execução.