Recherche de site Web

Transférer les journaux Nginx du Droplet vers OpenSearch via Fluent Bit


Introduction

La gestion des journaux de serveur web est essentielle pour maintenir les performances, résoudre les problèmes et comprendre le comportement des utilisateurs. Nginx génère des journaux d'accès et d'erreurs précieux. Ce tutoriel vous guidera à travers l'installation de Fluent Bit sur un Droplet, sa configuration pour collecter les journaux Nginx, et leur envoi vers Managed OpenSearch de Linux-Console.net pour analyse.

Prérequis

Avant de commencer, assurez-vous d'avoir les éléments suivants en place :

  1. Un Droplet Linux-Console.net avec le serveur web Nginx installé.
  2. Un cluster OpenSearch géré.

Étape 1 - Installation de Fluent Bit

Fluent Bit est un processeur et transmetteur de journaux open source et léger. Il est conçu pour collecter des données et des journaux provenant de diverses sources, les traiter ou les transformer, puis les transmettre à différentes destinations.

FluentBit peut être installé sur plusieurs plateformes comme Ubuntu, Debian, RedHat, CentOS en exécutant la commande suivante sur le terminal de votre Droplet :

curl https://raw.githubusercontent.com/fluent/fluent-bit/master/install.sh | sh

Étape 2 - Configuration de Fluent Bit pour envoyer des journaux vers OpenSearch

Par défaut, les fichiers de configuration de Fluent Bit se trouvent dans /etc/fluent-bit/. Pour transférer les journaux vers OpenSearch, vous devrez modifier le fichier fluent-bit.conf.

Entrées FluentBit

Fluent Bit fournit une gamme de plugins d'entrée pour collecter des données de journaux et d'événements à partir de diverses sources. Pour notre cas d'utilisation de collecte de journaux à partir de fichiers journaux, nous utiliserons le plugin d'entrée tail. Ce plugin est spécialement conçu pour lire les données à partir de fichiers, gérer la rotation des journaux et diffuser les nouvelles entrées au fur et à mesure qu'elles sont enregistrées dans les fichiers journaux.

Mettez à jour le fichier fluent-bit.conf comme suit :

[INPUT]
    name tail
    Tag nginx.access
    path /var/log/nginx/access.log
    parser  nginx

[INPUT]
    Name  tail
    Tag   nginx.error
    path  /var/log/nginx/error.log

Pour plus d'informations sur les entrées de Fluent Bit, consultez ce lien : https://docs.fluentbit.io/manual/pipeline/inputs.

fluentbit fournit déjà un analyseur par défaut pour les journaux d'accès nginx.

Sorties FluentBit

Comme les plugins d'entrée, Fluent Bit fournit un plugin de sortie qui envoie les journaux collectés et traités vers différentes destinations. Puisque nous envoyons des journaux vers OpenSearch, utilisons le plugin de sortie opensearch.

[OUTPUT]
    Name  opensearch
    Match nginx.access
    Host <OpenSearch_Host>
    port 25060
    HTTP_User doadmin
    HTTP_Passwd <OpenSearch_Password>
    Index fbit-nginx-access
    tls On
    Suppress_Type_Name On

[OUTPUT]
    Name  opensearch
    Match nginx.error
    Host <OpenSearch_Host>
    port 25060
    HTTP_User doadmin
    HTTP_Passwd <OpenSearch_Password>
    Index fbit-nginx-error
    tls On
    Suppress_Type_Name On 

Remplacez le <OpenSearch_Host> par le nom d’hôte de votre serveur OpenSearch et le <OpenSearch_Password> par votre mot de passe OpenSearch.

Une fois les configurations définies, démarrez le service Fluent Bit en exécutant :

systemctl enable fluent-bit.service
systemctl start fluent-bit.service
systemctl status fluent-bit.service

Dépannage

Vérifier la connectivité

Vous pouvez vérifier que Logstash peut se connecter à OpenSearch en testant la connectivité :

curl -u your_username:your_password -X GET "https://your-opensearch-server:25060/_cat/indices?v"

Remplacez your-OpenSearch-server par le nom d’hôte de votre serveur OpenSearch, your_username et your_password par vos identifiants OpenSearch.

Ingestion de données

Assurez-vous que les données sont correctement indexées dans OpenSearch :

curl -u your_username:your_password -X GET "http://your-opensearch-server:25060/<your-index-name>/_search?pretty"

Remplacez your-OpenSearch-server par le nom d’hôte de votre serveur OpenSearch, your_username et your_password par vos identifiants OpenSearch, et your-index-name par le nom de l’index.

Configuration du pare-feu et du réseau

Assurez-vous que les règles du pare-feu et les paramètres réseau permettent le trafic entre Logstash et OpenSearch sur le port.

Vérifier les journaux Fluent Bit

Par défaut, les journaux sont écrits dans le journal système.

sudo journalctl -u fluent-bit

Valider la configuration

Assurez-vous que les fichiers de configuration sont syntaxiquement corrects.

/opt/fluent-bit/bin/fluent-bit -c /etc/fluent-bit/fluent-bit.conf --dry-run

Conclusion

Dans ce tutoriel, nous avons parcouru le processus d'installation et de configuration de Fluent Bit pour collecter les journaux Nginx et les transférer vers Managed OpenSearch de Linux-Console.net pour analyse. En suivant ces étapes, vous devriez maintenant avoir un système de gestion des journaux rationalisé en place, vous permettant de surveiller et d'analyser efficacement les journaux de votre serveur web.

Installation : Nous avons installé Fluent Bit sur un Droplet en utilisant une commande curl simple adaptée à différentes plateformes.

Configuration : Nous avons mis à jour le fichier fluent-bit.conf pour collecter les journaux d'accès et d'erreur Nginx en utilisant le plugin d'entrée tail et les envoyer à OpenSearch en utilisant le plugin de sortie opensearch.

Gestion des services : Nous avons activé et démarré le service Fluent Bit pour nous assurer qu'il fonctionne correctement.

Dépannage : Nous avons couvert les étapes essentielles de dépannage, y compris la vérification de la connectivité, le contrôle de l'ingestion des données et la consultation des journaux de Fluent Bit.

Avec Fluent Bit correctement configuré, vous pourrez tirer parti des puissantes capacités de recherche et de visualisation d'OpenSearch pour obtenir des informations à partir de vos journaux Nginx.