Skip to main content
How to enable StorageGRID in your environment
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Analyse des journaux StorageGRID à l'aide de la pile ELK

Contributeurs

Par Angela Cheng

Grâce à la fonction de transfert syslog StorageGRID, vous pouvez configurer un serveur syslog externe pour collecter et analyser les messages journaux StorageGRID. ELK (Elasticsearch, Logstash, Kibana) est devenu l'une des solutions d'analytique des journaux les plus populaires. Regardez la "Analyse du journal StorageGRID à l'aide de la vidéo ELK" pour afficher un exemple de configuration ELK et découvrir comment elle peut être utilisée pour identifier et dépanner les requêtes S3 ayant échoué. StorageGRID 11.9 prend en charge l'exportation du journal d'accès aux noeuds finaux de l'équilibreur de charge vers le serveur syslog externe. Regardez cette "Vidéo YouTube" vidéo pour en savoir plus sur cette nouvelle fonctionnalité. Cet article fournit des exemples de fichiers de configuration Logstash, de requêtes Kibana, de graphiques et de tableau de bord, pour vous offrir un démarrage rapide de la gestion des journaux et de l'analytique StorageGRID.

De formation

  • StorageGRID 11.6.0.2 ou version ultérieure

  • ELK (Elasticsearch, Logstash et Kibana) 7.1x ou plus installé et en fonctionnement

Exemples de fichiers

Hypothèse

Les lecteurs connaissent la terminologie et les opérations de StorageGRID et d'ELK.

Instructions

Deux exemples de versions sont fournis en raison des différences de noms définies par des motifs grk. + par exemple, le modèle SYSLOGBASE grok dans le fichier de configuration Logstash définit les noms de champs différemment en fonction de la version Logstash installée.

match => {"message" => '<%{POSINT:syslog_pri}>%{SYSLOGBASE} %{GREEDYDATA:msg-details}'}

Logstash 7.17 échantillon

Échantillon Logash 7.17

Logstash 8.23 échantillon

Échantillon Logash 8.23

Étapes

  1. Décompressez l'échantillon fourni en fonction de la version ELK installée. + l'exemple de dossier inclut deux exemples de configuration de Logstash : + sglog-2-file.conf: ce fichier de configuration envoie des messages de journal StorageGRID vers un fichier sur Logstash sans transformation de données. Vous pouvez l'utiliser pour confirmer que Logstash reçoit des messages StorageGRID ou pour vous aider à comprendre les modèles de journaux StorageGRID. + sglog-2-es.conf: ce fichier de configuration transforme les messages du journal StorageGRID en utilisant divers modèles et filtres. Il comprend des exemples d'instructions de DROP, qui sont basées sur des motifs ou des filtres. Le résultat est envoyé à Elasticsearch pour l'indexation. + Personnalisez le fichier de configuration sélectionné en fonction de l'instruction dans le fichier.

  2. Testez le fichier de configuration personnalisé :

    /usr/share/logstash/bin/logstash --config.test_and_exit -f <config-file-path/file>

    Si la dernière ligne renvoyée est similaire à la ligne ci-dessous, le fichier de configuration n'a pas d'erreurs de syntaxe :

    [LogStash::Runner] runner - Using config.test_and_exit mode. Config Validation Result: OK. Exiting Logstash
  3. Copiez le fichier conf personnalisé dans la configuration du serveur Logstash : /etc/logstash/conf.d + si vous n'avez pas activé config.reload.automatic dans /etc/logstash/logstash.yml, redémarrez le service Logstash. Dans le cas contraire, attendez que l'intervalle de rechargement de la configuration s'écoule.

     grep reload /etc/logstash/logstash.yml
    # Periodically check if the configuration has changed and reload the pipeline
    config.reload.automatic: true
    config.reload.interval: 5s
  4. Vérifiez /var/log/logstash/logstash-plain.log et assurez-vous qu'il n'y a pas d'erreur lors du démarrage de Logstash avec le nouveau fichier de configuration.

  5. Vérifiez que le port TCP est démarré et que vous écoutez. + dans cet exemple, le port TCP 5000 est utilisé.

    netstat -ntpa | grep 5000
    tcp6       0      0 :::5000                 :::*                    LISTEN      25744/java
  6. À partir de l'interface graphique du gestionnaire StorageGRID, configurez le serveur syslog externe pour envoyer des messages de journal à Logstash. Reportez-vous au "vidéo de démonstration" pour plus de détails.

  7. Vous devez configurer ou désactiver le pare-feu sur le serveur Logstash pour autoriser la connexion des nœuds StorageGRID au port TCP défini.

  8. Dans l'interface graphique Kibana, sélectionnez Management → Dev Tools. Sur la page Console, exécutez cette commande OBTENIR pour confirmer la création de nouveaux index sur Elasticsearch.

    GET /_cat/indices/*?v=true&s=index
  9. A partir de l'interface graphique Kibana, créez un motif d'index (ELK 7.x) ou une vue de données (ELK 8.x).

  10. Dans l'interface utilisateur graphique de Kibana, entrez « objets lavés » dans la zone de recherche située en haut au centre. + sur la page objets enregistrés, sélectionnez Importer. Sous Options d'importation, sélectionnez « demander une action en cas de conflit »

    Options d'importation Kibana

    Importez elk<version>-query-chart-sample.ndjson. + lorsque vous êtes invité à résoudre le conflit, sélectionnez le modèle d'index ou la vue de données que vous avez créé à l'étape 8.

    Conflit Kibana

    Les objets Kibana suivants sont importés : + Query + * audit-msg-s3rq-orlm + * bycast log s3 messages liés + * loglevel warning or above + * échec de l'événement de sécurité + bycast.log * nginx-gw journal d'accès au point final (disponible uniquement dans elk8-sample-for-sgg.zip) + Chart analyse de type de sécurité + nombre moyen de messages HTTP * s3 sur la base du tableau de temps de réponse * s3 * s3 + nombre de demandes supérieur à la demande * s3 *.

Vous êtes maintenant prêt à effectuer une analyse des journaux StorageGRID à l'aide de Kibana.