Quick Start : Installation et configuration de l'agent CloudWatch Logs sur une instance EC2 Linux en cours d'exécution - Amazon CloudWatch Logs

Quick Start : Installation et configuration de l'agent CloudWatch Logs sur une instance EC2 Linux en cours d'exécution

Astuce

CloudWatch inclut un nouvel agent unifié qui peut collecter à la fois les journaux et les métriques des instances EC2 et des serveurs sur site. Si vous n'utilisez pas déjà l'ancien agent CloudWatch Logs, nous vous recommandons d'utiliser le nouvel agent CloudWatch unifié. Pour plus d'informations, consultez Mise en route avec CloudWatch Logs.

En outre, l'ancien agent ne prend pas en charge Instance Metadata Service Version 2 (IMDSv2). Si votre serveur utilise IMDSv2, vous devez utiliser l'agent unifié le plus récent au lieu de l'ancien agent CloudWatch Logs.

Le reste de cette section explique l'utilisation de l'ancien agent CloudWatch Logs.

Configuration de l'ancien agent CloudWatch Logs sur une instance EC2 Linux en cours d'exécution

Vous pouvez utiliser le programme d'installation de l'agent CloudWatch Logs sur une instance EC2 existante pour installer et configurer l'agent CloudWatch Logs. Une fois l'installation terminée, les journaux sont automatiquement transmis à partir de l'instance vers le flux de journaux que vous créez lors de l'installation de l'agent. L'agent confirme qu'il a commencé à s'exécuter et ce, jusqu'à ce que vous le désactiviez.

En plus d'utiliser l'agent, vous pouvez également publier les données des journaux à l'aide de l'AWS CLI, du kit SDK CloudWatch Logs ou de l'API CloudWatch Logs. L'AWS CLI; est particulièrement adaptée à la publication de données dans la ligne de commande ou par le biais de scripts. Le kit SDK CloudWatch Logs est particulièrement adapté à la publication des données de journal directement à partir d'applications ou à la création de votre propre application de publication de journaux.

Étape 1 : Configurer votre rôle ou utilisateur IAM pour CloudWatch Logs

L'agent CloudWatch Logs prend en charge les rôles et utilisateurs IAM. Si votre instance est déjà associée à un rôle IAM, assurez-vous d'inclure la politique IAM ci-dessous. Si aucun rôle IAM n'est déjà attribué à votre instance, vous pouvez utiliser vos informations d'identification IAM pour les prochaines étapes ou attribuer un rôle IAM à cette instance. Pour plus d'informations, consultez Attachement d'un rôle IAM à une instance.

Pour configurer votre rôle ou utilisateur IAM pour CloudWatch Logs

  1. Ouvrez la console IAM à l'adresse https://console.aws.amazon.com/iam/.

  2. Dans le panneau de navigation, sélectionnez Rôles.

  3. Choisissez le rôle en sélectionnant le nom du rôle (ne cochez pas la case en regard du nom).

  4. Choisissez Attach Policies, Create Policy.

    Un nouvel onglet (ou une nouvelle fenêtre) s'ouvre dans votre navigateur.

  5. Choisissez l'onglet JSON et copiez le document de stratégie JSON suivant.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Resource": [ "*" ] } ] }
  6. Lorsque vous avez terminé, sélectionnez Examiner une politique. Le programme de validation de politique signale les éventuelles erreurs de syntaxe.

  7. Dans la page Examiner une politique, saisissez un nom et une description (facultatif) pour la politique que vous êtes en train de créer. Vérifiez le récapitulatif de politique pour voir les autorisations accordées par votre politique. Sélectionnez ensuite Créer une politique pour enregistrer votre travail.

  8. Fermez la fenêtre ou l'onglet du navigateur, et retournez dans la page Ajouter des autorisations pour votre rôle. Choisissez Refresh, puis choisissez la nouvelle stratégie pour l'attacher à votre rôle.

  9. Choisissez Attach Policy (Attacher une politique).

Étape 2 : Installer et configurer CloudWatch Logs sur une instance Amazon EC2 existante

Le processus d'installation de l'agent CloudWatch Logs diffère selon que votre instance Amazon EC2 exécute Amazon Linux, Ubuntu, CentOS ou Red Hat. Utilisez les étapes correspondant à la version de Linux utilisée par votre instance.

Pour installer et configurer CloudWatch Logs sur une instance Amazon Linux existante

À partir de l'AMI Amazon Linux 2014.09, l'agent CloudWatch Logs est disponible sous forme d'installation RPM avec le package awslogs. Les versions antérieures d'Amazon Linux peuvent accéder au package awslogs en mettant à jour leur instance avec la commande sudo yum update -y. En installant le package awslogs en tant que RPM au lieu d'utiliser le programme d'installation de CloudWatch Logs, votre instance recevra régulièrement des mises à jour de packages et des correctifs d'AWS sans avoir à réinstaller manuellement l'agent CloudWatch Logs.

Avertissement

Ne mettez pas à jour l'agent CloudWatch Logs en utilisant la méthode d'installation RPM si vous avez précédemment utilisé le script Python pour installer l'agent. Cela pourrait entraîner des problèmes de configuration qui empêcheraient l'agent CloudWatch Logs d'envoyer vos journaux vers CloudWatch.

  1. Connectez-vous à votre instance Amazon Linux. Pour plus d'informations, consultez Connexion à votre instance dans le Guide de l'utilisateur Amazon EC2 pour les instances Linux.

    Pour plus d'informations sur les problèmes de connexion, consultez Résolution de la connexion à votre instance dans le Guide de l'utilisateur Amazon EC2 pour les instances Linux.

  2. Mettez à jour votre instance Amazon Linux pour récupérer les dernières modifications des référentiels de package.

    sudo yum update -y
  3. Installez le package awslogs. Il est recommandé d'utiliser cette méthode pour l'installation du package awslogs sur des instances Amazon Linux.

    sudo yum install -y awslogs
  4. Modifiez le fichier /etc/awslogs/awslogs.conf pour configurer les journaux à suivre. Pour plus d'informations sur la modification de ce fichier, consultez Référence de l'agent CloudWatch Logs.

  5. Par défaut, /etc/awslogs/awscli.conf pointe vers la région us-east-1. Pour transmettre vos journaux vers une autre région, modifiez le fichier awscli.conf et spécifiez cette région.

  6. Lancez le service awslogs.

    sudo service awslogs start

    Si vous utilisez Amazon Linux 2, lancez le service awslogs à l'aide de la commande suivante.

    sudo systemctl start awslogsd
  7. (Facultatif) Vérifiez si le fichier /var/log/awslogs.log contient des erreurs lorsque vous lancez le service.

  8. (Facultatif) Exécutez la commande suivante pour lancer le service awslogs à chaque démarrage du système.

    sudo chkconfig awslogs on

    Si vous utilisez Amazon Linux 2, utilisez la commande suivante pour lancer le service à chaque démarrage système.

    sudo systemctl enable awslogsd.service
  9. Le nouveau groupe de journaux et le nouveau flux de journal doivent être visibles dans la console CloudWatch une fois que l'agent s'exécute depuis quelques instants.

    Pour plus d'informations, consultez Affichage des données journal envoyées à CloudWatch Logs.

Pour installer et configurer CloudWatch Logs sur une instance existante de Ubuntu Server, CentOS ou Red Hat

Si vous utilisez une AMI exécutant Ubuntu Server, CentOS ou Red Hat, utilisez la procédure suivante pour installer manuellement l'agent CloudWatch Logs sur votre instance.

  1. Connectez-vous à votre instance  EC2. Pour plus d'informations, consultez Connexion à votre instance dans le Guide de l'utilisateur Amazon EC2 pour les instances Linux.

    Pour plus d'informations sur les problèmes de connexion, consultez Résolution de la connexion à votre instance dans le Guide de l'utilisateur Amazon EC2 pour les instances Linux.

  2. Exécutez le programme d'installation de l'agent CloudWatch Logs en utilisant l'une des deux options. Vous pouvez l'exécuter directement à partir d'Internet ou télécharger les fichiers et l'exécuter de manière autonome.

    Note

    Si vous utilisez CentOS 6.x, Red Hat 6.x ou Ubuntu 12.04, suivez les étapes de téléchargement et d'exécution du programme d'installation autonome. L'installation de l'agent CloudWatch Logs directement depuis Internet n'est pas prise en charge sur ces systèmes.

    Note

    Sur Ubuntu, exécutez apt-get update avant d'exécuter les commandes ci-dessous.

    Pour l'exécuter directement à partir d'Internet, utilisez les commandes suivantes et suivez les instructions :

    curl https://s3.amazonaws.com/aws-cloudwatch/downloads/latest/awslogs-agent-setup.py -O
    sudo python ./awslogs-agent-setup.py --region us-east-1

    Si la commande précédente ne fonctionne pas, essayez ce qui suit :

    sudo python3 ./awslogs-agent-setup.py --region us-east-1

    Pour le télécharger et l'exécuter de manière autonome, utilisez les commandes suivantes et suivez les instructions :

    curl https://s3.amazonaws.com/aws-cloudwatch/downloads/latest/awslogs-agent-setup.py -O
    curl https://s3.amazonaws.com/aws-cloudwatch/downloads/latest/AgentDependencies.tar.gz -O
    tar xvf AgentDependencies.tar.gz -C /tmp/
    sudo python ./awslogs-agent-setup.py --region us-east-1 --dependency-path /tmp/AgentDependencies

    Vous pouvez installer l'agent CloudWatch Logs en spécifiant les régions us-east-1, us-west-1, us-west-2, ap-south-1, ap-northeast-2, ap-southeast-1, ap-southeast-2, ap-northeast-1, eu-central-1, eu-west-1 ou sa-east-1.

    Note

    Pour plus d'informations sur la version actuelle et l'historique de versions de awslogs-agent-setup, consultez CHANGELOG.txt.

    Le programme d'installation de l'agent CloudWatch Logs a besoin de certaines informations pendant la configuration. Avant de commencer, vous devez savoir quel fichier journal vous souhaitez surveiller et son format d'horodatage. Vous devez également préparer les informations suivantes.

    Élément Description

    Identifiant de la clé d'accès AWS

    Appuyez sur Entrée si vous utilisez un rôle IAM. Sinon, saisissez votre identifiant de la clé d'accès AWS.

    Clé d'accès secrète AWS

    Appuyez sur Entrée si vous utilisez un rôle IAM. Sinon, saisissez votre clé d'accès secrète AWS.

    Nom de la région par défaut

    Appuyez sur Entrée. La région par défaut est us-east-2. Vous pouvez la définir sur us-east-1, us-west-1, us-west-2, ap-south-1, ap-northeast-2, ap-southeast-1, ap-southeast-2, ap-northeast-1, eu-central-1, eu-west-1, ou sa-east-1.

    Format de sortie par défaut

    Laissez ce champ vide et appuyez sur Entrée.

    Chemin d'accès du fichier journal à charger

    Emplacement du fichier qui contient les données des journaux à envoyer. Le programme d'installation propose un chemin d'accès.

    Nom du groupe de journaux de destination

    Nom de votre groupe de journaux. Le programme d'installation propose un nom de groupe de journaux.

    Nom du flux de journaux de destination

    Par défaut, il s'agit du nom de l'hôte. Le programme d'installation propose un nom d'hôte.

    Format d'horodatage

    Spécifiez le format de l'horodatage du fichier journal spécifié. Choisissez l'option Custom pour spécifier votre propre format.

    Position initiale

    Indique comment les données sont chargées. Choisissez start_of_file pour charger toutes les informations du fichier de données. Choisissez end_of_file pour charger uniquement les données nouvellement ajoutées.

    Une fois ces étapes réalisées, le programme d'installation vous demande si vous souhaitez configurer un autre fichier journal. Vous pouvez exécuter le processus autant de fois que vous le souhaitez pour chaque fichier journal. Si vous n'avez plus de fichiers journaux à surveiller, choisissez N lorsque vous êtes invité à configurer un autre journal par le programme d'installation. Pour plus d'informations sur les paramètres du fichier de configuration de l'agent, consultez Référence de l'agent CloudWatch Logs.

    Note

    La configuration de plusieurs sources de journal pour envoyer des données dans un flux de journal unique n'est pas prise en charge.

  3. Le nouveau groupe de journaux et le nouveau flux de journal doivent être visibles dans la console CloudWatch une fois que l'agent s'exécute depuis quelques instants.

    Pour plus d'informations, consultez Affichage des données journal envoyées à CloudWatch Logs.