Riavvio di router e processori di messaggi senza impatto sul traffico

Stai visualizzando la documentazione di Apigee Edge.
Vai alla documentazione di Apigee X.
informazioni

Questo documento spiega come riavviare i router e i processori di messaggi (MP) senza influire sul traffico API in entrata. In determinate circostanze potrebbe essere necessario riavviare router e MP. Ecco alcuni esempi:

  • Quando un archivio chiavi a cui viene fatto riferimento direttamente nell'host virtuale, il server o l'endpoint di destinazione vengono aggiornati senza utilizzare riferimenti.
  • Quando viene eseguito il deployment parziale dei proxy API con pochi MP.

Prima di iniziare

Se non hai familiarità con i router e i processori di messaggi, leggi Panoramica di Edge per Private Cloud.

Riavvio in sequenza dei router senza impatto sul traffico

Questa sezione descrive i passaggi utilizzati per riavviare i router senza influire sul traffico API in entrata.

  1. Accedi al router che deve essere riavviato.
  2. Blocca la porta per il controllo di integrità sul router utilizzando il comando seguente. Ciò garantisce che il router non sia integro e che non venga instradato alcun tipo di traffico a questo router.
    sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
        
  3. Attendi due minuti per assicurarti che il traffico in corso venga gestito senza problemi prima di riavviare il router. Per farlo, esegui il comando sleep come segue:
    for i in {001..120}; do sleep 1; printf "\r ${i}"; done
        
  4. Interrompi il servizio Apigee Monit come segue:
    apigee-service apigee-monit stop
        
  5. Interrompi il servizio router Apigee come segue:
    apigee-service edge-router stop
        
  6. Avvia il servizio router Apigee come segue:
    apigee-service edge-router start
        
  7. Attendi che il servizio del router Apigee venga avviato e sia pronto per gestire il traffico in entrata utilizzando il seguente comando:
    apigee-service edge-router wait_for_ready
        
  8. Avvia il servizio Apigee Monit come segue:
    apigee-service apigee-monit start
        
  9. Elimina le tabelle IP per sbloccare la porta per il controllo di integrità 15999 e consentire al router di gestire di nuovo il traffico eseguendo questi comandi:
    sudo iptables -F
    sudo iptables -L
        
sudo iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
for i in {001..120}; do sleep 1; printf "\r ${i}"; done
apigee-service apigee-monit stop
apigee-service edge-router stop
apigee-service edge-router start
apigee-service edge-router wait_for_ready
apigee-service apigee-monit start
sudo iptables -F
sudo iptables -L

Riavvio in sequenza dei processori di messaggi senza impatto sul traffico

Questa sezione descrive i passaggi utilizzati per riavviare i processori di messaggi (MP) senza influire sul traffico API in entrata.

  1. Accedi al processore di messaggi che deve essere riavviato.
  2. Identifica la porta per il controllo di integrità del processore di messaggi utilizzando il seguente comando:
    curl 0:8082/v1/servers/self -s | jq '.tags.property' | jq '.[] | select(.name=="http.port")'
        
  3. Blocca la porta per il controllo di integrità (identificata nel passaggio 2) sul processore di messaggi. Ciò garantisce che il processore di messaggi sia considerato non integro e che non venga instradato alcun traffico a questo processore.
    sudo iptables -A INPUT -i eth0 -p tcp --dport port # -j REJECT
        

    Dove port # è il numero di porta restituito dal comando eseguito nel passaggio 2.

  4. Attendi due minuti per assicurarti che il traffico in corso venga gestito senza problemi prima di riavviare il processore di messaggi. Per farlo, esegui il comando sleep come segue:
    for i in {001..120}; do sleep 1; printf "\r ${i}"; done
        
  5. Interrompi il servizio Apigee Monit come segue:
    apigee-service apigee-monit stop
        
  6. Arresta il servizio processore di messaggi Apigee come segue:
    apigee-service edge-message-processor stop
        
  7. Configura il servizio processore di messaggi Apigee come segue:
    apigee-service edge-message-processor start
        
  8. Attendi che il servizio del processore di messaggi Apigee venga avviato e sia pronto per gestire il traffico in entrata utilizzando il seguente comando:
    apigee-service edge-message-processor wait_for_ready
        
  9. Avvia il servizio Apigee Monit come segue:
    apigee-service apigee-monit start
        
  10. Elimina le tabelle IP per sbloccare la porta per il controllo di integrità e consentire al processore di messaggi di gestire nuovamente il traffico eseguendo i comandi seguenti:
    sudo iptables -F
    sudo iptables -L
        
curl 0:8082/v1/servers/self -s | jq '.tags.property' | jq '.[] | select(.name=="http.port")'

sudo iptables -A INPUT -i eth0 -p tcp --dport port # -j REJECT
for i in {001..120}; do sleep 1; printf "\r ${i}"; done
apigee-service apigee-monit stop
apigee-service edge-message-processor stop
apigee-service edge-message-processor start
apigee-service edge-message-processor wait_for_ready
apigee-service apigee-monit start
sudo iptables -F
sudo iptables -L

Dove port # è il numero di porta restituito dal comando eseguito nel passaggio 2.