Daten mit Fluent Bit in ein OpenSearch-Cluster aufnehmen

Nehmen Sie Logdaten mit Fluent Bit in ein OpenSearch-Cluster auf.

Fluent Bit ist ein einfacher Logging- und Metrikprozessor und Forwarder.

Voraussetzungen

Führen Sie die folgenden Aufgaben aus, bevor Sie mit den in diesem Thema beschriebenen Schritten fortfahren:

Fluent Bit installieren und konfigurieren

  1. Laden Sie Fluent Bit herunter, und installieren Sie es auf der VM-Instanz.
    Informationen zum Installieren der neuesten Version auf Linux-basierten Instanzen finden Sie unter Linux-Packages. Weitere Betriebssysteme finden Sie unter Unterstützte Plattformen.
  2. Führen Sie den entsprechenden Befehl für das Betriebssystem der VM-Instanz aus, um den Fluent Bit-Agent zu installieren.
    Beispiel: Führen Sie den folgenden Befehl aus, um den Fluent Bit-Agent auf einer Linux-Instanz zu installieren:
    sudo rpm -i <fluent-bit-rpm file>
  3. Aktualisieren Sie den Abschnitt OUTPUT der Fluent Bit-Konfigurationsdatei /fluent-bit/fluent-bit.conf, um das Ausgabe-Plug-in an das Cluster OpenSearch weiterzuleiten.
    Weitere Informationen zu diesem Abschnitt finden Sie unter Konfigurationsdatei - Ausgabe.

    Im Folgenden finden Sie einen Beispielcode für diesen Abschnitt der Konfigurationsdatei. Ersetzen Sie den entsprechenden Text durch die Details für Ihr Cluster. Geben Sie die OCID des Clusters OpenSearch für host an. Informationen hierzu finden Sie unter Details eines Clusters OpenSearch abrufen. Geben Sie für http_User und http_Passwd einen Benutzer an, der über ausreichende Berechtigungen zum Aufnehmen von Daten für das Cluster OpenSearch verfügt. Beispiel: Sie können den primären Benutzeraccount für die rollenbasierte Zugriffskontrolle verwenden, die Sie beim Erstellen des Clusters angegeben haben. Informationen hierzu finden Sie unter Rollenbasierte Zugriffskontrolle in der Suche mit OpenSearch.

    name - es
    host - <cluster_ID>
    port - 9200
    tls - on
    tls.verify - on
    index - <index_name>
    http_User - <cluster_user>
    http_Passwd - <cluster_password>
    Suppress_Type_Name - On
    Replace_Dots - On
    Retry_Limit - 6
    Buffer_Size - 400MB
  4. Aktualisieren Sie den Abschnitt INPUT der Fluent Bit-Konfigurationsdatei, um die Quelle für die Logdaten und deren Aufnahme anzugeben.
    Weitere Informationen zu diesem Abschnitt finden Sie unter Konfigurationsdatei - Eingabe.

    Beispiel:

    Name  tail
    Tag   file_log
    Path  /etc/fluent-bit/project/file.log
    Buffer_Max_Size  600m
    Multiline  On
    Parser_Firstline  multiline
    Buffer_Chunk_Size  2m
    Skip_Long_Lines  Off
    Skip_Empty_Lines  Off
    Mem_Buf_Limit  700m
    DB  /etc/fluent-bit/db/file.db
    DB.Sync  normal
    Refresh_Interval  30
    Rotate_Wait  20
    Exit_On_Eof  Off
    Ignore_Older  5m
    storage.type  filesystem

Testdatenaufnahme mit fließendem Bit

In diesem Abschnitt werden die Schritte zum Testen der Logdatenaufnahme mit Fluent Bit basierend auf der Konfiguration beschrieben, die Sie unter Fluent Bit installieren und konfigurieren angegeben haben. Führen Sie diese Schritte aus, während Sie mit der VM-Instanz verbunden sind. Die enthaltenen Beispielbefehle gelten für Linux-basierte Betriebssysteme. Verwenden Sie für andere Betriebssysteme die entsprechenden Befehle für dieses Betriebssystem.
  1. Führen Sie die folgenden Befehle aus, um Java und Python zu installieren:
    sudo yum install python3
    sudo yum install java
  2. Führen Sie den folgenden Befehl aus, um das Verzeichnis für die Logdaten zu erstellen:
    mkdir /etc/fluent-bit/project
  3. Führen Sie den folgenden Befehl aus, um Fluent Bit zu starten:
    sudo fluent-bit -c /etc/fluent-bit/fluent-bit.confb
  4. Erstellen Sie die python-Skriptdatei generate_log.py in /etc/fluent-bit/project, und kopieren Sie den folgenden Code in die Datei:
    Import logging
     
    # Configure logging to write to a file
     
    logging.basicConfig(filename='file.log', level=logging.DEBUG)
     
    # Generate some log messages
     
    logging.debug('This is a debug message.')
     
    logging.info('This is an informational message.')
     
    logging.warning('This is a warning message.')
     
    logging.error('This is an error message.')
     
    logging.critical('This is a critical message.')
     
    # Example of logging additional details using formatting
     
    name = 'John'
     
    age = 30
     
    logging.info('User %s, age %d, logged in.', name, age)
     
    # Example of logging an exception stack trace
     
    try:
     
        result = 10 / 0
     
    except Exception as e:
     
     logging.exception('An error occurred: %s', str(e))
  5. Führen Sie das im vorherigen Schritt erstellte Skript mit dem folgenden Befehl aus:
    python3 /etc/fluent-bit/project/generate_log.py

    Wenn Sie dieses Skript ausführen, wird eine Datei file.log erstellt, und die angegebenen Protokollmeldungen werden der Datei hinzugefügt.

Nachdem Sie das python-Skript ausgeführt haben, können Sie prüfen, ob die Logdaten in das OpenSearch-Cluster aufgenommen wurden, indem Sie eine Verbindung zum OpenSearch-Dashboard des Clusters herstellen, um den Index zu prüfen, den Sie im Abschnitt OUTPUT der Fluent Bit-Konfigurationsdatei angegeben haben. Siehe Aufgabe 6: Verbindung zu OpenSearch-Dashboards herstellen und Kurzanleitung für OpenSearch-Dashboards.