Envoyer ECS les journaux Amazon à un AWS service ou AWS Partner - Amazon Elastic Container Service

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.

Envoyer ECS les journaux Amazon à un AWS service ou AWS Partner

Vous pouvez utiliser FireLens for Amazon ECS pour utiliser les paramètres de définition des tâches pour acheminer les journaux vers un AWS service ou AWS Partner Network (APN) une destination à des fins de stockage et d'analyse des journaux. AWS Partner Network Il s'agit d'une communauté mondiale de partenaires qui tire parti des programmes, de l'expertise et des ressources pour créer, commercialiser et vendre des offres aux clients. Pour plus d'informations, veuillez consulter AWS Partner. FireLens fonctionne avec Fluentd et Fluent Bit. Nous fournissons l'image AWS pour Fluent Bit ou vous pouvez utiliser votre propre image Fluentd ou Fluent Bit.

Par défaut, Amazon ECS configure la dépendance du conteneur afin que le conteneur Firelens démarre avant tout conteneur qui l'utilise. Le conteneur Firelens s'arrête également une fois que tous les conteneurs qui l'utilisent s'arrêtent.

Tenez compte des points suivants lors de l'utilisation FireLens pour Amazon ECS :

  • Nous vous recommandons de l'my_service_ajouter au nom du conteneur du journal afin de pouvoir facilement le distinguer dans la console.

  • Amazon ECS ajoute par défaut une dépendance relative à l'ordre des conteneurs de démarrage entre les conteneurs d'applications et le FireLens conteneur. Lorsque vous spécifiez un ordre de conteneur entre les conteneurs d'applications et le FireLens conteneur, l'ordre de conteneur de départ par défaut est remplacé.

  • FireLensfor Amazon ECS est pris en charge pour les tâches hébergées à la fois AWS Fargate sur Linux et EC2 sur Amazon on Linux. Les conteneurs Windows ne prennent pas en charge FireLens.

    Pour plus d'informations sur la configuration de la journalisation centralisée pour les conteneurs Windows, consultez la section Journalisation centralisée pour les conteneurs Windows sur Amazon à ECS l'aide de Fluent Bit.

  • Vous pouvez utiliser des AWS CloudFormation modèles. pour configurer pour FireLens Amazon. ECS Pour plus d'informations, voir AWS: : : ECS : TaskDefinition FirelensConfiguration dans le guide de AWS CloudFormation l'utilisateur

  • FireLensécoute sur le port24224. Pour vous assurer que le routeur de FireLens journaux n'est pas accessible en dehors de la tâche, vous ne devez pas autoriser le trafic entrant sur le port 24224 du groupe de sécurité utilisé par votre tâche. Pour les tâches utilisant le mode réseau awsvpc, il s'agit du groupe de sécurité associé à la tâche. Pour les tâches utilisant le mode host réseau, il s'agit du groupe de sécurité associé à l'EC2instance Amazon hébergeant la tâche. Pour les tâches utilisant le mode réseau bridge, ne créez pas de mappages de ports utilisant le port 24224.

  • Pour les tâches qui utilisent le mode bridge réseau, le conteneur contenant la FireLens configuration doit démarrer avant que les conteneurs d'applications qui en dépendent ne démarrent. Pour contrôler l'ordre de début de vos conteneurs, utilisez les conditions de dépendance dans la définition de tâche. Pour de plus amples informations, veuillez consulter Dépendances du conteneur.

    Note

    Si vous utilisez des paramètres de condition de dépendance dans les définitions de conteneur avec une FireLens configuration, assurez-vous que chaque conteneur possède une exigence de HEALTHY condition START or.

  • Par défaut, FireLens ajoute le nom du cluster et de la définition de la tâche ainsi que le nom de ressource Amazon (ARN) du cluster en tant que clés de métadonnées à vos journaux de conteneur stdout/stderr. Voici un exemple du format de métadonnées.

    "ecs_cluster": "cluster-name", "ecs_task_arn": "arn:aws:ecs:region:111122223333:task/cluster-name/f2ad7dba413f45ddb4EXAMPLE", "ecs_task_definition": "task-def-name:revision",

    Si vous ne souhaitez pas que les métadonnées figurent dans vos journaux, définissez enable-ecs-log-metadata sur falsedans la section firelensConfiguration de la définition de tâche.

    "firelensConfiguration":{ "type":"fluentbit", "options":{ "enable-ecs-log-metadata":"false", "config-file-type":"file", "config-file-value":"/extra.conf" }

Pour utiliser cette fonctionnalité, vous devez créer un IAM rôle pour vos tâches qui fournit les autorisations nécessaires pour utiliser les AWS services requis par les tâches. Par exemple, si un conteneur achemine des journaux vers Firehose, la tâche nécessite l'autorisation d'appeler le. firehose:PutRecordBatch API Pour plus d'informations, consultez la section Ajouter et supprimer des autorisations IAM d'identité dans le guide de IAM l'utilisateur.

Votre tâche peut également nécessiter le rôle d'exécution de ECS tâches Amazon dans les conditions suivantes. Pour de plus amples informations, veuillez consulter IAMRôle d'exécution des ECS tâches Amazon.

  • Si votre tâche est hébergée sur Fargate et que vous extrayez des images de conteneurs d'ECRAmazon ou que vous faites référence à des données sensibles dans la configuration AWS Secrets Manager de votre journal, vous devez inclure le rôle d'exécution de la tâche. IAM

  • Lorsque vous utilisez un fichier de configuration personnalisé hébergé dans Amazon S3, votre IAM rôle d'exécution des tâches doit inclure l's3:GetObjectautorisation.

Pour plus d'informations sur l'utilisation de plusieurs fichiers de configuration avec AmazonECS, y compris les fichiers que vous hébergez ou les fichiers dans Amazon S3, consultez Processus d'initialisation pour Fluent Bit onECS, support multi-configurations.