Nachrichtenprozessor/Routererreichbarkeit aktivieren/deaktivieren

Es empfiehlt sich, die Erreichbarkeit eines Servers während der Wartung zu deaktivieren, z. B. etwa einen Neustart oder ein Upgrade des Servers. Wenn die Erreichbarkeit deaktiviert ist, wird kein Traffic an den Server. Wenn beispielsweise die Erreichbarkeit bei einem Message Processor deaktiviert ist, werden Router Traffic an diesen Message Processor weiterleiten.

Um einen Message Processor zu aktualisieren, können Sie beispielsweise so vorgehen:

  1. Erreichbarkeit im Message Processor deaktivieren.
  2. Aktualisieren Sie den Message Processor.
  3. Erreichbarkeit im Message Processor aktivieren

Erreichbarkeit deaktivieren/aktivieren auf ein Message Processor

Um die Erreichbarkeit von Message Processor zu deaktivieren, können Sie einfach den Message Processor:

/opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop

Der Message Processor verarbeitet zuerst alle ausstehenden Nachrichten, bevor er heruntergefahren wird. Alle neuen -Anfragen werden an andere verfügbare Message Processor weitergeleitet.

Verwenden Sie die folgenden Befehle, um Message Processor neu zu starten:

/opt/apigee/apigee-service/bin/apigee-service edge-message-processor start
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor wait_for_ready

Der Befehl wait_for_ready gibt die folgende Nachricht zurück, wenn die Nachricht Prozessor ist bereit, Nachrichten zu verarbeiten:

Checking if message-processor is up: message-processor is up.

Erreichbarkeit auf einem Router

In einer Produktionsumgebung haben Sie in der Regel vor den Edge Routern einen Load-Balancer. Load-Balancer überwachen Port 15999 auf den Routern, um sicherzustellen, dass die Route verfügbar ist.

Konfigurieren Sie den Load-Balancer so, dass eine HTTP- oder TCP-Systemdiagnose auf dem Router mithilfe der Methode folgende URL:

http://router_IP:15999/v1/servers/self/reachable

Diese URL gibt einen HTTP 200-Antwortcode zurück, wenn der Router erreichbar ist.

Damit ein Router nicht erreichbar ist, können Sie Port 15999 blockieren. Wenn der Load-Balancer nicht auf den Router an Port 15999 zugreifen kann, leitet er keine Anfragen mehr an den Router weiter. Für Sie können den Port beispielsweise mit dem folgenden iptables-Befehl auf dem Routerknoten blockieren:

sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT

Leeren Sie iptables, um den Router später verfügbar zu machen:

sudo iptables -F

Möglicherweise verwenden Sie iptables zur Verwaltung anderer Ports auf dem Knoten. wenn Sie iptables leeren oder iptables zum Blockieren von Port 15999 verwenden. Wenn Sie iptables für andere Regeln verwenden, können Sie mit der Option -D die jeweilige Änderung rückgängig machen:

sudo iptables -D INPUT -i eth0 -p tcp --dport 15999 -j REJECT
<ph type="x-smartling-placeholder">

Router-Systemdiagnosen durchführen

Sie können die folgenden Arten von Systemdiagnosen für Router ausführen:

  • Aktivität: Ein Signal für das Monitoring-Subsystem, dass es einen Neustart durchführen kann Komponente. Beispiel:
    To check a router's liveness:
    http://router_IP:8081/v1/servers/self/up
    
    To check a load balancer's liveness:
    http://router_IP:15999/v1/servers/self/reachable
  • Bereitschaft:Legt fest, ob ein Router Kundenanfragen für eine bestimmte Umgebung verarbeiten kann.

    Beispiel:

    To check both a router and MP pool's availability:
    http://router_IP:15999/{org}__{env}

    Senden Sie eine Anfrage an Port 8081 des Routers, um den Status eines Routers abzurufen:

    curl -v http://router_IP:8081/v1/servers/self/up

    Wenn der Router aktiv ist, wird für die Anfrage „true“ zurückgegeben. in der Antwort und HTTP 200. Beachten Sie, dass dies -Aufruf prüft nur, ob der Router betriebsbereit ist. Die Steuerung der Erreichbarkeit des Routers von einem wird der Load-Balancer durch Port 15999 bestimmt.

    So rufen Sie den Status eines Message Processor ab:

    curl http://Message_Processor_IP:8082/v1/servers/self/up