1. ÜbersichtIch studiere derzeit Skywalking. Ich plane, k8s zu verwenden, um Skywalking einzusetzen und die Anwendung im Pod mit Skywalking zu verbinden, um Service-Link-Tracking zu ermöglichen. Dieser Artikel stellt nicht die Bereitstellung und Verwendung von Skywalking in k8s vor, sondern zeigt zunächst, wie Skywalking manuell und in Docker verwendet wird. Während des gesamten Übungsprozesses habe ich viele Dokumente konsultiert und bin auf verschiedene Probleme gestoßen. Hier werde ich meinen eigenen Übungsprozess aufzeichnen, in der Hoffnung, Freunden mit denselben Bedürfnissen etwas Hilfe zu bieten. 1. Einführung ins SkywalkingSkyWalking ist ein beliebtes inländisches APM-Produkt (Application Performance Monitoring), das sich hauptsächlich an Anwendungen mit Microservices, Cloud Native und containerisierten (Docker, Kubernetes, Mesos) Architekturen richtet. Der Kern von SkyWalking ist ein verteiltes Tracing-System, das derzeit ein Top-Level-Projekt der Apache Foundation ist.
2. Skywalking-ArchitekturLogischerweise ist SkyWalking in vier Teile unterteilt: Probe, Plattform-Backend, Speicher und Benutzeroberfläche, wie in der folgenden Abbildung dargestellt:
3. Wie meldet Skywalking automatisch Daten?Bevor Sie die Link-Tracking-Konsole zum Verfolgen der Linkdaten einer Anwendung verwenden, müssen Sie die Anwendungsdaten über den Client an Link Tracking melden. SkyWalking meldet Java-Anwendungsdaten an die Link-Tracking-Konsole und muss zunächst die Tracking-Arbeit abschließen. SkyWalking unterstützt sowohl automatische Sonden (Dubbo, gRPC, JDBC, OkHttp, Spring, Tomcat, Struts, Jedis usw.) als auch manuelle Rückverfolgbarkeit (OpenTracing). Dieser Artikel stellt die Methode zum automatischen Vergraben von Punkten vor. Das Prinzip der Skywalking-Meldedaten ist in der folgenden Abbildung dargestellt: 2. Verwenden Sie Docker-Compose, um Skywalking-OAP-Server und Skywalking-UI zu installieren Verwenden Sie den folgenden Befehl, um yum install -y docker-compose Verwenden Sie den folgenden Befehl, um vim skywalking-docker-compose.yaml Hier starten wir einen Version: '3' Leistungen: oap: Bild: Apache/Skywalking-OAP-Server:8.4.0-ES6 Containername: oap Neustart: immer Häfen: - 11800:11800 # Der Port, an den der Agent Daten meldet, dies ist der gRPC-Port - 12800:12800 # Der Port, an den die Benutzeroberfläche Daten liest, dies ist der HTTP-Port skywaling-ui: Bild: Apache/Skywalking-ui:8.4.0 Containername: Benutzeroberfläche hängt ab von: -oap Links: -oap Häfen: -8088:8080 Umfeld: – SW_OAP_ADDRESS=oap:12800 Verwenden Sie den folgenden Befehl, um mit dem Skywalking zu beginnen: docker-compose -f skywalking-docker-compose.yaml up -d Verwenden Sie den folgenden Befehl, um das Startprotokoll anzuzeigen: docker-compose -f skywalking-docker-compose.yaml Protokolle -f Besuchen Sie nach dem erfolgreichen Start: http://localhost:8088. Sie können die folgende Schnittstelle sehen: 3. Verbinden Sie Spring Boot manuell mit Skywalking1. Skywalking Agent herunterladen
Ich habe wget https://archive.apache.org/dist/skywalking/8.4.0/apache-skywalking-apm-8.4.0.tar.gz tar -zxvf apache-skywalking-apm-8.4.0.tar.gz Die Verzeichnisstruktur nach der Dekomprimierung sieht wie folgt aus: Die Beschreibung des Agentenverzeichnisses lautet wie folgt: 2. Das Spring Boot-Projekt meldet automatisch DatenUm die Daten des Spring-Boot-Projekts zu melden, müssen Sie den Skywalking-Zugriffspunkt und den Dienstnamen konfigurieren. Die Konfiguration kann folgendermaßen erfolgen: Ändern der Konfigurationsdatei Öffnen Sie die zuvor heruntergeladene Datei # Der Dienstname in der Benutzeroberfläche agent.service_name=${SW_AGENT_NAME:Ihr_Anwendungsname} # Backend-Dienstadressen. collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:127.0.0.1:11800} Konfigurieren Sie es einfach entsprechend der tatsächlichen Situation. Nachdem die Konfigurationsänderung abgeschlossen ist, können Sie das Spring-Boot-Projekt mit dem folgenden Befehl starten: java -javaagent:<skywalking-agent-pfad> -jar spring-boot-demo
Konfiguration über Befehlsparameter Der Dienstname kann durch Hinzufügen des Parameters java -javaagent:<skywalking-agent-path> -Dskywalking.agent.service_name=<Servicename> -Dskywalking.collector.backend_service=<Backend-Service-Adressen> -jar IhreApp.jar Konfigurieren Sie die Startparameter in Idea In Nachdem die Konfiguration abgeschlossen ist, können Sie das Projekt starten und die folgenden Informationen auf der Konsole sehen: Überprüfen Sie die Skywalking-Konsole, und es sind keine Daten vorhanden, da Sie zuerst auf die Schnittstelle zugreifen müssen, bevor Sie die Daten an die Konsole melden können. Indem Sie die Testschnittstelle kontinuierlich aufrufen und die Konsole erneut überprüfen, können Sie unseren Anrufstatus sehen, wie in der folgenden Abbildung dargestellt: 4. Verwenden Sie Docker, um Spring Boot bereitzustellen und eine Verbindung zu Skywalking herzustellen Hier ist das Basisimage von Spring Boot Der Inhalt des VON apache/skywalking-base:8.4.0-es6 ARBEITSVERZEICHNIS /app KOPIEREN target/spring-demo-0.0.1-SNAPSHOT.jar spring-demo-0.0.1-SNAPSHOT.jar ENV SW_AGENT_COLLECTOR_BACKEND_SERVICES="127.0.0.1:11800" \ SW_AGENT_NAME="meine-Spring-Demo-Test-adfasdf" CMD java -javaagent:/skywalking/agent/skywalking-agent.jar \ -jar spring-demo-0.0.1-SNAPSHOT.jar Hier werden Umgebungsvariablen verwendet, um benutzerdefinierte Parameter für Skywalking festzulegen. Weitere Konfigurationen von Umgebungsvariablen finden Sie in der Datei Erstellen Sie das Image mit dem folgenden Befehl: Docker-Build -t Spring-Boot-Demo. Starten Sie das Image mit dem folgenden Befehl: docker run --rm -p 8080:8080 spring-boot-demo Nach dem erfolgreichen Start können Sie auf die Testadresse zugreifen und zur Skywalking-Konsole gehen, um zu prüfen, ob Daten gemeldet wurden. Wenn keine Daten gemeldet wurden, müssen wir das Protokoll des Skywalking-Agenten überprüfen. Sie können die Fehlerinformationen in Referenzdokumentation Offizielle Skywalking-Dokumentation Dies ist das Ende dieses Artikels über die Verwendung von Docker zum Bereitstellen von Spring Boot und zum Herstellen einer Verbindung mit Skywalking. Weitere relevante Inhalte zum Bereitstellen von Spring Boot durch Docker zum Herstellen einer Verbindung mit Skywalking finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Tools zum Konvertieren statischer Websites in RSS
>>: Die Verwendung von FrameLayout in sechs Layouts
So implementieren Sie das MySQL-Umschalten des Da...
Inhaltsverzeichnis Vorne geschrieben Anforderungs...
Inhaltsverzeichnis 1. Verwendung in Komponenten 2...
C++ stellt zu Ihrer Information eine Verbindung z...
Inhaltsverzeichnis Vorwort 1. Rekursive Komponent...
Grundlegende Analyse des IMG-Tags: In HTML5 beste...
Laden Sie zuerst die Abhängigkeiten herunter Garn...
Innerhalb des Style-Tags der Vue-Komponente befin...
【Historischer Hintergrund】 Ich arbeite seit drei ...
Ich habe gerade einen von JunChen verfassten Beitr...
Vorwort In letzter Zeit haben viele neue Kollegen...
Dieser Artikel zeichnet das Installations-Grafik-...
Einfügen von Daten in Tabellennamen (Spaltenname ...
HTML-Formulare werden verwendet, um verschiedene ...
In diesem Artikel wird das Implementierungszeugni...