Installieren von Fluent Bit für die Protokollweiterleitung

In diesem Thema wird die Bereitstellung von Fluent Bit in einem eigenständigen Verwaltungs- oder Arbeitslastcluster in Tanzu Kubernetes Grid erläutert.

Fluent Bit ist ein einfacher Protokollprozessor und eine einfache Ereignisweiterleitung. Mit der in dieser Version von Tanzu Kubernetes Grid bereitgestellten Fluent Bit-Implementierung können Sie Protokolle aus Clustern erfassen, die unter vSphere 8, Amazon Web Services (AWS) und Azure ausgeführt werden. Sie können sie dann an einen Protokollspeicheranbieter wie Elastic Search, Kafka, Splunk oder an einen HTTP-Endpoint weiterleiten.

Sie können Fluent Bit auf jedem eigenständigen Verwaltungs- oder Arbeitslastcluster bereitstellen, aus dem Sie Protokolle erfassen möchten. Je nach verwendetem Endpoint konfigurieren Sie zuerst ein Ausgabe-Plug-In auf dem Cluster, für den Protokolle erfasst werden sollen. Anschließend stellen Sie Fluent Bit auf dem Cluster bereit.

Voraussetzungen

Vorbereiten des Clusters für die Fluent Bit-Bereitstellung

Hinweis

Sie müssen Fluent Bit in jedem Cluster bereitstellen, für den Protokolle erfasst werden sollen.

So bereiten Sie den Cluster vor:

  1. Rufen Sie die Admin-Anmeldedaten des Clusters ab, in dem Sie Fluent Bit bereitstellen möchten. Beispiel:

    tanzu cluster kubeconfig get my-cluster --admin
    
  2. Legen Sie den Kontext von kubectl auf den Cluster fest. Beispiel:

    kubectl config use-context my-cluster-admin@my-cluster
    

Bereitstellen von Fluent Bit in einem Cluster

Führen Sie folgendes Verfahren durch, um Fluent Bit auf einem Cluster bereitzustellen:

  1. Wenn das standard-Paket-Repository noch nicht auf dem Cluster installiert ist, installieren Sie es:

    Hinweis

    Wenn Sie einen planbasierten Cluster (Legacy) als Ziel verwenden, überspringen Sie diesen Schritt. Für planbasierte Cluster wird das tanzu-standard-Paket-Repository automatisch in jedem Cluster im Namespace tanzu-package-repo-global aktiviert.

    tanzu package repository add tanzu-standard --url PACKAGE-REPOSITORY-ENDPOINT --namespace tkg-system
    

    Dabei ist PACKAGE-REPOSITORY-ENDPOINT die URL des Paket-Repositorys standard. Für diese Version lautet die URL projects.registry.vmware.com/tkg/packages/standard/repo:v2.1.1.

    Informationen zum Abrufen dieses Werts über die Tanzu CLI finden Sie unter Listen von Paketrepositorys oder in Tanzu Mission Control in der Liste Add-Ons (Addons) > Repositorys (Repositories) im Fensterbereich Cluster.

  2. Wenn Sie dies noch nicht getan haben, installieren Sie cert-manager im Cluster. Eine Anleitung finden Sie unter Installieren von cert-manager für die Zertifikatsverwaltung.

  3. Bestätigen Sie, dass das Fluent Bit-Paket in Ihrem Arbeitslastcluster verfügbar ist:

    tanzu package available list -A
    
  4. Rufen Sie die Version des verfügbaren Pakets ab:

    tanzu package available list fluent-bit.tanzu.vmware.com -A
    
  5. Bereiten Sie eine Konfigurationsdatei für das Fluent Bit-Paket vor:

    1. Rufen Sie die Standardkonfiguration des Pakets ab:

      tanzu package available get fluent-bit.tanzu.vmware.com/PACKAGE-VERSION --default-values-file-output FILE-PATH
      

      Dabei ist PACKAGE-VERSION die Version des Fluent Bit-Pakets, das Sie installieren möchten, und FILE-PATH der Speicherort, an dem Sie die Konfigurationsdatei speichern möchten, z. B. fluent-bit-data-values.yaml.

    2. Fügen Sie basierend auf dem zu konfigurierenden Protokollverwaltungs-Backend eine oder mehrere [Output]-Konfigurationen zum Schlüssel fluent_bit.config.outputs in der Datei fluent-bit-data-values.yaml hinzu.

    3. Überprüfen Sie weitere Konfigurationsparameter und ändern Sie sie bei Bedarf. Links zu vollständigen Listen der Konfigurationsparameter, die Sie in fluent-bit-data-values.yaml festlegen können, finden Sie unten im Abschnitt Konfigurationsparameter des Fluent Bit-Pakets.

  6. Entfernen Sie nach der Vorbereitung Ihrer Datei fluent-bit-data-values.yaml alle Kommentare in der Datei:

    yq -i eval '... comments=""' fluent-bit-data-values.yaml
    
  7. Führen Sie tanzu package install aus, um das Paket bereitzustellen:

    tanzu package install fluent-bit \
    --package fluent-bit.tanzu.vmware.com \
    --version AVAILABLE-PACKAGE-VERSION \
    --values-file fluent-bit-data-values.yaml \
    --namespace TARGET-NAMESPACE
    

    Dabei gilt:

    • TARGET-NAMESPACE ist der Namespace, in dem das Fluent Bit-Paket installiert werden soll. Beispielsweise der my-packages-Namespace.

      • Wenn das Flag --namespace nicht angegeben ist, verwendet die Tanzu CLI den Namespace default. Die Fluent Bit-Pods und alle anderen mit der Fluent Bit-Komponente verknüpften Ressourcen werden in dem Namespace erstellt, den Sie in fluent-bit-data-values.yaml bereitgestellt haben. Installieren Sie das Fluent Bit-Paket nicht in diesem Namespace.
      • Der angegebene Namespace muss bereits vorhanden sein, wie z. B. durch die Ausführung von kubectl create namespace my-packages.
    • AVAILABLE-PACKAGE-VERSION ist die Version, die Sie durch Ausführung des tanzu package available (siehe oben) abgerufen haben.

    Beispiel:

    tanzu package install fluent-bit --package fluent-bit.tanzu.vmware.com --namespace my-packages --version 1.8.15+vmware.1-tkg.1
    

Konfigurationsparameter des Fluent Bit-Pakets

In der folgenden Tabelle werden die Konfigurationsparameter des Fluent Bit-Pakets aufgelistet und ihre Standardwerte beschrieben. Sie können die folgenden Konfigurationswerte in der Datei fluent-bit-data-values.yml festlegen, die oben in Bereitstellen von Fluent Bit in einem Cluster erstellt wurde.

Parameter Beschreibung Typ Standard
namespace Namespace, in dem Fluent Bit bereitgestellt wird. Zeichenfolge tanzu-system-logging
fluent_bit.config.outputs Informationen zur Konfiguration für Fluent Bit-Ausgaben finden Sie in der Fluent Bit-Dokumentation. YAML mit mehrzeiligen Zeichenfolgen Standard output
fluent_bit.config.parsers Informationen zur Konfiguration für Fluent Bit-Parser finden Sie in der Fluent Bit-Dokumentation. YAML mit mehrzeiligen Zeichenfolgen JSON parser
fluent_bit.config.plugins Inhalt für die Konfiguration der Fluent Bit-Plug-Ins. Zeichenfolge <nil>
fluent_bit.config.service Informationen zur Konfiguration für den Fluent Bit-Dienst finden Sie in der Fluent Bit-Dokumentation. YAML mit mehrzeiligen Zeichenfolgen Standardkonfiguration des Fluent Bit-Dienstes.
fluent_bit.config.streams Inhalt für die Fluent Bit-Streams-Datei. Zeichenfolge <nil>
fluent_bit.config.filters Informationen zur Konfiguration für Fluent Bit-Filter finden Sie in der Fluent Bit-Dokumentation. YAML mit mehrzeiligen Zeichenfolgen Kubernetes-Standardfilter.
fluent_bit.config.inputs Informationen zur Konfiguration für Fluent Bit-Eingaben finden Sie in der Fluent Bit-Dokumentation. Zeichenfolge Erfassen Sie Kubernetes-Containerprotokolle mithilfe des Plug-Ins tail und erfassen Sie systemd-Protokolle aus kubelet.
fluent_bit.daemonset.resources Informationen zur Konfiguration für Ressourcenanforderungen der Fluent Bit-Container finden Sie in der Fluent Bit-Dokumentation. YAML mit mehrzeiligen Zeichenfolgen <nil>
fluent_bit.daemonset.podAnnotations Die Pod-Anmerkungen der Fluent Bit-Bereitstellungen. Liste <nil>
fluent_bit.daemonset.podLabels Die Pod-Bezeichnungen der Fluent Bit-Bereitstellungen. Liste <nil>

Überprüfen der Fluent Bit-Bereitstellung

Nach der Bereitstellung von Fluent Bit können Sie überprüfen, ob die Bereitstellung erfolgreich durchgeführt wurde:

  1. Bestätigen Sie, dass das Fluent-Bit-Paket installiert ist. Beispiel:

    tanzu package installed list -A
    

    Das fluent-bit-Paket und die fluent-bit -App werden in dem Namespace installiert, den Sie beim Ausführen des Befehls tanzu package install angeben.

  2. Bestätigen Sie, dass die fluent-bit-App erfolgreich in Ihrem AVAILABLE-PACKAGE-NAMESPACE abgeglichen wurde:

    kubectl get apps -A
    

    Lautet der Status nicht Reconcile succeeded, zeigen Sie die vollständigen Statusdetails der App fluent-bit an. Die Anzeige des vollständigen Status kann Sie bei der Behebung des Problems unterstützen:

    kubectl get app fluent-bit --namespace AVAILABLE-PACKAGE-NAMESPACE -o yaml
    

    Dabei gilt: AVAILABLE-PACKAGE-NAMESPACE ist der Namespace, in dem Sie das Paket installiert haben.

  3. Bestätigen Sie, dass die neuen Dienste ausgeführt werden, indem Sie alle im Cluster ausgeführten Pods auflisten.

    kubectl get pods -A
    

    Im Namespace tanzu-system-logging sollte der in einem Pod ausgeführte fluent-bit-Dienst angezeigt werden:

    NAMESPACE               NAME                     READY   STATUS    RESTARTS   AGE
    [...]
    tanzu-system-logging    fluent-bit-zd2tn         1/1     Running   0          6m23s
    [...]
    

    Die Fluent Bit-Pods und weitere mit der Fluent Bit-Komponente verknüpfte Ressourcen werden in dem Namespace erstellt, den Sie in der Datei fluent-bit-data-values.yaml angegeben haben. Wenn Sie den Standard-Namespace verwenden, werden die Pods und Komponenten im Namespace tanzu-system-logging erstellt.

Aktualisieren einer ausgeführten Fluent Bit-Bereitstellung

Um nach der Bereitstellung Änderungen an der Konfiguration des Fluent Bit-Pakets vorzunehmen, aktualisieren Sie Ihr bereitgestelltes Fluent Bit-Paket:

  1. Aktualisieren Sie die Fluent Bit-Konfiguration in der Datei fluent-bit-data-values.yaml.

  2. Aktualisieren Sie das installierte Paket:

    tanzu package installed update fluent-bit \
    --version 1.8.15+vmware.1-tkg.1 \
    --values-file fluent-bit-data-values.yaml \
    --namespace my-packages
    

    Erwartete Ausgabe:

    | Updating package 'fluent-bit'
    - Getting package install for 'fluent-bit'
    | Updating secret 'fluent-bit-my-packages-values'
    | Updating package install for 'fluent-bit'
    
     Updated package install 'fluent-bit' in namespace 'my-packages'
    

Das Fluent Bit-Paket wird mit dem neuen Wert oder den von Ihnen hinzugefügten Werten abgeglichen. Es kann bis zu fünf Minuten dauern, bis kapp-controller die Änderungen übernommen hat.

Informationen zum Aktualisieren finden Sie unter Aktualisieren eines Pakets.

Löschen einer Fluent Bit-Bereitstellung

Führen Sie folgenden Befehl aus, um das Fluent Bit-Paket auf Ihrem Cluster zu löschen:

tanzu package installed delete fluent-bit --namespace my-packages

Informationen zum Löschen finden Sie unter Löschen eines Pakets.

check-circle-line exclamation-circle-line close-line
Scroll to top icon