Étape 1 : créer un flux de diffusion Firehose - Amazon CloudWatch Logs

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Étape 1 : créer un flux de diffusion Firehose

Important

Avant d'effectuer les étapes suivantes, vous devez utiliser une politique d'accès afin que Firehose puisse accéder à votre compartiment Amazon S3. Pour plus d'informations, consultez Controlling Access dans le manuel Amazon Data Firehose Developer Guide.

Toutes les étapes de cette section (Étape 1) doivent être réalisées dans le compte du destinataire des données du journal.

USA Est (Virginie du Nord) est utilisé dans les exemples de commandes suivants. Remplacez la région par la celle appropriée pour votre déploiement.

Pour créer un flux de diffusion Firehose à utiliser comme destination
  1. Créez un compartiment Amazon S3 :

    aws s3api create-bucket --bucket firehose-test-bucket1 --create-bucket-configuration LocationConstraint=us-east-1
  2. Créez le rôle IAM qui autorise Firehose à placer des données dans le bucket.

    1. D'abord, utilisez un éditeur de texte pour créer une politique d'approbation dans un fichier ~/TrustPolicyForFirehose.json.

      { "Statement": { "Effect": "Allow", "Principal": { "Service": "firehose.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId":"222222222222" } } } }
    2. Créez le rôle IAM, en spécifiant le fichier de politique d'approbation que vous venez de créer.

      aws iam create-role \ --role-name FirehosetoS3Role \ --assume-role-policy-document file://~/TrustPolicyForFirehose.json
    3. La sortie de cette commande ressemblera à ce qui suit. Notez le nom du rôle et l'ARN du rôle.

      { "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. Créez une politique d'autorisation pour définir les actions que Firehose peut effectuer sur votre compte.

    1. Utilisez d'abord un éditeur de texte pour créer la politique d'autorisations suivante dans un fichier nommé ~/PermissionsForFirehose.json. Selon votre cas d'utilisation, il se peut que vous deviez ajouter des autorisations supplémentaires à ce fichier.

      { "Statement": [{ "Effect": "Allow", "Action": [ "s3:PutObject", "s3:PutObjectAcl", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::firehose-test-bucket1", "arn:aws:s3:::firehose-test-bucket1/*" ] }] }
    2. Saisissez la commande suivante pour associer la politique d'autorisation que vous venez de créer au rôle IAM.

      aws iam put-role-policy --role-name FirehosetoS3Role --policy-name Permissions-Policy-For-Firehose-To-S3 --policy-document file://~/PermissionsForFirehose.json
  4. Entrez la commande suivante pour créer le flux de diffusion Firehose. Remplacez my-role-arnet my-bucket-arnpar les valeurs correctes pour votre déploiement.

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

    La sortie doit ressembler à ce qui suit :

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