Collecter des métriques sur le serveur Web Apache avec l'agent Ops

Découvrez comment collecter et surveiller des métriques à partir d'un serveur Web Apache installé sur une instance de machine virtuelle (VM) Compute Engine à l'aide de l'agent Ops:

  1. Créez une instance de VM Compute Engine et installez l'agent Ops.
  2. installer un serveur Web Apache ;
  3. Configurer l'agent Ops pour le serveur Web Apache
  4. Générer du trafic vers le serveur Web Apache
  5. Affichez les métriques dans le tableau de bord Apache prédéfini.
  6. créer une règle d'alerte.
  7. Testez la règle d'alerte.
  8. effectuer un nettoyage.

Pour obtenir des instructions détaillées sur cette tâche directement dans la console Google Cloud, cliquez sur Visite guidée :

Visite guidée


Avant de commencer

  1. Les contraintes de sécurité définies par votre organisation peuvent vous empêcher d'effectuer les étapes suivantes. Pour obtenir des informations de dépannage, consultez la page Développer des applications dans un environnement Google Cloud limité.

  2. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  3. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  4. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  5. Activer les API Compute Engine, Cloud Monitoring, and Cloud Logging.

    Activer les API

  6. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder au sélecteur de projet

  7. Vérifiez que la facturation est activée pour votre projet Google Cloud.

  8. Activer les API Compute Engine, Cloud Monitoring, and Cloud Logging.

    Activer les API

Créer une instance de VM

  1. Dans le panneau de navigation de la console Google Cloud, sélectionnez Compute Engine, puis Instances de VM:

    Accéder à la page Instances de VM

  2. Créez une VM en cliquant sur Créer une instance.

  3. Dans le champ Nom, saisissez un nom descriptif.
  4. Dans le champ Type de machine, sélectionnez e2-small.
  5. Dans la section Disque de démarrage, conservez le paramètre par défaut Debian GNU/Linux.
  6. Dans la section Pare-feu, sélectionnez Autoriser le trafic HTTP et Autoriser le trafic HTTPS.
  7. Dans la section Observabilité – Agent Ops, sélectionnez Installer l'agent Ops pour la surveillance et la journalisation.
  8. Cliquez sur Créer.

Installer un serveur Web Apache

Pour installer un serveur Web Apache sur votre instance de VM Compute Engine, procédez comme suit:

  1. Sur la page Instances de VM, localisez votre nouvelle VM, accédez à la colonne Connecter, puis cliquez sur SSH.

    Vous rencontrez des problèmes de connexion ? Reportez-vous à la page Résoudre les problèmes liés à SSH.

  2. Pour mettre à jour les listes de packages, copiez la commande suivante dans le presse-papiers, collez-la dans le terminal SSH, puis appuyez sur Entrée:

    sudo apt-get update
    
  3. Une fois que le message "Lecture des listes de packages... OK", dans le terminal SSH, exécutez la commande suivante pour installer un serveur Web Apache2:

    sudo apt-get install apache2 php7.0
    

    Lorsque vous êtes invité à continuer l'installation, saisissez Y. Si la commande d'installation échoue, utilisez sudo apt-get install apache2 php.

  4. Lorsque l'invite de commande est renvoyée, accédez à la page Instances de VM et copiez l'adresse IP externe de la VM dans l'URL suivante:

    http://EXTERNAL_IP
    
  5. Pour vous connecter à votre serveur Web Apache, ouvrez un nouvel onglet de navigateur, puis saisissez l'URL de l'étape précédente.

    Une fois le serveur Web installé, l'onglet du navigateur affiche la page par défaut d'Apache2 Debian.

    Affichage de la page par défaut d'Apache2.

Collecter les journaux et les métriques du serveur Web Apache

Au cours de ces étapes, vous configurez l'agent Ops pour collecter des journaux et des métriques à partir de votre serveur Web Apache :
  1. Accédez au terminal SSH de votre instance de VM. Si aucun terminal n'est ouvert, procédez comme suit:

    1. Dans le panneau de navigation de la console Google Cloud, sélectionnez Compute Engine, puis Instances de VM:

      Accéder à la page Instances de VM

    2. Recherchez votre nouvelle VM, puis cliquez sur SSH.

  2. Copiez la commande suivante, collez-la dans le terminal de votre instance, puis appuyez sur Entrée:

    # Configures Ops Agent to collect telemetry from the app and restart Ops Agent.
    
    set -e
    
    # Create a back up of the existing file so existing configurations are not lost.
    sudo cp /etc/google-cloud-ops-agent/config.yaml /etc/google-cloud-ops-agent/config.yaml.bak
    
    # Configure the Ops Agent.
    sudo tee /etc/google-cloud-ops-agent/config.yaml > /dev/null << EOF
    metrics:
      receivers:
        apache:
          type: apache
      service:
        pipelines:
          apache:
            receivers:
              - apache
    logging:
      receivers:
        apache_access:
          type: apache_access
        apache_error:
          type: apache_error
      service:
        pipelines:
          apache:
            receivers:
              - apache_access
              - apache_error
    EOF
    
    sudo service google-cloud-ops-agent restart
    sleep 60
    

    La commande précédente crée la configuration permettant de collecter et d'ingérer les journaux et les métriques à partir du serveur Web Apache. Pour en savoir plus, consultez la page Configurer l'agent Ops pour le serveur Web Apache.

  3. Attendez que l'invite de commande s'affiche, ce qui prend au moins 60 secondes.

Générer du trafic

Pour générer du trafic vers votre serveur Web Apache, procédez comme suit:

  1. Accédez au terminal SSH de votre instance de VM. Si aucun terminal n'est ouvert, procédez comme suit:

    1. Dans le panneau de navigation de la console Google Cloud, sélectionnez Compute Engine, puis Instances de VM:

      Accéder à la page Instances de VM

    2. Recherchez votre nouvelle VM, puis cliquez sur SSH.

  2. Dans le terminal SSH, exécutez la commande suivante, qui génère des requêtes vers votre serveur Web Apache:

    timeout 120 bash -c -- 'while true; do curl localhost; sleep $((RANDOM % 4)) ; done'
  3. Attendez deux minutes que l'invite de commande s'affiche ou que le terminal se ferme. Pendant l'exécution de la commande, du texte HTML s'affiche dans le terminal.

Afficher les métriques Apache

Pour afficher le tableau de bord Présentation d'Apache, qui est créé automatiquement, procédez comme suit:

  1. Dans le panneau de navigation de la console Google Cloud, sélectionnez Surveillance, puis  Tableaux de bord:

    Accéder à la page Tableaux de bord

  2. Dans le volet Tous les tableaux de bord, sélectionnez le tableau de bord Présentation d'Apache dans la liste.

    Exemple du tableau de bord "Présentation d'Apache"

Vous avez configuré l'agent Ops pour collecter les journaux et les métriques à partir de votre serveur Web Apache, et vous avez consulté les métriques. L'étape suivante consiste à créer une règle d'alerte afin d'être averti lorsque la charge sur votre serveur Web Apache dépasse un certain seuil.

Créer un canal de notification par e-mail

Avant de créer une règle d'alerte, configurez les canaux de notification que la règle d'alerte doit utiliser. Cloud Monitoring accepte de nombreux types de canaux de notification, y compris les e-mails, Slack, PagerDuty et Pub/Sub. Pour en savoir plus, consultez Créer et gérer des canaux de notification. Pour recevoir des notifications par e-mail, procédez comme suit :
  1. Dans le panneau de navigation de la console Google Cloud, sélectionnez Monitoring, puis  Alertes:

    Accéder à Alertes

  2. Dans la barre d'outils, cliquez sur Modifier les canaux de notification.
  3. Sur la page Canaux de notification, faites défiler la page jusqu'à E-mail, puis cliquez sur Ajouter.
  4. Saisissez votre adresse e-mail, un nom à afficher tel que My email, puis cliquez sur Enregistrer.

Créer une règle d'alerte

Dans cette section, vous allez créer une règle d'alerte afin d'être averti lorsque le trafic vers votre serveur Web Apache dépasse un seuil défini:

  1. Dans le panneau de navigation de la console Google Cloud, sélectionnez Monitoring, puis  Alertes:

    Accéder à Alertes

  2. Cliquez sur Create policy (Créer une règle).
  3. Sélectionnez la série temporelle à surveiller :

    1. Cliquez sur Sélectionner une métrique, puis sélectionnez Instance de VM.
    2. Dans la liste Catégories de métriques actives, sélectionnez Apache.
    3. Dans la liste Métriques actives, sélectionnez workload/apache.traffic.
    4. Cliquez sur Appliquer.

    Le graphique correspondant au trafic Apache s'affiche.

  4. Accédez aux champs Configurer le déclencheur, puis définissez le champ Valeur du seuil sur 1500.

    Le seuil s'affiche sous forme de ligne en pointillés dans le graphique. Assurez-vous que la ligne en pointillés est bien inférieure au niveau de pic de trafic.

  5. Accédez aux champs Notifications et nom, puis utilisez le menu Canaux de notification pour sélectionner votre adresse e-mail.

  6. Pour le nom de la règle, saisissez Apache traffic above threshold.

  7. Passez aux champs Examiner l'alerte, examinez la règle d'alerte, puis cliquez sur Créer une règle.

Tester la règle d'alerte

Pour tester la règle d'alerte, générez du trafic dépassant le seuil:

  1. Accédez au terminal SSH de votre instance de VM. Si aucun terminal n'est ouvert, procédez comme suit:

    1. Dans le panneau de navigation de la console Google Cloud, sélectionnez Compute Engine, puis Instances de VM:

      Accéder à la page Instances de VM

    2. Recherchez votre nouvelle VM, puis cliquez sur SSH.

  2. Dans le terminal SSH, exécutez la commande suivante, qui génère des requêtes vers votre serveur Web Apache:

    timeout 120 bash -c -- 'while true; do curl localhost; sleep $((RANDOM % 4)) ; done'
  3. Attendez deux minutes que l'invite de commande s'affiche ou que le terminal se ferme. Pendant l'exécution de la commande, du texte HTML s'affiche dans le terminal.
  4. Lorsque l'invite de commande s'affiche, recherchez dans votre messagerie un message dont l'objet commence par [ALERT].

    Si vous ne voyez pas d'e-mail, examinez le graphique de la règle d'alerte pour vérifier que le niveau de trafic a dépassé le seuil. Vous devrez peut-être réexécuter la commande précédente. Sinon, attendez une ou deux minutes le temps de recevoir l'e-mail.

    La notification fournit un résumé de la règle d'alerte et un lien vers un incident. Chaque incident contient un enregistrement de la défaillance, qui est généralement utile lors du dépannage.

    Notification par e-mail pour la règle d'alerte de trafic Apache.

Vous avez configuré l'agent Ops pour collecter les journaux et les métriques à partir de votre serveur Web Apache, mais vous n'avez affiché que les métriques. Pour en savoir plus sur l'affichage des journaux du serveur Web Apache, consultez le guide de démarrage rapide Afficher les journaux du serveur Web Apache.

Effectuer un nettoyage

Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud, procédez comme suit :

Si vous avez créé un projet et que vous n'en avez plus besoin, supprimez-le.

Si vous avez utilisé un projet existant, procédez comme suit:

  1. Si vous avez créé une VM, supprimez-la:

    1. Dans la console Google Cloud, accédez à la page Instances de VM.

      Accéder à la page Instances de VM

    2. Cochez la case correspondant à instance que vous souhaitez supprimer.
    3. Pour supprimer l'instance, cliquez sur Autres actions , cliquez sur Supprimer, puis suivez les instructions.
  2. Supprimez la règle d'alerte que vous avez créée:

    1. Dans le panneau de navigation de la console Google Cloud, sélectionnez Monitoring, puis  Alertes:

      Accéder à Alertes

    2. Sélectionnez la règle d'alerte que vous avez créée, puis cliquez sur Supprimer.

Étapes suivantes