Apache Cassandra. Документация DataStax – Operationen. Cassandra überwachen. Überwachung eines Cassandra-Clusters


Cassandra_logoÜbersetzung des Artikels „Operationen. Cassandra überwachen. Überwachung eines Cassandra-Clusters “aus der offiziellen DataStax-Dokumentation.

Cassandra-Cluster-Überwachung

Das Verständnis der Leistungsmerkmale Ihres Cassandra-Clusters ist entscheidend für die Diagnose von Problemen und die Planung von Workloads.
Cassandra bietet über die Java Management Extensions (JMX) viele Statistiken und Verwaltungsmechanismen. JMX ist eine Java-Technologie, die Tools zum Bereitstellen und Überwachen von Java-Anwendungen und -Diensten bereitstellt. Alle Statistiken oder Vorgänge, die eine Java-Anwendung als JMX-Objekt (MBean) bereitstellt, können mit JMX verfolgt oder bearbeitet werden.

Während des normalen Betriebs bietet Cassandra Informationen und Statistiken, die Sie mit JMX-kompatiblen Tools wie den folgenden verfolgen können:

– Nodetool-Dienstprogramme ;;
– DataStax OpsCenter Management Console ;;
– JConsole

Mit diesen Tools können Sie bestimmte Verwaltungsbefehle und verschiedene Vorgänge ausführen, z. B. den Cache leeren oder eine Knotenwiederherstellung durchführen.

Überwachen eines Clusters mit den Dienstprogrammen nodetool

Die nodetool-Dienstprogramme sind eine Befehlszeilenschnittstelle zum Überwachen und Ausführen der häufigsten Datenbankoperationen. Die Dienstprogramme sind in der Standard-Cassandra-Distribution enthalten und werden normalerweise direkt von den Knoten selbst ausgeführt.

Die nodetool-Dienstprogramme unterstützen die wichtigsten JMX-Metriken und -Operationen und enthalten weitere nützliche Befehle für die Verwaltung von Cassandra. Diese Dienstprogramme werden am häufigsten verwendet, um zusammenfassende Informationen über den “Ring” und seinen aktuellen Status mit dem Befehl “status” anzuzeigen , z.B:

01_ops_nodetool_status1

Die nodetool-Dienstprogramme bieten Befehle für eine detaillierte Ansicht der Metriken für jede Tabelle, Metriken für den Server im Allgemeinen und Statistiken für SSTable-Komprimierungsvorgänge (Komprimierung).
– nodetool cfstats – zeigt Statistiken für jede Tabelle und jeden Schlüsselbereich an;
– nodetool cfhistograms – Bietet Tabellenstatistiken, einschließlich Lese- / Schreiblatenz, Schreibgröße, Anzahl der Spalten und Anzahl der SSTables.
– nodetool netstats – zeigt Informationen über Netzwerkoperationen und -verbindungen an;
– nodetool tpstats – Bietet Statistiken zur Anzahl der aktiven, ausstehenden und abgeschlossenen Aufgaben für jede Phase der Cassandra-Thread-Pool-Vorgänge.

DataStax OpsCenter

DataStax OpsCenter Ist eine grafische Benutzeroberfläche zum Überwachen und Verwalten aller Knoten in einem Cassandra-Cluster von einer zentralen Konsole aus. DataStax OpsCenter wird mit einem DataStax-Supportangebot geliefert. Sie können sich für die kostenlose Version für Entwicklungszwecke oder für nichtkommerzielle Zwecke registrieren.

OpsCenter bietet eine grafische Zusammenfassung der Leistungsdaten, die mit anderen Überwachungstools nur schwer zu erhalten sind. Die Benutzeroberfläche bietet Ansichten basierend auf verschiedenen Zeiträumen sowie die Möglichkeit, zu einzelnen Datenblöcken zu navigieren. OpsCenter bietet sowohl Online-Daten als auch Leistungsverlaufsdaten für einen Cassandra- oder DataStax Enterprise-Cluster. Leistungsmetriken werden in Cassandra erfasst und gespeichert.

02_ops_opsc_perf_view

In OpsCenter können Sie die Ansichten der Leistungsmetriken an Ihre Datenverfolgungsanforderungen anpassen. Administratoren können über OpsCenter auch allgemeine Site-Verwaltungsaufgaben ausführen. Die Metriken in OpsCenter lassen sich in drei Hauptkategorien einteilen: Tabellenmetriken, Clustermetriken und Betriebssystemmetriken. Für die meisten verfügbaren Metriken können Sie eine Zusammenfassung eines Clusters oder eines separaten Knotens anzeigen.

03_ops_opsc_metric_options

Überwachung mit JConsole

JConsole sind JMX-kompatible Dienstprogramme zur Überwachung von Java-Anwendungen wie Cassandra. Sie sind in Sun JDK 5.0 ab Version 5.0 enthalten. JConsole fängt von Cassandra bereitgestellte JMX-Metriken und -Operationen ab und zeigt sie in einer gut organisierten Oberfläche an. Für jeden überwachten Knoten bietet JConsole sechs separate Ansichten:

Überblick – zeigt zusammenfassende Informationen zu Java VM und nachverfolgten Werten an;

Erinnerung – zeigt Informationen zur Speichernutzung an;

Themen – zeigt Informationen über die Verwendung von Streams an;

Klassen – zeigt Informationen zum Laden von Klassen an;

VM-Zusammenfassung – zeigt Informationen zur Java Virtual Machine (VM) an;

Mbeans – Zeigt Informationen zu MBeans an.

Die Bereiche Übersicht und Speicher enthalten Informationen, die für Cassandra-Entwickler sehr nützlich sind. Im Speicherbereich können Sie die Speichernutzung im (Heap) und externen (Nicht-Heap) Java-Heap vergleichen und die Garbage Collection sofort durchführen.

Für Cassandra-spezifische Metriken und Operationen sind MBeans das wichtigste Panel. In diesem Bereich werden die folgenden Cassandra JMX-Objekte angezeigt:

org.apache.cassandra.db – umfasst Caching, Tabellenmetriken und die SSTable-Komprimierungsoperation (Komprimierung);

org.apache.cassandra.internal – interne Serveroperationen, die sich beispielsweise auf die Arbeit von Klatsch oder angedeuteter Übergabe beziehen;

org.apache.cassandra.net – Kommunikationsprozesse zwischen Knoten, einschließlich FailureDetector, MessagingService und StreamingService;

org.apache.cassandra.request – Aufgaben im Zusammenhang mit Lese-, Schreib- und Replikationsvorgängen.

Wenn Sie eine MBean in einem Verzeichnis auswählen, werden die MBeanInfo- und MBean-Deskriptoren rechts und alle Attribute, Operationen oder Benachrichtigungen unten angezeigt. Wenn Sie beispielsweise org.apache.cassandra.db auswählen und bereitstellen, um die verfügbaren Aktionen für die Pivot-Tabelle anzuzeigen, sieht dies ungefähr so ​​aus:

04_ops_jconsole_cf_options

Wenn Sie JConsole zur Überwachung von Cassandra ausgewählt haben, sollten Sie sich bewusst sein, dass JConsole einen erheblichen Systemressourcenverbrauch darstellt. Aus diesem Grund empfiehlt DataStax, JConsole auf einem Remotecomputer und nicht auf demselben Host zu verwenden, auf dem sich der Knoten des Cassandra-Clusters befindet.

Die JConsole CompactionManagerMBean bietet Metriken für den SSTable-Komprimierungsprozess, die angeben, wann die Gesamtleistung des Clusters verbessert werden muss.

Originaler Artikel – Überwachung eines Cassandra-Clusters

Kommentare bereitgestellt von HyperComments

Leave a Reply

Your email address will not be published. Required fields are marked *