Selbstheilung mit Apigee-Monit

Apigee Edge for Private Cloud enthält apigee-monit, ein Tool, das auf dem Open-Source-Dienstprogramm monit basiert. apigee-monit fragt Edge-Dienste regelmäßig ab. Wenn ein Dienst nicht verfügbar ist, versucht apigee-monit, ihn neu zu starten.

Wenn Sie apigee-monit verwenden möchten, müssen Sie es manuell installieren. Es ist nicht Teil der Standardinstallation.

Standardmäßig prüft apigee-monit den Status der Edge-Dienste alle 60 Sekunden.

Schnelleinstieg

In diesem Abschnitt erfahren Sie, wie Sie apigee-monit schnell einrichten und verwenden können.

Wenn Sie Amazon Linux verwenden, installieren Sie zuerst monit über Fedora. Andernfalls überspringen Sie diesen Schritt.

sudo yum install -y https://kojipkgs.fedoraproject.org/packages/monit/5.25.1/1.el6/x86_64/monit-5.25.1-1.el6.x86_64.rpm

So installieren Sie apigee-monit:

  Installierenapigee-monit
/opt/apigee/apigee-service/bin/apigee-service apigee-monit install
/opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
/opt/apigee/apigee-service/bin/apigee-service apigee-monit start

Dadurch wird apigee-monit installiert und standardmäßig werden alle Komponenten auf dem Knoten überwacht.

  Monitoring-Komponenten beenden
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_name
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
  Monitoring-Komponenten starten
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all
  Zusammenfassende Statusinformationen abrufen
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary
  apigee-monit-Logdateien ansehen
cat /opt/apigee/var/log/apigee-monit/apigee-monit.log

Diese und weitere Themen werden in den folgenden Abschnitten ausführlich beschrieben.

Informationen zu apigee-monit

apigee-monit sorgt dafür, dass alle Komponenten auf einem Knoten ausgeführt werden. Dazu bietet es eine Vielzahl von Diensten, darunter:

  • Fehlgeschlagene Dienste neu starten
  • Zusammenfassende Informationen anzeigen
  • Logging-Monitoring-Status
  • Benachrichtigungen senden
  • Nicht-Edge-Dienste überwachen

Apigee empfiehlt, apigee-monit zu überwachen, um sicherzustellen, dass es ausgeführt wird. Weitere Informationen finden Sie unter apigee-monit überwachen.

apigee-monit-Architektur

Während der Installation und Konfiguration von Apigee Edge for Private Cloud installieren Sie optional eine separate Instanz von apigee-monit auf jedem Knoten in Ihrem Cluster. Diese separaten apigee-monit-Instanzen arbeiten unabhängig voneinander: Sie kommunizieren den Status ihrer Komponenten nicht an die anderen Knoten und melden auch keine Fehler des Monitoring-Dienstprogramms selbst an einen zentralen Dienst.

Die folgende Abbildung zeigt die apigee-monit-Architektur in einem Cluster mit 5 Knoten:

Architektur von Apigee Monit in einem Cluster mit 5 Knoten
Abbildung 1: Eine separate Instanz von apigee-monit wird isoliert auf jedem Knoten in einem Cluster ausgeführt

Komponentenkonfigurationen

apigee-monit verwendet Komponentenkonfigurationen, um zu bestimmen, welche Komponenten überwacht werden sollen, welche Aspekte der Komponente geprüft werden sollen und welche Aktion im Falle eines Fehlers ausgeführt werden soll.

Standardmäßig überwacht apigee-monit alle Edge-Komponenten auf einem Knoten anhand ihrer vordefinierten Komponentenkonfigurationen. Die Standardeinstellungen finden Sie in den Konfigurationsdateien der apigee-monit-Komponente. Sie können die Standardkomponentenkonfigurationen nicht ändern.

apigee-monit prüft verschiedene Aspekte einer Komponente, je nachdem, welche Komponente geprüft wird. In der folgenden Tabelle ist aufgeführt, was apigee-monit für die einzelnen Komponenten prüft und wo sich die Komponentenkonfiguration für die einzelnen Komponenten befindet. Beachten Sie, dass einige Komponenten in einer einzigen Konfigurationsdatei definiert sind, während andere eigene Konfigurationen haben.

Komponente Konfigurationsspeicherort Was wird überwacht?
Verwaltungsserver /opt/apigee/edge-management-server/monit/default.conf apigee-monit-Prüfungen:
  • Die angegebenen Ports sind offen und nehmen Anfragen an.
  • Die angegebenen Protokolle werden unterstützt.
  • Status der Antwort

Außerdem gilt für diese Komponenten (apigee-monit):

  • Erfordert mehrere Fehler innerhalb einer bestimmten Anzahl von Zyklen, bevor Maßnahmen ergriffen werden
  • Legt einen benutzerdefinierten Anfragepfad fest
Message Processor /opt/apigee/edge-message-processor/monit/default.conf
Postgres-Server /opt/apigee/edge-postgres-server/monit/default.conf
Qpid-Server /opt/apigee/edge-qpid-server/monit/default.conf
Router /opt/apigee/edge-router/monit/default.conf
Cassandra
Edge-UI
OpenLDAP
Postgres
Qpid
Zookeeper
/opt/apigee/data/apigee-monit/monit.conf apigee-monit-Prüfungen:
  • Dienst wird ausgeführt

Das folgende Beispiel zeigt die Standardkomponentenkonfiguration für die Komponente edge-router:

check host edge-router with address localhost
  restart program = "/opt/apigee/apigee-service/bin/apigee-service edge-router monitrestart"
  if failed host 10.1.1.0 port 8081 and protocol http
    and request "/v1/servers/self/uuid"
    with timeout 15 seconds
    for 2 times within 3 cycles
  then restart

  if failed port 15999 and protocol http
    and request "/v1/servers/self"
    and status < 600
    with timeout 15 seconds
    for 2 times within 3 cycles
  then restart

Das folgende Beispiel zeigt die Standardkonfiguration für die Komponente „Klassische Benutzeroberfläche“ (edge-ui):

check process edge-ui
 with pidfile /opt/apigee/var/run/edge-ui/edge-ui.pid
 start program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui start" with timeout 55 seconds
 stop program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui stop"

Dies gilt für die klassische Benutzeroberfläche, nicht für die neue Edge-Benutzeroberfläche, deren Komponentenname edge-management-ui lautet.

Sie können die Standardkomponentenkonfigurationen für Apigee Edge for Private Cloud-Komponenten nicht ändern. Sie können jedoch eigene Komponentenkonfigurationen für externe Dienste hinzufügen, z. B. für Ihren Zielendpunkt oder den httpd-Dienst. Weitere Informationen finden Sie unter Konfigurationen von Nicht-Apigee-Komponenten.

Standardmäßig überwacht apigee-monit alle Komponenten auf einem Knoten, auf dem es ausgeführt wird. Sie können es für alle Komponenten oder für einzelne Komponenten aktivieren oder deaktivieren. Weitere Informationen finden Sie unter:

apigee-monit installieren

apigee-monit wird nicht standardmäßig installiert. Sie können es manuell installieren, nachdem Sie ein Upgrade auf Version 4.19.01 oder höher von Apigee Edge for Private Cloud durchgeführt oder diese Version installiert haben.

In diesem Abschnitt wird beschrieben, wie Sie apigee-monit installieren.

Informationen zum Deinstallieren von apigee-monit finden Sie unter apigee-monit deinstallieren.

apigee-monit installieren

In diesem Abschnitt wird beschrieben, wie Sie apigee-monit installieren.

So installieren Sie apigee-monit:

  1. Installieren Sie apigee-monit mit dem folgenden Befehl:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit install
  2. Konfigurieren Sie apigee-monit mit dem folgenden Befehl:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
  3. Starten Sie apigee-monit mit dem folgenden Befehl:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit start
  4. Wiederholen Sie diesen Vorgang für jeden Knoten in Ihrem Cluster.

Monitoring-Komponenten beenden und starten

Wenn ein Dienst aus irgendeinem Grund beendet wird, versucht apigee-monit, den Dienst neu zu starten.

Das kann zu Problemen führen, wenn Sie eine Komponente absichtlich beenden möchten. Sie können eine Komponente beispielsweise beenden, wenn Sie sie sichern oder aktualisieren müssen. Wenn apigee-monit den Dienst während der Sicherung oder des Upgrades neu startet, kann der Wartungsvorgang unterbrochen werden, was möglicherweise zu einem Fehler führt.

In den folgenden Abschnitten werden die Optionen zum Beenden des Monitorings von Komponenten beschrieben.

Komponente beenden und Monitoring beenden

Führen Sie den folgenden Befehl aus, um eine Komponente zu beenden und das Monitoring zu beenden:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop-component -c component_name
component_name kann einer der folgenden Werte sein:
  • apigee-cassandra (Cassandra)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (PostgreSQL-Datenbank)
  • apigee-qpidd (Qpidd)
  • apigee-sso (Edge-SSO)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (Verwaltungsserver)
  • edge-management-ui (neue Edge-Benutzeroberfläche)
  • edge-message-processor (Nachrichtenprozessor)
  • edge-postgres-server (Postgres-Server)
  • edge-qpid-server (Qpid-Server)
  • edge-router (Edge-Router)
  • edge-ui (klassische Benutzeroberfläche)

„all“ ist keine gültige Option für stop-component. Sie können mit stop-component jeweils nur eine Komponente beenden und die Überwachung aufheben.

Führen Sie den folgenden Befehl aus, um die Komponente neu zu starten und das Monitoring fortzusetzen:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit start-component -c component_name

„all“ ist keine gültige Option für start-component.

Eine Anleitung zum Beenden und Aufheben des Monitorings aller Komponenten finden Sie unter Alle Komponenten beenden und Monitoring aufheben.

Monitoring einer Komponente beenden (aber nicht die Komponente selbst)

Führen Sie den folgenden Befehl aus, um das Monitoring einer Komponente zu beenden (aber nicht die Komponente selbst):

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_name
component_name kann einer der folgenden Werte sein:
  • apigee-cassandra (Cassandra)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (PostgreSQL-Datenbank)
  • apigee-qpidd (Qpidd)
  • apigee-sso (Edge-SSO)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (Verwaltungsserver)
  • edge-management-ui (neue Edge-Benutzeroberfläche)
  • edge-message-processor (Nachrichtenprozessor)
  • edge-postgres-server (Postgres-Server)
  • edge-qpid-server (Qpid-Server)
  • edge-router (Edge-Router)
  • edge-ui (klassische Benutzeroberfläche)

Führen Sie den folgenden Befehl aus, um das Monitoring der Komponente fortzusetzen:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name

Monitoring aller Komponenten beenden (aber nicht stoppen)

Führen Sie den folgenden Befehl aus, um das Monitoring aller Komponenten zu beenden (aber nicht die Komponenten selbst):

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all

Führen Sie den folgenden Befehl aus, um das Monitoring aller Komponenten fortzusetzen:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all

Alle Komponenten beenden und Monitoring beenden

Führen Sie die folgenden Befehle aus, um alle Komponenten zu beenden und das Monitoring zu beenden:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
/opt/apigee/apigee-service/bin/apigee-all stop

Führen Sie die folgenden Befehle aus, um alle Komponenten neu zu starten und das Monitoring fortzusetzen:

/opt/apigee/apigee-service/bin/apigee-all start
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all

Wenn Sie das Monitoring aller Komponenten beenden möchten, können Sie auch apigee-monit deaktivieren, wie unter apigee-monit beenden, starten und deaktivieren beschrieben.

apigee-monit beenden, starten und deaktivieren

Wie bei jedem Dienst können Sie apigee-monit mit dem Befehl apigee-service beenden und starten. Darüber hinaus unterstützt apigee-monit den Befehl unmonitor, mit dem Sie das Monitoring von Komponenten vorübergehend beenden können.

apigee-monit beenden

Verwenden Sie den folgenden Befehl, um apigee-monit zu beenden:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop

apigee-monit starten

Verwenden Sie den folgenden Befehl, um apigee-monit zu starten:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit start

apigee-monit deaktivieren

Mit dem folgenden Befehl können Sie das Monitoring aller Komponenten auf dem Knoten aussetzen:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all

Alternativ können Sie apigee-monit dauerhaft deaktivieren, indem Sie es vom Knoten deinstallieren, wie unter apigee-monit deinstallieren beschrieben.

apigee-monit deinstallieren

So deinstallieren Sie apigee-monit:

  1. Wenn Sie einen cron-Job zum Überwachen von apigee-monit eingerichtet haben, entfernen Sie den cron-Job, bevor Sie apigee-monit deinstallieren:
    sudo rm /etc/cron.d/apigee-monit.cron
  2. Beenden Sie apigee-monit mit dem folgenden Befehl:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit stop
  3. Deinstallieren Sie apigee-monit mit dem folgenden Befehl:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit uninstall
  4. Wiederholen Sie diesen Vorgang für jeden Knoten in Ihrem Cluster.

Neu installierte Komponente überwachen

Wenn Sie eine neue Komponente auf einem Knoten installieren, auf dem apigee-monit ausgeführt wird, können Sie mit dem Monitoring beginnen, indem Sie den Befehl restart von apigee-monit ausführen. Dadurch wird eine neue monit.conf-Konfigurationsdatei generiert, die die neue Komponente in ihren Komponentenkonfigurationen enthält.

Im folgenden Beispiel wird apigee-monit neu gestartet:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit restart

apigee-monit anpassen

Du kannst verschiedene apigee-monit-Einstellungen anpassen, darunter:

  1. Standardeinstellungen für apigee-monit-Steuerelemente
  2. Globale Konfigurationseinstellungen
  3. Konfigurationen von Nicht-Apigee-Komponenten

Standardmäßige apigee-monit-Steuerungseinstellungen

Sie können die Standardeinstellungen für die apigee-monit-Steuerung anpassen, z. B. die Häufigkeit der Statusprüfungen und die Speicherorte der apigee-monit-Dateien. Dazu bearbeiten Sie eine Attributdatei mit der Methode Code mit Konfiguration. Attributdateien bleiben auch nach dem Upgrade von Apigee Edge for Private Cloud erhalten.

In der folgenden Tabelle werden die standardmäßigen apigee-monit-Steuerungseinstellungen beschrieben, die Sie anpassen können:

Attribut Beschreibung
conf_monit_httpd_port Der Port des httpd-Daemons. apigee-monit verwendet httpd für die Dashboard-App und zum Aktivieren von Berichten/Zusammenfassungen. Der Standardwert ist 2812.
conf_monit_httpd_allow Einschränkungen für Anfragen an den httpd-Daemon. apigee-monit verwendet httpd, um die Dashboard-App auszuführen und Berichte/Zusammenfassungen zu ermöglichen. Dieser Wert muss auf den Localhost verweisen (den Host, auf dem httpd ausgeführt wird).

Wenn Sie festlegen möchten, dass Anfragen einen Nutzernamen und ein Passwort enthalten müssen, verwenden Sie die folgende Syntax:

conf_monit_httpd_allow=allow username:"password"\nallow 127.0.0.1

Wenn Sie einen Nutzernamen und ein Passwort hinzufügen, fügen Sie zwischen den einzelnen Einschränkungen ein „\n“ ein. Fügen Sie keine tatsächlichen Zeilenumbrüche oder Wagenrückläufe in den Wert ein.

conf_monit_monit_datadir Das Verzeichnis, in dem Ereignisdetails gespeichert werden.
conf_monit_monit_delay_time Die Zeit, die apigee-monit nach dem ersten Laden in den Arbeitsspeicher wartet, bevor es ausgeführt wird. Dies betrifft nur die erste Prozessprüfung von apigee-monit.
conf_monit_monit_logdir Der Speicherort der Logdatei apigee-monit.
conf_monit_monit_retry_time Die Häufigkeit, mit der apigee-monit versucht, jeden Prozess zu prüfen. Der Standardwert ist 60 Sekunden.
conf_monit_monit_rundir Der Speicherort der PID- und Statusdateien, die apigee-monit zum Prüfen von Prozessen verwendet.

So passen Sie die Standardeinstellungen für das Steuerelement apigee-monit an:

  1. Bearbeiten Sie die folgende Datei:
    /opt/apigee/customer/application/monit.properties

    Wenn die Datei nicht vorhanden ist, erstellen Sie sie und legen Sie den Nutzer „apigee“ als Inhaber fest:

    chown apigee:apigee /opt/apigee/customer/application/monit.properties

    Wenn die Datei bereits vorhanden ist, sind darin möglicherweise zusätzliche Konfigurationsattribute definiert, die über die in der Tabelle oben aufgeführten hinausgehen. Sie sollten keine anderen als die oben aufgeführten Attribute ändern.

  2. Legen Sie Attributwerte fest oder ersetzen Sie sie durch Ihre neuen Werte.

    Wenn Sie beispielsweise den Speicherort der Logdatei in /tmp ändern möchten, fügen Sie das folgende Attribut hinzu oder bearbeiten Sie es:

    conf_monit_monit_logdir=/tmp/apigee-monit.log
  3. Speichern Sie die Änderungen in der Datei monit.properties.
  4. Konfigurieren Sie apigee-monit mit dem folgenden Befehl neu:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
  5. Aktualisieren Sie apigee-monit mit dem folgenden Befehl:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    Wenn Sie apigee-monit nicht neu starten können, suchen Sie in der Logdatei nach Fehlern, wie unter Auf apigee-monit-Logdateien zugreifen beschrieben.

  6. Wiederholen Sie diesen Vorgang für jeden Knoten in Ihrem Cluster.

Globale Konfigurationseinstellungen

Sie können globale Konfigurationseinstellungen für apigee-monit definieren. Beispielsweise können Sie E-Mail-Benachrichtigungen für Benachrichtigungen hinzufügen. Dazu erstellen Sie eine Konfigurationsdatei im Verzeichnis /opt/apigee/data/apigee-monit und starten dann apigee-monit neu.

So definieren Sie globale Konfigurationseinstellungen für apigee-monit:

  1. Erstellen Sie eine neue Komponentenkonfigurationsdatei am folgenden Speicherort:
    /opt/apigee/data/apigee-monit/filename.conf

    Dabei kann filename ein beliebiger gültiger Dateiname sein, außer „monit“.

  2. Ändern Sie den Inhaber der neuen Konfigurationsdatei in den Nutzer „apigee“, wie im folgenden Beispiel gezeigt:
    chown apigee:apigee /opt/apigee/data/apigee-monit/my-mail-config.conf
  3. Fügen Sie der neuen Datei Ihre globalen Konfigurationseinstellungen hinzu. Im folgenden Beispiel wird ein Mailserver konfiguriert und die Empfänger der Benachrichtigung festgelegt:
    SET MAILSERVER smtp.gmail.com PORT 465
      USERNAME "example-admin@gmail.com" PASSWORD "PASSWORD"
      USING SSL, WITH TIMEOUT 15 SECONDS
    
    SET MAIL-FORMAT {
      from: edge-alerts@example.com
      subject: Monit Alert -- Service: $SERVICE $EVENT on $HOST
    }
    SET ALERT fred@example.com
    SET ALERT nancy@example.com

    Eine vollständige Liste der globalen Konfigurationsoptionen finden Sie in der monit-Dokumentation.

  4. Speichern Sie die Änderungen in der Konfigurationsdatei der Komponente.
  5. Aktualisieren Sie apigee-monit mit dem folgenden Befehl:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    Wenn apigee-monit nicht neu gestartet wird, prüfen Sie die Logdatei auf Fehler, wie unter Auf apigee-monit-Logdateien zugreifen beschrieben.

  6. Wiederholen Sie diesen Vorgang für jeden Knoten in Ihrem Cluster.

Konfigurationen von Nicht-Apigee-Komponenten

Sie können apigee-monit eigene Konfigurationen hinzufügen, damit Dienste geprüft werden, die nicht Teil von Apigee Edge for Private Cloud sind. Sie können beispielsweise apigee-monit verwenden, um zu prüfen, ob Ihre APIs ausgeführt werden, indem Sie Anfragen an Ihren Zielendpunkt senden.

So fügen Sie eine Konfiguration für eine Nicht-Apigee-Komponente hinzu:

  1. Erstellen Sie eine neue Komponentenkonfigurationsdatei am folgenden Speicherort:
    /opt/apigee/data/apigee-monit/filename.conf

    Dabei kann filename ein beliebiger gültiger Dateiname sein, außer „monit“.

    Sie können so viele Komponentenkonfigurationsdateien wie nötig erstellen. Sie können beispielsweise für jede Nicht-Apigee-Komponente, die Sie auf dem Knoten überwachen möchten, eine separate Konfigurationsdatei erstellen.

  2. Ändern Sie den Inhaber der neuen Konfigurationsdatei in den Nutzer „apigee“, wie im folgenden Beispiel gezeigt:
    chown apigee:apigee /opt/apigee/data/apigee-monit/my-config.conf
  3. Fügen Sie der neuen Datei Ihre benutzerdefinierten Konfigurationen hinzu. Im folgenden Beispiel wird der Zielendpunkt auf dem lokalen Server geprüft:
    CHECK HOST localhost_validate_test WITH ADDRESS localhost
      IF FAILED
        PORT 15999
        PROTOCOL http
        REQUEST "/validate__test"
        CONTENT = "Server Ready"
        FOR 2 times WITHIN 3 cycles
      THEN alert

    Eine vollständige Liste der möglichen Konfigurationseinstellungen finden Sie in der monit-Dokumentation.

  4. Speichern Sie die Änderungen in der Konfigurationsdatei.
  5. Aktualisieren Sie apigee-monit mit dem folgenden Befehl:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    Wenn apigee-monit nicht neu gestartet wird, prüfen Sie die Logdatei auf Fehler, wie unter Auf apigee-monit-Logdateien zugreifen beschrieben.

  6. Wiederholen Sie diesen Vorgang für jeden Knoten in Ihrem Cluster.

Dies gilt nur für Nicht-Edge-Komponenten. Sie können die Komponentenkonfigurationen für Edge-Komponenten nicht anpassen.

Auf apigee-monit-Logdateien zugreifen

apigee-monit protokolliert alle Aktivitäten, einschließlich Ereignissen, Neustarts, Konfigurationsänderungen und Benachrichtigungen, in einer Logdatei.

Der Standardspeicherort der Logdatei ist:

/opt/apigee/var/log/apigee-monit/apigee-monit.log

Sie können den Standardspeicherort ändern, indem Sie die Einstellungen des Steuerelements apigee-monit anpassen.

Logdateieinträge haben das folgende Format:

'edge-message-processor' trying to restart
[UTC Dec 14 16:20:42] info     : 'edge-message-processor' trying to restart
'edge-message-processor' restart: '/opt/apigee/apigee-service/bin/apigee-service edge-message-processor monitrestart'

Sie können das Format der apigee-monit-Logdateieinträge nicht anpassen.

Aggregierten Status mit apigee-monit ansehen

apigee-monit enthält die folgenden Befehle, mit denen Sie zusammengefasste Statusinformationen zu den Komponenten auf einem Knoten abrufen können:

Befehl Nutzung
report
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
summary
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary

Die einzelnen Befehle werden in den folgenden Abschnitten ausführlicher erläutert.

Bericht

Der Befehl report liefert eine zusammengefasste Übersicht darüber, wie viele Komponenten auf einem Knoten aktiv, inaktiv, gerade initialisiert oder derzeit nicht überwacht werden. Im folgenden Beispiel wird der Befehl report aufgerufen:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit report

Das folgende Beispiel zeigt die report-Ausgabe für eine AIO-Konfiguration (All-in-One):

/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
up:            11 (100.0%)
down:           0 (0.0%)
initialising:   0 (0.0%)
unmonitored:    1 (8.3%)
total:         12 services

In diesem Beispiel werden 11 der 12 Dienste von apigee-monit als aktiv gemeldet. Ein Dienst wird derzeit nicht überwacht.

Wenn Sie den Befehl report zum ersten Mal ausführen, wird möglicherweise der Fehler Connection refused angezeigt. Warten Sie in diesem Fall, bis die Dauer des Attributs conf_monit_monit_delay_time abgelaufen ist, und versuchen Sie es dann noch einmal.

Zusammenfassung

Der Befehl summary listet alle Komponenten und ihren Status auf. Im folgenden Beispiel wird der Befehl summary aufgerufen:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary

Das folgende Beispiel zeigt die summary-Ausgabe für eine AIO-Konfiguration (All-in-One):

/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary
Monit 5.25.1 uptime: 4h 20m
 Service Name                     Status                      Type
 host_name                        OK                          System
 apigee-zookeeper                 OK                          Process
 apigee-cassandra                 OK                          Process
 apigee-openldap                  OK                          Process
 apigee-qpidd                     OK                          Process
 apigee-postgresql                OK                          Process
 edge-ui                          OK                          Process
 edge-qpid-server                 OK                          Remote Host
 edge-postgres-server             OK                          Remote Host
 edge-management-server           OK                          Remote Host
 edge-router                      OK                          Remote Host
 edge-message-processor           OK                          Remote Host

Wenn Sie beim ersten Ausführen des Befehls summary den Fehler Connection refused erhalten, warten Sie die Dauer des Attributs conf_monit_monit_delay_time ab und versuchen Sie es dann noch einmal.

apigee-monit überwachen

Es empfiehlt sich, regelmäßig zu prüfen, ob apigee-monit auf jedem Knoten ausgeführt wird.

Prüfen Sie mit dem folgenden Befehl, ob apigee-monit ausgeführt wird:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit

Apigee empfiehlt, diesen Befehl regelmäßig auf jedem Knoten auszuführen, auf dem apigee-monit ausgeführt wird. Eine Möglichkeit hierfür ist ein Dienstprogramm wie cron, das geplante Aufgaben in vordefinierten Intervallen ausführt.

So verwenden Sie cron, um apigee-monit zu überwachen:

  1. Fügen Sie die Unterstützung für cron hinzu, indem Sie das Verzeichnis apigee-monit.cron in das Verzeichnis /etc/cron.d kopieren, wie im folgenden Beispiel gezeigt:
    cp /opt/apigee/apigee-monit/cron/apigee-monit.cron /etc/cron.d/
  2. Öffnen Sie die Datei apigee-monit.cron, um sie zu bearbeiten.

    In der Datei apigee-monit.cron wird der auszuführende cron-Job sowie die Häufigkeit definiert, mit der dieser Job ausgeführt werden soll. Im folgenden Beispiel sehen Sie die Standardwerte:

    # Cron entry to check if monit process is running. If not start it
    */2 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit

    Diese Datei verwendet die folgende Syntax, wobei die ersten fünf Felder die Zeit definieren, zu der apigee-monit die Aktion ausführt:

    min hour day_of_month month day_of_week task_to_execute

    Die Standardausführungszeit ist beispielsweise */2 * * * *. Dadurch wird cron angewiesen, den apigee-monit-Prozess alle 2 Minuten zu prüfen.

    Sie können einen cron-Job nicht häufiger als einmal pro Minute ausführen.

    Weitere Informationen zur Verwendung von cron finden Sie in der Dokumentation oder auf den Manpages Ihres Serverbetriebssystems.

  3. Ändern Sie die cron-Einstellungen so, dass sie den Richtlinien Ihrer Organisation entsprechen. Wenn Sie beispielsweise die Ausführungshäufigkeit auf alle 5 Minuten ändern möchten, legen Sie die Jobdefinition so fest:
    */5 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
  4. Speichern Sie die Datei apigee-monit.cron.
  5. Wiederholen Sie diesen Vorgang für jeden Knoten in Ihrem Cluster.

Wenn cron nicht mit der Beobachtung von apigee-monit beginnt, prüfen Sie Folgendes:

  • Nach der Jobdefinition cron befindet sich eine Leerzeile.
  • In der Datei ist nur ein cron-Job definiert. (Kommentierte Zeilen werden nicht gezählt.)

Wenn Sie apigee-monit beenden oder vorübergehend deaktivieren möchten, müssen Sie auch diesen cron-Job deaktivieren. Andernfalls wird apigee-monit von cron neu gestartet.

So deaktivieren Sie cron:

  • Löschen Sie die Datei /etc/cron.d/apigee-monit.cron:
    sudo rm /etc/cron.d/apigee-monit.cron

    Du musst ihn noch einmal kopieren, wenn du cron später wieder aktivieren möchtest, um apigee-monit anzusehen.

    OR

  • Bearbeiten Sie die Datei /etc/cron.d/apigee-monit.cron und kommentieren Sie die Jobdefinition aus, indem Sie am Zeilenanfang ein „#“ einfügen. Beispiel:
    # 10 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit