Weiterleiten von Apache-Protokollen vom K8s-Pod zum Syslog-Server

Weiterleiten von Apache-Protokollen vom K8s-Pod zum Syslog-Server

Ich bin neu bei Kubernetes und weiß, dass es mehrere Möglichkeiten zur Protokollerfassung gibt. Aber ich frage speziell zu meinem Szenario. Wir haben einen Syslog xyz.com-Port 8090. Jetzt möchten wir, dass unsere Pods Protokolle an unseren Server xyz.com senden. Wie lässt sich das am besten erreichen? Gibt es eine zentrale Möglichkeit, Protokolle von allen Bereitstellungs-Pods anzupassen, oder müssen wir den rsyslog-Dienst in einem Container konfigurieren und den Container neu erstellen? Oder gibt es eine bewährte Methode, die Sie vorschlagen können?

Danke, Yousuf

Antwort1

Beziehen aufSudheer ChamarthisMedium Blog Veröffentlicht in ITNEXTFühren Sie den Rsyslog-Server in Kubernetes ausund befolgen Sie die nachstehenden Schritte, um Protokolle auf dem Syslog-Server zu streamen:

  1. Erstellen und übertragen Sie Ihr Image in die Docker-Registrierung.
  2. Separaten Namespace erstellen
  3. Persistenten Speicher erstellen
  4. Rsyslog-Bereitstellung erstellen
  5. Bereitstellung für den Dienst verfügbar machen
  6. Dienst für NLB verfügbar machen
  7. Führen Sie Tests und Skalierungen durch

Sie können einen Blick auf dieGithub-ArchivAnProtokollierungsarchitekturkubernetes-rsyslog-loggingdas eine Kubernetes-Konfiguration zur Einrichtung einer zentralisierten Protokollierungslösung bereitstellt. Sie können einen Blick aufJohn StarichsTutorial zuKubernetes-Protokollweiterleitung mit Syslog.

Als @Lerchenim Kommentar erwähnt,Verwenden eines Sidecar-Containers mit dem Protokollierungsagentenwird häufig verwendet. Es ist anwendungsunabhängig und stellt somit eine viel flexiblere Lösung dar. Beachten Sie, dass es auf zwei verschiedene Arten implementiert werden kann.

verwandte Informationen