Sammeln von Leistungskennzahlen in Elasticsearch und deren Visualisierung in Grafana
In diesem Beitrag werden wir versuchen zu sehen, wie Sie Leistungsmetriken eines Windows Server-Computers oder seiner Dienste wie SQL Server visualisieren können, Austausch… mit der Absicht, sie in Grafana in Echtzeit visualisieren zu können.
Die Idee ist, sie über einen der Elastic Stack-Agenten zu sammeln, In diesem Fall verwenden wir Metricbeat, und dann werden sie in Elasticsearch gespeichert; und mit Grafana greifen wir auf die Daten zu und visualisieren sie nach Belieben. Vor einiger Zeit habe ich einen Beitrag geschrieben, in dem wir darüber gesprochen haben, wie man Metricbeat implementiert und wie man die Systemrepliken sammelt, falls Sie es wollen Hör zu, Heute berührt es die Leistungsindikatoren des Perfmon oder Resource Monitor, oder wie auch immer wir es nennen wollen.
Installieren von Metricbeat
Die Metricbeat-Installation kennen wir bereits, Es ist sehr einfach, Laden Sie einfach die x64-ZIP-Datei herunter https://www.elastic.co/es/downloads/beats/metricbeat und Dekomprimieren in ‚C:\Program Files\metricbeat‘. Um den von uns ausgeführten Metricbeat-Dienst zu erstellen:
CDC:\Program Files\metricbeat\'
.\install-service-metricbeat.ps1
Wir bearbeiten die Metricbeat-Konfigurationsdatei, und zumindest haben wir die Verbindung zu unseren Elasticsearch- und Kibana-Servern hergestellt:
... # ---------------------------- Elasticsearch-Ausgabe ---------------------------- output.elasticsearch: # Array von Hosts, zu denen eine Verbindung hergestellt werden soll. Gastgeber: ["https://FQDN_ELASTIC:9200"] ssl.verification_mode: keiner Nutzername: "USER" Passwort: "PASSWORT" Index: "metricbeat-%{+yyyy.MM.dd}" ... # ================================== Kibana ============= = ===================== setup.kibana: Gastgeber: "https://FQDN_KIBANA:5601" ssl.verification_mode: keiner ...
Wir testen die Konfiguration:
.\metricbeat.exe test config -c .\metricbeat.yml -e
Wir laden die Kibana-Dashboards (Wenn wir die Dashboards bereits importiert haben, können wir den ersten Befehl ignorieren) und starten Sie den Dienst:
.\metricbeat.exe-Setup Start-Service metricbeat
Wenn wir den Dienst entfernen möchten, deinstallieren Sie filebeat irgendwann:
.\uninstall-service-metricbeat.ps1
Aktivieren von Dienstmetriken und Windows-Leistungsindikatoren
gut, dann müssen wir dieses Modul aktivieren, wir tun dies mit dem folgenden Befehl:
.\metricbeat.exe-Module aktivieren Windows
Als Nächstes müssen wir wissen, welche Leistungsindikatoren wir sammeln, Wir können uns das mit diesem PowerShell-Befehl ansehen:
Get-Counter-ListSet *
Und es wird darum gehen, Metricbeat mitzuteilen, welche wir sammeln möchten, editamos el fichero de configuración del módulo ‚C:\Program Files\metricbeat\modules.d\windows.yml‘ und wir weisen darauf hin, Beispiel:
# Modul: Fenster # Dokumente: https://www.elastic.co/guide/en/beats/metricbeat/7.x/metricbeat-module-windows.html - Modul: Fenster Metriksätze: - Service Zeitraum: 1m - Modul: Fenster Metriksätze: [perfmon] Zeitraum: 10s perfmon.ignore_non_existent_counters: wahr perfmon.group_measurements_by_instance: wahr perfmon.queries: - Objekt: "Physische Festplatte" Feld : "Scheibe" Beispiel: "*" Zähler: - Name: "Festplattenschreibvorgänge/Sek" - Name: "% Disk-Schreibzeit" Feld: "Schreibzeit" Format: "schweben" - Objekt: "Physische Festplatte" Feld : "Scheibe" Beispiel: "*" Zähler: - Name: "Festplattenlesevorgänge/Sek" - Name: "% Datenträger-Lesezeit" Feld: "Lesezeit" Format: "schweben" - Objekt: "MSSQL$VEEAMSQL2012:Datenbanken" Feld : "Datenbank" Beispiel: "*" Zähler: - Name: "Datendatei(s) Größe (KB)" ...
Aufnahmedatei, Wir starten den Metricbeat-Dienst neu und überprüfen, ob wir die Daten in Elasticsearch haben. wie immer, Wir werden nach Kibana gehen und sobald die Daten eingegeben sind, können wir zu "Management" gehen. > „Stapelverwaltung“ > „Kibana“ > „Indexmuster“ > "Indexmuster erstellen", um das Indexmuster zu erstellen, ich sagte:, wie gewöhnlich (in diesem Fall und ohne die Anführungszeichen) ‚metricbeat-*‘ und wir haben die Daten bereits korrekt in Elasticsearch gespeichert. Jetzt konnten wir uns von „Analytics“ aus verbinden > „Entdecken“ Sie unseren Metricbeat-Index und visualisieren Sie, was Daten sammelt.
Sobald sich die Daten in Elasticsearch befinden, müssen nur noch die Schritte befolgt werden, die wir in anderen Beiträgen mehrmals gesehen haben, es würde, (ich) Konnektor oder Datenquelle von Grafana zu Elasticsearch erstellen und (ii) Beginnen Sie mit der Erstellung des Dashboards oder der Dashboards, die Sie benötigen. Dies ist nur ein Beispiel für die von einem SQL Server gesammelten Daten, wo wir einige ziemlich interessante und häufige Zähler sehen, sowie Größe und Wachstum von Datenbanken, Verbindungen, Latenzen…
Stellen Sie sich die Möglichkeiten vor, Jeder in Windows installierte Dienst hat seine eigenen Zähler, dass wir sie mit der Periodizität sammeln können, die uns interessiert, auf dem Niveau von 1s, 10s, 30s… und seine Visualisierung gleich, mit Auffrischung in Echtzeit oder um Berichte mit seiner Analyse zu erstellen, nachdem genügend Daten aufgenommen wurden und um das Wachstum analysieren zu können…
nichts, ich bin damit fertig, eine schnelle Möglichkeit, die Leistungsindikatoren eines SQL-Servers anzuzeigen:
plugin --mode=sql --host=DIRECCION_IP_HONEYPOT --port=9999 --database=chameleon --username=changeme027a088931d22 --password=changeme0f40773877963 --sql-statement=(*) AUS sys.dm_os_performance_counters;
und bereit, Ich hoffe, es wird Ihnen helfen, Möglichkeiten in Ihrer Umgebung zu erkennen, dass wir alle Daten erheben können, die wir benötigen, dann, dass, arbeite es, Erstellen Sie benutzerdefinierte Dashboards für verschiedene Profile, Wochenberichte… Hey, ich werde länger, eine Umarmung an alle!
empfohlene Beiträge:
- JumpServer - 17 von Oktober von 2023
- CrowdSec-Konsole - 10 von Oktober von 2023
- Gophisch – Ethisches Phishing in unserem Unternehmen - 3 von Oktober von 2023