Paso 1: Crear un flujo de entrega de Firehose - Amazon CloudWatch Logs

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Paso 1: Crear un flujo de entrega de Firehose

importante

Antes de completar los siguientes pasos, debes usar una política de acceso para que Firehose pueda acceder a tu bucket de Amazon S3. Para obtener más información, consulte Controlling Access en la Guía para desarrolladores de Amazon Data Firehose.

Todos los pasos en esta sección (Paso 1) deben realizarse en la cuenta del destinatario de los datos de registro.

En los ejemplos siguientes, se utiliza Este de EE. UU. (Norte de Virginia). Reemplace esta región por la región correcta para su implementación.

Para crear un flujo de entrega de Firehose para usarlo como destino
  1. Cree un bucket de Amazon S3:

    aws s3api create-bucket --bucket firehose-test-bucket1 --create-bucket-configuration LocationConstraint=us-east-1
  2. Crea el IAM rol que otorga permiso a Firehose para colocar datos en el depósito.

    1. En primer lugar, utilice un editor de texto para crear una política de confianza en un archivo ~/TrustPolicyForFirehose.json.

      { "Statement": { "Effect": "Allow", "Principal": { "Service": "firehose.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId":"222222222222" } } } }
    2. Cree el IAM rol especificando el archivo de política de confianza que acaba de crear.

      aws iam create-role \ --role-name FirehosetoS3Role \ --assume-role-policy-document file://~/TrustPolicyForFirehose.json
    3. El resultado de este comando debería ser similar a lo siguiente. Anote el nombre y el rol del rolARN.

      { "Role": { "Path": "/", "RoleName": "FirehosetoS3Role", "RoleId": "AROAR3BXASEKW7K635M53", "Arn": "arn:aws:iam::222222222222:role/FirehosetoS3Role", "CreateDate": "2021-02-02T07:53:10+00:00", "AssumeRolePolicyDocument": { "Statement": { "Effect": "Allow", "Principal": { "Service": "firehose.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "222222222222" } } } } } }
  3. Crea una política de permisos para definir las acciones que Firehose puede realizar en tu cuenta.

    1. En primer lugar, utilice un editor de texto para crear la siguiente política de permisos en un archivo denominado: ~/PermissionsForFirehose.json. Según el caso de uso, es posible que tenga que agregar más permisos a este archivo.

      { "Statement": [{ "Effect": "Allow", "Action": [ "s3:PutObject", "s3:PutObjectAcl", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::firehose-test-bucket1", "arn:aws:s3:::firehose-test-bucket1/*" ] }] }
    2. Ingresa el siguiente comando para asociar la política de permisos que acabas de crear al IAM rol.

      aws iam put-role-policy --role-name FirehosetoS3Role --policy-name Permissions-Policy-For-Firehose-To-S3 --policy-document file://~/PermissionsForFirehose.json
  4. Ingresa el siguiente comando para crear el flujo de entrega de Firehose. Reemplazar my-role-arn y my-bucket-arn con los valores correctos para su despliegue.

    aws firehose create-delivery-stream \ --delivery-stream-name 'my-delivery-stream' \ --s3-destination-configuration \ '{"RoleARN": "arn:aws:iam::222222222222:role/FirehosetoS3Role", "BucketARN": "arn:aws:s3:::firehose-test-bucket1"}'

    El resultado debería tener un aspecto similar al siguiente:

    { "DeliveryStreamARN": "arn:aws:firehose:us-east-1:222222222222:deliverystream/my-delivery-stream" }