Heim >System-Tutorial >LINUX >Eingehende Auseinandersetzung mit dem Wissenssystem im Bereich Überwachung

Eingehende Auseinandersetzung mit dem Wissenssystem im Bereich Überwachung

PHPz
PHPznach vorne
2024-01-01 19:17:33791Durchsuche
Einführung Überwachung ist der wichtigste Teil des gesamten Betriebs und der Wartung und sogar des gesamten Produktlebenszyklus. Sie liefert rechtzeitige Warnungen, um Fehler im Voraus zu erkennen, und stellt anschließend detaillierte Daten zur Verfolgung und Lokalisierung von Problemen bereit. In der Branche gibt es viele gute Open-Source-Produkte zur Auswahl. Die Wahl eines Open-Source-Überwachungssystems ist eine zeitsparende, arbeitssparende und effizienteste Lösung. Natürlich können Freunde, die nicht viel über Überwachung wissen, nach der Lektüre des folgenden Artikels ein tieferes Verständnis des gesamten Überwachungssystems haben.
1. Überwachungsziel

Lassen Sie uns zunächst verstehen, was Überwachung ist, welche Bedeutung die Überwachung hat und welche Ziele die Überwachung hat. Natürlich ist jeder in einer anderen Branche, einem anderen Unternehmen, einem anderen Unternehmen, einer anderen Position tätig und hat ein anderes Verständnis von Überwachung, aber wir müssen darauf achten die Tatsache, dass Überwachung notwendig ist. Denken Sie aus der Geschäftsperspektive des Unternehmens und nicht aus der Verwendung einer bestimmten Überwachungstechnologie.

Ununterbrochene Echtzeitüberwachung des Systems: Es handelt sich tatsächlich um eine ununterbrochene Echtzeitüberwachung des Systems (das ist Überwachung

).

Echtzeit-Feedback zum aktuellen Status des Systems: Wenn wir eine bestimmte Hardware oder ein bestimmtes System überwachen, müssen wir in der Lage sein, den Status des aktuellen Systems in Echtzeit zu sehen, ob es normal, abnormal oder fehlerhaft ist ;

Service-Zuverlässigkeit und -Sicherheit gewährleisten: Der Zweck unserer Überwachung besteht darin, den normalen Betrieb von Systemen, Diensten und Unternehmen sicherzustellen

Stellen Sie den kontinuierlichen und stabilen Betrieb des Unternehmens sicher: Wenn unsere Überwachung perfekt ist, können wir den Fehleralarm auch beim Auftreten eines Fehlers so schnell wie möglich empfangen und so schnell wie möglich bearbeiten und so den kontinuierlichen und stabilen Betrieb des Unternehmens sicherstellen Geschäft;

Eingehende Auseinandersetzung mit dem Wissenssystem im Bereich Überwachung

2. Überwachungsmethode

Da wir nun die Bedeutung der Überwachung und den Zweck der Überwachung verstehen, müssen wir die Methoden der Überwachung verstehen.

Verstehen Sie die Überwachungsobjekte: Verstehen Sie die Objekte, die wir überwachen möchten? Wie funktioniert zum Beispiel die CPU?

Leistungsbenchmark-Metriken: Welche Eigenschaften dieser Sache möchten wir überwachen? Zum Beispiel CPU-Auslastung, Auslastung, Benutzermodus, Kernelmodus und Kontextwechsel.

Alarmschwellendefinition: Was gilt als Fehler und erfordert einen Alarm? Welche Auslastung der CPU wird beispielsweise als hoch angesehen? Wie hoch ist die Auslastung des Benutzermodus und des Kernelmodus?

Fehlerbehandlungsprozess: Wie sollen wir damit umgehen, wenn wir einen Fehleralarm erhalten? Gibt es einen effizienteren Prozess?

3. Überwachungskern

Wir haben etwas über Überwachungsmethoden, Überwachungsobjekte, Leistungsindikatoren, Alarmschwellendefinitionen und die Schritte des Fehlerbehandlungsprozesses gelernt. Natürlich müssen wir mehr darüber wissen, was der Kern der Überwachung ist.

Probleme erkennen: Wenn ein Systemfehleralarm auftritt, erhalten wir die Fehleralarminformationen;

Positionierungsproblem: In Fehler-E-Mails wird normalerweise über einen bestimmten Hostfehler und den spezifischen Fehlerinhalt geschrieben. Wenn beispielsweise ein Server nicht verbunden werden kann, müssen wir überlegen, ob es sich um ein Netzwerkproblem handelt oder ob Die Auslastung ist zu hoch und es kann zu einer langen Zeit keine Verbindung hergestellt werden oder eine bestimmte Entwicklung hat Firewall-Verbotsrichtlinien usw. ausgelöst. Wir müssen die spezifische Ursache des Fehlers analysieren

Das Problem lösen: Nachdem wir die Fehlerursache verstanden haben, müssen wir den Fehler natürlich entsprechend der Priorität der Fehlerbeseitigung beheben

Fassen Sie das Problem zusammen: Nachdem wir den schwerwiegenden Fehler behoben haben, müssen wir die Ursache und die Vermeidung des Fehlers zusammenfassen, um ein erneutes Auftreten in der Zukunft zu vermeiden

4. Überwachungstools

Als nächstes müssen wir ein Überwachungstool auswählen, das für das Geschäft des Unternehmens geeignet ist. Hier habe ich die Überwachungstools kurz klassifiziert

Alte Überwachungstools:

MRTG (Multi Route Trffic Grapher) ist eine Reihe von Software, die zum Zeichnen von Netzwerkverkehrsdiagrammen verwendet werden kann. Sie wurde von Tobias Oetiker und Dave Rand in Olten, Schweiz, entwickelt und ist unter der GPL lizenziert. Die beste Version von MRTG wurde 1995 veröffentlicht. Sie ist in Perl-Sprache geschrieben und kann plattformübergreifend verwendet werden. Das SNMP-Protokoll wird für die Datenerfassung verwendet, um Bilder im GIF- oder PNG-Format zu zeichnen. Ganglia ist ein plattformübergreifendes, skalierbares, leistungsstarkes verteiltes Überwachungssystem wie Cluster und Grids. Es basiert auf einem mehrschichtigen Design, nutzt eine breite Palette von Technologien und verwendet RRDtool zum Speichern von Daten. Es verfügt über eine visuelle Oberfläche und eignet sich zur automatisierten Überwachung von Clustersystemen. Seine sorgfältig entworfene Datenstruktur und sein Algorithmus sorgen dafür, dass der Verbindungsaufwand vom Überwachungsende zum überwachten Ende sehr gering ist. Derzeit nutzen Tausende von Clustern dieses Überwachungssystem, das problemlos eine Clusterumgebung mit 2.000 Knoten bewältigen kann.

Cacti (was auf Englisch „Kaktus“ bedeutet) ist eine Reihe grafischer Analysetools zur Überwachung des Netzwerkverkehrs, die auf PHP, MySQL, SNMP und RRDtool basieren. Es erhält Daten über snmpget und verwendet RRDtool zum Zeichnen, aber Benutzer müssen die komplexen Parameter nicht verstehen von RRDtool. Es bietet sehr leistungsstarke Daten- und Benutzerverwaltungsfunktionen. Jeder Benutzer kann die Baumstruktur, das Hostgerät und jedes Bild anzeigen. Es kann auch mit LDAP zur Benutzerauthentifizierung kombiniert werden und kann auch Vorlagen anpassen. In Bezug auf die Anzeige und Überwachung historischer Daten ist die Funktion recht gut.

Cacti macht die Überwachung verschiedener Geräte durch das Hinzufügen von Vorlagen wiederverwendbar und verfügt über die Funktion einer anpassbaren Zeichnung und leistungsstarker Rechenleistung (Datenüberlagerungsfunktion)

Nagios ist ein Überwachungssystem auf Unternehmensebene, das den Betriebsstatus und die Netzwerkinformationen von Diensten überwachen, den Status bestimmter lokaler oder Remote-Hosts und -Dienste überwachen und Funktionen zur Benachrichtigung über abnormale Alarme bereitstellen kann.

Nagios läuft auf Linux- und UNIX-Plattformen. Gleichzeitig wird eine Webschnittstelle bereitgestellt, die Systemadministratoren die Anzeige des Netzwerkstatus, verschiedener Systemprobleme und systembezogener Protokolle erleichtert.

Die Funktion von Nagios konzentriert sich auf die Überwachung der Verfügbarkeit von Diensten und kann basierend auf dem Status von Überwachungsindikatoren Alarme auslösen.

Nagios hat derzeit auch einen gewissen Marktanteil, aber Nagios hat nicht mit der Zeit Schritt gehalten und kann den sich ändernden Überwachungsanforderungen nicht mehr gerecht werden. Die Skalierbarkeit der Architektur und die Benutzerfreundlichkeit müssen verbessert werden in der kommerziellen Version von Nagios XI integriert.

Smokeping wird hauptsächlich zur Überwachung der Netzwerkleistung verwendet, einschließlich regelmäßiger Ping, WWW-Serverleistung, DNS-Abfrageleistung, SSH-Leistung usw. Die unterste Ebene wird auch von RRDtool unterstützt. Es zeichnet sich durch sehr schöne Zeichnungen aus, die durch Farben und Schatten gekennzeichnet sind. Der Autor hat auch Tools wie MRTG und RRDtll entwickelt.

Die Website von

Smokeping ist: http://tobi.oetiker.cn/hp

Das Open-Source-Überwachungssystem OpenTSDB verwendet Hbase, um alle Zeitreihendaten (ohne Stichproben) zu speichern und eine verteilte und skalierbare Zeitreihendatenbank aufzubauen. Es unterstützt die Datenerfassung auf zweiter Ebene, unterstützt die dauerhafte Speicherung, ermöglicht die Kapazitätsplanung und lässt sich problemlos in bestehende Alarmsysteme integrieren.

OpenTSDB kann entsprechende Sammlungsindikatoren aus großen Clustern (einschließlich Netzwerkgeräten, Betriebssystemen und Anwendungen im Cluster) abrufen und diese speichern, indizieren und bereitstellen, wodurch diese Daten, z. B. Webisierung, Grafiken usw., leichter verständlich werden .

Ace-Überwachungstool:

Zabbix ist ein verteiltes Überwachungssystem, das mehrere Erfassungsmethoden und Erfassungsclients unterstützt. Es verfügt über einen dedizierten Agenten und unterstützt auch mehrere Protokolle wie SNMP, IPMI, JMX, Telnet und SSH. Es speichert die erfassten Daten. , analysieren und organisieren Sie es und lösen Sie einen Alarm aus, wenn die Bedingungen erfüllt sind. Seine flexible Skalierbarkeit und seine umfangreichen Funktionen werden von anderen Überwachungssystemen nicht erreicht. Relativ gesehen ist die Gesamtfunktionalität ausgezeichnet. Im Vergleich der oben genannten verschiedenen Überwachungssysteme bietet Zabbix Vorteile: Mit seinen umfangreichen Funktionen, seiner Skalierbarkeit, seinen sekundären Entwicklungsfunktionen und seiner einfachen Verwendung können Leser mit nur wenig Aufwand ein eigenes Überwachungssystem erstellen.

Xiaomis Überwachungssystem: Open-Falcon. Das Ziel von open-falcon ist es, das offenste und benutzerfreundlichste Internet-Überwachungsprodukt auf Unternehmensebene zu entwickeln.

Dreiparteien-Überwachungstools:

Es gibt mittlerweile viele gute Überwachungslösungen von Drittanbietern auf dem Markt, wie zum Beispiel: Monitor Bao, Monitor Easy, Tingyun, und viele Cloud-Anbieter haben ihre eigene Überwachung, aber wir werden sie hier nicht vorstellen, wenn Sie mehr darüber erfahren möchten Bei der Überwachung durch Dritte können Sie die offizielle Website selbst konsultieren. (Vermeiden Sie es, über die Platzierung von Werbung zu sprechen)

5. Überwachungsprozess

Oben wurde so viel vorgestellt, welches Überwachungstool ist also am besten geeignet? Ich empfehle mehrere Open-Source-Überwachungstools: Zabbix, Open-Falcon und LEPUS (zur Überwachung von Datenbanken).

Aber dieser Artikel basiert immer noch auf Zabbix, um das gesamte Überwachungssystem-Ökosystem aufzubauen.

Dann lass uns über den gesamten Prozess von Zabbix sprechen:

Datenerfassung: Zabbix sammelt Daten vom System über SNMP, Agent, ICMP, SSH, IPMI usw.

Datenspeicherung: Zabbix wird auf MySQL gespeichert und kann auch auf anderen Datenbankdiensten gespeichert werden

Datenanalyse: Wenn wir den Fehler anschließend überprüfen und analysieren müssen, kann Zabbix uns relevante Informationen wie Grafiken und Zeit zur Verfügung stellen, damit wir den Ort des Fehlers bestimmen können

;

Datenanzeige: Webschnittstellenanzeige (mobile APP, java_php kann auch eine Webschnittstelle entwickeln);

Überwachung und Alarmierung: Telefonalarm, E-Mail-Alarm, WeChat-Alarm, SMS-Alarm, Alarm-Upgrade-Mechanismus usw. (unabhängig davon, welcher Alarm verfügbar ist);

Alarmverarbeitung: Wenn wir einen Alarm erhalten, müssen wir ihn entsprechend der Fehlerstufe verarbeiten, z. B.: wichtig und dringend, wichtig und nicht dringend usw. Arbeiten Sie je nach Schweregrad des Fehlers mit dem zuständigen Personal zusammen, um ihn schnell zu beheben

6. Überwachungsindikatoren

Wir haben etwas über die Überwachungsmethoden, Ziele, Prozesse und die für die Überwachung verfügbaren Tools gelernt. Einige Leute fragen sich vielleicht: Was genau müssen wir überwachen? Also habe ich es hier geklärt:

6.1 Hardware-Überwachung Anfangs haben wir Computerrauminspektionen durchgeführt, um das Lichtflackern von Hardwaregeräten zu überprüfen, um festzustellen, ob sie fehlerhaft waren. Das war eine sehr zeitraubende und nicht technische Arbeit.

Natürlich können wir jetzt die Details der Hardware über IPMI überwachen und Alarmschwellenwerte für CPU, Speicher, Festplatte, Temperatur, Lüfter, Spannung usw. festlegen. (Wir können selbst einen angemessenen Alarmbereich für den Überwachungsalarminhalt schreiben)

Referenzmaterial zum IPMI-Überwachungshardwaredienst

6.2 Systemüberwachung

Kleine und mittlere Unternehmen sind im Grunde alle Linux-Server, daher müssen wir die Nutzung von Systemressourcen überwachen. Die Systemüberwachung ist die Grundlage des Überwachungssystems.

Wichtigste zu überwachende Objekte:

CPU hat mehrere wichtige Konzepte: Kontextwechsel, Ausführungswarteschlange und Nutzung.

Dies sind auch einige Schlüsselindikatoren unserer CPU-Überwachung.

Normalerweise sollte die Ausführungswarteschlange jedes Prozessors nicht höher als 3 sein, das Verhältnis „Benutzermodus/Kernelmodus“ der CPU-Auslastung sollte bei 70/30 liegen und der Leerlaufzustand sollte bei 50 % liegen Berücksichtigen Sie die Auslastung des Systems.

Zu den häufig verwendeten Tools für die CPU gehören: htop, top, vmstat, mpstat, dstat, Glances

Zabbix bietet eine Systemüberwachungsvorlage: Zabbix Agent Interface

Speicher: Normalerweise müssen wir die Speichernutzung und die SWAP-Nutzung überwachen. Gleichzeitig können wir mit Zabbix das Diagramm der Speichernutzungskurve zeichnen, um einen Dienstspeicherüberlauf usw. zu finden.

Zu den häufig verwendeten Tools für den Speicher gehören: Free, Top, Vmstat, Glances

Speichernutzung: IO ist in Festplatten-IO und Netzwerk-IO unterteilt. Neben der Überwachung detaillierterer Daten bei der Leistungsoptimierung konzentriert sich die tägliche Überwachung nur auf die Festplattennutzung, den Festplattendurchsatz und die Schreibauslastung der Festplatte. Außerdem überwacht das Netzwerk auch den Netzwerkkartenverkehr.

Zu den häufig verwendeten Tools gehören: iostat, iotop, df, iftop, sar, Glances

Zur weiteren Systemüberwachung gehören laufende Prozessports, Anzahl der Prozesse, angemeldete Benutzer, geöffnete Dateien usw. (Einzelheiten finden Sie in der OS-Linux-Vorlage von zabbix)

6.3 Anwendungsüberwachung

Nachdem wir die Hardware- und Systemüberwachung verstanden haben, besteht unser weiterer Vorgang darin, uns beim Server anzumelden, um zu sehen, welche Dienste auf dem Server ausgeführt werden, und alle müssen überwacht werden.

Die Überwachung von Anwendungsdiensten ist ebenfalls ein wichtiger Teil des Überwachungssystems, z. B. LVS, Haproxy, Docker, Nginx, PHP, Memcached, Redis, MySQL, Rabbitmq usw. Verwandte Dienste müssen mit Zabbix überwacht werden

Der Autor hat bereits über den detaillierten Betriebsprozess der Serviceüberwachung geschrieben, daher werde ich sie hier nicht einzeln zeigen.

Zabbix bietet Anwendungsdienstüberwachung: Zabbix Agent UserParameter
Java-Überwachung bereitgestellt von Zabbix: Zabbix JMX Interface
percona bietet MySQL-Datenbanküberwachung: percona-monitoring-plugins

6.4 Netzwerküberwachung

Als E-Commerce-Website, die sich an Benutzer im ganzen Land richtet, ist es außerdem notwendig, den Netzwerkstatus verschiedener Orte und Computerräume jederzeit im Auge zu behalten.

Netzwerküberwachung ist etwas, das wir beim Aufbau einer Überwachungsplattform berücksichtigen müssen, insbesondere bei Szenarien mit mehreren Computerräumen. Der Netzwerkstatus zwischen jedem Computerraum, der Netzwerkstatus im Computerraum und im ganzen Land sind alles Objekte, auf die wir uns konzentrieren müssen. Wie sieht es also mit der Beherrschung dieser Statusinformationen aus? Wir müssen das Netzwerküberwachungstool Smokeping verwenden.

Smokeping ist die Arbeit von Tobi Oetiker, dem Autor von rrdtool. Es ist in Perl geschrieben und überwacht hauptsächlich die Netzwerkleistung, die Leistung von WWW-Servern, die Leistung von DNS-Abfragen usw. Es verwendet rrdtool zum Zeichnen und unterstützt die Verteilung Daten von mehreren Agenten.

Da Sie gleichzeitig über relativ wenige Überwachungspunkte verfügen, können Sie auch viele kommerzielle Überwachungstools wie Monitor Bao, Tingyun, Keynote, Borui usw. verwenden. Gleichzeitig können Ihnen diese Dienstleister auch dabei helfen, den Status Ihres CDN zu überwachen.

6.5 Verkehrsanalyse

Die Analyse des Website-Verkehrs ist ein Wissen, das vom Betriebs- und Wartungspersonal beherrscht werden muss. Zum Beispiel für ein E-Commerce-Unternehmen:

Durch Statistiken und Analyse von Bestellquellen können wir nachvollziehen, ob unsere Werbeinvestitionen auf einer bestimmten Website die erwarteten Ergebnisse erzielt haben.

Sie können die Anzahl der Besucher aus verschiedenen Regionen und sogar das Transaktionsvolumen von Waren usw. unterscheiden.

Baidu-Statistiken, Google Analytics, Webmaster-Tools usw.: Betten Sie einfach ein JS in die Seite ein.

Da die Daten jedoch immer in den Händen der anderen Partei liegen und die Personalisierung unbequem ist, hat Google ein Open-Source-Analysetool namens piwik

erstellt 6.6 Protokollüberwachung

Normalerweise generiert das Betriebssystem während der Ausführung des Systems Systemprotokolle und die Anwendung generiert Anwendungszugriffsprotokolle, Fehlerprotokolle, Betriebsprotokolle und Netzwerkprotokolle. Wir können ELK zur Protokollüberwachung verwenden.

Für die Protokollüberwachung sind die häufigsten Anforderungen das Sammeln, Speichern, Abfragen und Anzeigen.

Die Open-Source-Community verfügt zufällig über entsprechende Open-Source-Projekte: Logstash (Sammlung) + Elasticsearch (Speicher + Suche) + Kibana (Anzeige)

Wir nennen die kombinierte Technologie dieser drei ELK-Stack, daher bezieht sich ELK-Stack auf die Kombination der Elasticsearch-, Logstash- und Kibana-Technologie-Stacks.

Wenn Protokollinformationen erfasst werden und im Bereitstellungsupdate eine Ausnahme auftritt, ist diese sofort auf Kibana sichtbar.

Natürlich können Sie über Zabbix auch Fehlerprotokolle filtern, um Warnungen zu generieren.

6.7 Sicherheitsüberwachung

Obwohl es viele Linux-Open-Source-Sicherheitsprodukte gibt, wie z. B. vierschichtige iptables, siebenschichtiger WEB-Schutz Nginx + Lua zur Implementierung von WAF und schließlich das Sammeln relevanter Protokolle im ELK Stack und die grafische Darstellung verschiedener Angriffstypen. Aber es ist immer eine zeitaufwändige Sache, und ich persönlich finde, dass die Wirkung nicht sehr gut ist. Zu diesem Zeitpunkt können wir uns für die Verbindung mit Drittanbietern entscheiden.

Drittanbieter stellen umfassende Schwachstellenbibliotheken bereit, die Dienste, Hintertüren, Datenbanken, Konfigurationserkennung, CGI, SMTP usw. abdecken.

Umfassende Erkennung von Schwachstellen in Hosts und Webanwendungen kombiniert mit unabhängigem Mining und Branchenfreigabe, um 0-Day-Schwachstellen sofort zu aktualisieren und die neuesten Sicherheitsrisiken zu beseitigen

6.8 API-Überwachung

Da APIs immer wichtiger werden, ist es offensichtlich, dass wir solche Daten auch benötigen, um festzustellen, ob die von uns bereitgestellten APIs ordnungsgemäß funktionieren.
Überwachen Sie die API-Schnittstelle GET, POST, PUT, DELETE, HEAD, OPTIONS-Anfragen. Verfügbarkeit, Korrektheit und Antwortzeit sind die drei wichtigsten Leistungsindikatoren

6.9 Leistungsüberwachung Umfassende Überwachung der Webseitenleistung, der DNS-Antwortzeit, der HTTP-Verbindungsaufbauzeit, des Seitenleistungsindex, der Antwortzeit, der Verfügbarkeit, der Elementgröße usw.

Zabbix bietet URL-Überwachung: Zabbix Web Monitoring

6.10 Geschäftsüberwachung Eine Überwachungsplattform ohne Überwachung von Geschäftsindikatoren ist keine vollständige Überwachungsplattform. Normalerweise müssen wir in unserem Überwachungssystem unsere wichtigen Geschäftsindikatoren überwachen und Schwellenwerte für Alarmbenachrichtigungen festlegen.

Zum Beispiel E-Commerce-Branche:

Wie viele Bestellungen werden pro Minute generiert;

Wie viele Benutzer werden pro Minute registriert;

Wie viele aktive Benutzer gibt es jeden Tag;

Wie viele Aktionen gibt es jeden Tag;

Wie viele Benutzer werden in die Werbeaktivität eingeführt?

Wie viel Traffic bringt die Aktion?

Wie viel Gewinn bringt die Aktion

Etc. Wichtige Indikatoren können zu Zabbix hinzugefügt und dann über den Bildschirm angezeigt werden.

7. Überwachung und Alarm

Es gibt viele Möglichkeiten, Fehleralarme zu benachrichtigen. Die am häufigsten verwendeten Methoden sind natürlich Textnachrichten, E-Mails und SMS-Alarme 8. Alarmbehandlung

Wie gehen wir mit Fehlern nach einem allgemeinen Alarm um? Erstens können wir ihn automatisch über den Alarm-Upgrade-Mechanismus behandeln. Wenn der Nginx-Dienst beispielsweise ausfällt, können wir das Alarm-Upgrade so einstellen, dass Nginx automatisch gestartet wird. Wenn jedoch in einem allgemeinen Unternehmen ein schwerwiegender Fehler auftritt, weisen wir in der Regel je nach Schweregrad des Fehlers und dem Unternehmen, in dem der Fehler aufgetreten ist, unterschiedliches Betriebs- und Wartungspersonal mit der Behebung des Problems zu. Natürlich können unterschiedliche Geschäftsformen, unterschiedliche Architekturen und unterschiedliche Dienste unterschiedliche Methoden anwenden. Es gibt kein festes Modell, das angewendet werden kann. 9. Interviewüberwachung

In Vorstellungsgesprächen zu Betrieb und Wartung werden uns häufig Fragen zum Thema Überwachung gestellt. Wie sollen wir Ihnen also eine einfache Antwortidee für diesen Artikel geben? Hardwareüberwachung. Die Überwachung von Router-Switches über SNMP (Sie können mit einigen Herstellern kommunizieren, um zu erfahren, wie das geht), der Servertemperatur und anderen kann über IPMI erreicht werden. Wenn keine Hardware vorhanden ist und sich alles in der Cloud befindet, überspringen Sie diesen Schritt natürlich einfach.

Systemüberwachung. Zum Beispiel CPU-Auslastung, Kontextwechsel, Speichernutzung, Festplatten-Lesen und -Schreiben, Festplattennutzung, Festplatten-Inode-Nutzung. Natürlich müssen diese mit Auslösern konfiguriert werden, da die Standardeinstellung zu niedrig ist und häufige Alarme auslöst.

Serviceüberwachung. Beispielsweise verfügt die vom Unternehmen verwendete LAMP-Architektur über ein eigenes Statusmodul, PHP verfügt auch über einen zugehörigen Status, MySQL kann über das offizielle Percona-Tool überwacht werden und Redis erhält Informationen über seine eigenen Informationen zum Filtern usw. Die Methoden sind ähnlich. Oder bringen Sie Ihren eigenen Service mit. Nutzen Sie entweder Skripte zur Umsetzung der zu überwachenden Inhalte sowie Alarm- und Grafikfunktionen.

Netzwerküberwachung. Wenn es sich um einen Cloud-Host handelt und dieser nicht über mehrere Computerräume verteilt ist, können Sie sich dafür entscheiden, das Netzwerk nicht zu überwachen. Natürlich haben Sie gesagt, dass wir uns in Computerräumen befinden und so weiter. Zur netzwerkbezogenen Überwachung empfiehlt sich der Einsatz von Smokeping. Oder überlassen Sie es direkt Ihrem Netzwerktechniker, denn es gibt Spezialitäten in der Branche.

Sicherheitsüberwachung. Wenn es sich um einen Cloud-Host handelt, können Sie die Verwendung eines eigenen Sicherheitsschutzes in Betracht ziehen. Natürlich können Sie auch iptables verwenden. Wenn es sich um Hardware handelt, empfiehlt sich der Einsatz einer Hardware-Firewall. Über die Cloud können Sie Anti-DDoS erwerben, um Fehlfunktionen zu vermeiden, die zu einem Ausfall von einem Tag führen können. Wenn es sich um ein System handelt, müssen grundlegende Lösungen wie Berechtigungen, Passwörter, Sicherung und Wiederherstellung gut umgesetzt werden. web kann auch Nginx+Lua verwenden, um eine Firewall auf Webebene zu implementieren. Natürlich können Sie auch integriertes Openresty nutzen.

Webüberwachung. Es gibt immer noch viele Themen zum Thema Webüberwachung. Sie können beispielsweise die integrierte Webüberwachung verwenden, um seitenbezogene Verzögerungen, die Antwortzeit von js, die Downloadzeit usw. zu überwachen. Hier empfehle ich den Einsatz professioneller kommerzieller Software, Monitoring Bao oder Tingyun, um dies zu erreichen. Schließlich gibt es im ganzen Land Computerräume. (Wenn es sich um einen Raum mit mehreren Computern handelt, sprechen wir separat darüber)

Protokollüberwachung. Wenn es sich um das Web handelt, können Sie damit die 50x- und 40x-Fehlerprotokolle von Nginx und das ERROR-Protokoll von PHP überwachen. Tatsächlich handelt es sich bei diesen Anforderungen um nichts anderes als das Sammeln, Speichern, Abfragen und Anzeigen. Um dies zu erreichen, können wir tatsächlich den Open-Source-ELKstack verwenden. Logstash (Sammlung), Elasticsearch (Speicherung + Suche), Kibana (Anzeige)
Unternehmensüberwachung. Wir haben so viel getan, aber am Ende stellen wir immer noch den Betrieb des Unternehmens sicher. Nur so kann die von uns durchgeführte Überwachung sinnvoll sein. Daher erfordert die Überwachung auf Geschäftsebene Besprechungen und Diskussionen mit der Entwicklung und dem Direktor, um die wichtigeren Geschäftsindikatoren zu überwachen (die durch eine Besprechung bestätigt werden müssen), und kann dann über ein einfaches Skript implementiert und schließlich der Auslöser festgelegt werden.

Verkehrsanalyse. Normalerweise verwenden wir eine Reihe von Tools wie awk sed xxx, um Protokolle zu analysieren. Dies ist für uns nicht sehr praktisch, um IP, PV und UV zu zählen. Anschließend können Sie Baidu Statistics, Google Statistics und Commerce verwenden, um eingebettete Codes zu entwickeln. Um den Datenschutz zu vermeiden, können Sie mit Piwik auch entsprechende Verkehrsanalysen durchführen.

Visualisierung. Verwenden Sie screen und führen Sie einige Bibliotheken von Drittanbietern ein, um die Benutzeroberfläche zu verschönern. Gleichzeitig müssen wir auch wissen, dass das Bestellvolumen plötzlich zunimmt oder abnimmt. Mit anderen Worten: Woher kam dieser Verkehr, oder wurde er angegriffen? Die Überwachungsplattform kann kombiniert werden, um die Geschäftsbeziehungen zwischen verschiedenen Systemen zu sortieren.

Automatisierte Überwachung. Da wir oben so viel Arbeit geleistet haben, können wir die Schlüssel natürlich nicht einzeln hinzufügen. Dies kann durch den aktiven Modus und den passiven Modus von Zabbix erreicht werden. Natürlich ist es am besten, dies über die API zu tun.
Zusammenfassung

Wenn wir wirklich ein umfassenderes Überwachungssystem erreichen wollen, kann die aktuelle Open-Source-Software dies nicht ausreichend erfüllen. Qualifizierte Unternehmen haben begonnen, ihre eigenen Überwachungssysteme zu entwickeln, wie beispielsweise Xiaomis Open-Source-Open-Falcon. Es gibt auch bessere Open-Source-Überwachungsframeworks wie Sensu usw. sowie Influxdb und Grafana, mit denen Sie die Überwachungsplattform individuell an Ihr eigenes Unternehmen anpassen können.

Natürlich ist das, was ich gesagt habe, immer noch sehr einfach. Meine Erfahrung ist begrenzt und meine Ideen können nur begrenzte Ergebnisse liefern. Im Folgenden sind einige der Methoden und Erfahrungen aufgeführt, die ich zum Thema Überwachung teile. (Alte Vögel, bitte beschweren Sie sich nicht)

Das obige ist der detaillierte Inhalt vonEingehende Auseinandersetzung mit dem Wissenssystem im Bereich Überwachung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:linuxprobe.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen