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 rol de IAM 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 rol de IAM y especifique 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. Haga una nota del nombre del rol y del ARN del rol.

      { "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. Ingrese el siguiente comando para asociar la política de permisos que acaba de crear con el rol de IAM.

      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. Sustituya my-role-arny my-bucket-arnpor los valores correctos para su implementación.

    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" }