Spostamento di server Apigee in corso...

Lo spostamento di componenti da una macchina all'altra può causare una mancata corrispondenza della configurazione se non mantieni sincronizzati gli indirizzi IP nei file di configurazione dei componenti.

Questa sezione descrive come diagnosticare e correggere le mancate corrispondenze della configurazione.

Indirizzi IP e nomi host

Nei file di configurazione dei componenti devi utilizzare indirizzi IP anziché nomi host.

Sebbene alcuni file di configurazione dei componenti ti consentano di utilizzare nomi host anziché indirizzi IP, l'utilizzo dei nomi host può complicare la risoluzione dei problemi. Ad esempio, i nomi host possono essere la causa di problemi relativi alla connettività del server DNS, agli errori di ricerca e alla sincronizzazione.

Di conseguenza, Apigee consiglia vivamente di utilizzare indirizzi IP per tutte le configurazioni dei componenti. In alcuni casi, ad esempio con Cassandra, devi utilizzare indirizzi IP e non puoi utilizzare nomi host. La maggior parte degli esempi nella documentazione utilizza indirizzi IP per la configurazione dei componenti.

Per i nomi host e gli indirizzi IP, considera le implicazioni degli scenari seguenti quando sposti i server Apigee:

Scenario Impatto sul trasferimento dei server
Modifica dell'indirizzo IP Aggiorna tutti i file correlati che fanno riferimento all'indirizzo IP originale
Modifica del nome host senza modifica dell'indirizzo IP Nessun impatto
Modifica del nome host con modifica dell'indirizzo IP Come una modifica dell'indirizzo IP

Modifica dell'indirizzo IP di un nodo Cassandra

Per modificare l'indirizzo IP di un nodo Cassandra, segui questi passaggi:

Per configurazioni con un singolo nodo Cassandra

  1. Modifica /opt/apigee/customer/application/cassandra.properties sul sistema in fase di modifica. Se il file non esiste, crealo.
  2. Modifica i seguenti parametri:
    • Imposta i parametri conf_cassandra_seeds e conf_cassandra_listen_address per specificare il nuovo indirizzo IP del sistema.
    • Modifica conf_cassandra_rpc_address per utilizzare il nuovo indirizzo IP o 0.0.0.0 (che consente a Cassandra Thrift di ascoltare su tutte le interfacce).
  3. Apri /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties in un editor. Nel modulo dovresti visualizzare il vecchio indirizzo IP e l'impostazione predefinita:
    192.168.56.101=dc-1:ra-1
    default=dc-1:ra-1

    Salva queste informazioni.

  4. Modifica /opt/apigee/customer/application/cassandra.properties per cambiare il vecchio indirizzo IP specificato con il nuovo:
    conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n

    Assicurati di inserire "\n" dopo l'indirizzo IP e specifica le stesse impostazioni predefinite che hai trovato sopra nel passaggio 3.

  5. Riavvia Cassandra:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. Se necessario, ripara anche ZooKeeper (vedi Modifica dell'indirizzo IP di un nodo ZooKeeper). In caso contrario, riavvia ogni componente della piattaforma Apigee, a partire dal Management Server.

Per configurazioni con più nodi Cassandra (anello)

  1. Se il nodo in fase di modifica è un nodo seed, modifica il file /opt/apigee/customer/application/cassandra.properties su ogni sistema dell'anello e cambia il parametro conf_cassandra_seeds in modo che includa il nuovo IP del sistema modificato. Se il file cassandra.properties non esiste, crealo.
  2. Modifica /opt/apigee/customer/application/cassandra.properties sul sistema in fase di modifica e cambia i seguenti parametri:
    • Imposta conf_cassandra_listen_address in modo che utilizzi il nuovo indirizzo IP.
    • Imposta conf_cassandra_rpc_address in modo che utilizzi il nuovo indirizzo IP o "0.0.0.0" (che consente a Cassandra Thrift di ascoltare su tutte le interfacce).
  3. Apri /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties in un editor. Nel modulo dovresti visualizzare tutti gli indirizzi IP Cassandra e l'impostazione predefinita:
    192.168.56.101=dc-1:ra-1
    192.168.56.102=dc-1:ra-1
    192.168.56.103=dc-1:ra-1
    default=dc-1:ra-1

    Salva queste informazioni.

  4. Modifica /opt/apigee/customer/application/cassandra.properties per cambiare il vecchio indirizzo IP specificato con il nuovo:
    conf_cassandra-topology_topology=192.168.56.101=dc-1:ra-1\n192.168.56.102=dc-1:ra-1\n192.168.56.104=dc-1:ra-1\ndefault=dc-1:ra-1\n

    Assicurati di inserire "\n" dopo ogni indirizzo IP e di utilizzare le stesse impostazioni predefinite registrate sopra nel passaggio 3.

  5. Riavvia Cassandra sul sistema modificato.
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. Per tutti gli altri nodi, ripeti le modifiche apportate nei passaggi 3 e 4 per informarli della posizione di questo nodo nell'anello Cassandra. Inoltre, modifica l'IP del nodo seed come descritto nel passaggio 1.
  7. Riavvia ogni nodo Cassandra rimanente uno alla volta.
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  8. Esegui il comando nodetool ring sul nodo modificato per assicurarti che l'anello sia completo. L'utilità è disponibile all'indirizzo /opt/apigee/apigee-cassandra/bin.
    nodetool [-u username -pw password] -h localhost ring
  9. Esegui nodetool repair sul nodo modificato. Tieni presente che questo processo potrebbe richiedere del tempo, pertanto è consigliabile non eseguirlo durante le ore di picco del traffico API.
    nodetool [-u username -pw password] -h localhost repair -pr
  10. Se necessario, ripara ZooKeeper (vedi Modifica dell'indirizzo IP di un nodo ZooKeeper), quindi riavvia ogni componente della piattaforma Apigee, a partire dal Management Server.

Aggiorna le registrazioni del datastore

  1. Trova gli UUID delle registrazioni dei datastore che specificano il vecchio indirizzo IP utilizzando i comandi riportati di seguito. Prendi nota dei parametri "type" e "UUID":
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics&region=DC" | egrep -i '[type|internalip|uuid|region]'

      dove DC è il nome del data center. In un'installazione di un singolo data center, il valore è in genere "dc-1".

  2. Registra i nuovi indirizzi IP utilizzando uno dei comandi riportati di seguito. Il comando necessario dipende dal tipo di nodo modificato.
    • Per type="application-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \
        "Type=application-datastore&Type=audit-datastore&InternalIP=NEWIP&region=REGION&pod=central" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST
    • Per type="kms-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \
        "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore&Type=counter-datastore&Type=cache-datastore \
        &InternalIP=NEWIP&region=REGION&pod=GATEWAY_POD" -H 'content-type: \
        application/x-www-form-urlencoded' -X POST
    • Per type="reportcrud-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers" -d \
        "Type=reportcrud-datastore&InternalIP=NEW_IP&region=REGION&pod=analytics" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST 
  3. Elimina le vecchie registrazioni per l'UUID del sistema su cui è stato modificato l'indirizzo IP. Per ciascuno di questi problemi relativi agli UUID:
    curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE

Modifica dell'indirizzo IP di un nodo ZooKeeper

Per modificare l'indirizzo IP di un nodo ZooKeeper:

Modifica l'indirizzo IP e riavvia l'insieme ZooKeeper (solo per le configurazioni di insieme multi-nodo)

  1. Apri /opt/apigee/apigee-zookeeper/conf/zoo.cfg in un editor. Dovresti vedere tutti gli indirizzi IP di ZooKeeper e l'impostazione predefinita nel formato:
    server.1=192.168.56.101:2888:3888
    server.2=192.168.56.102:2888:3888
    server.3=192.168.56.103:2888:3888

    Salva queste informazioni.

  2. Su ogni nodo ZooKeeper, modifica il file /opt/apigee/customer/application/zookeeper.properties per impostare la proprietà conf_zoo_quorum sugli indirizzi IP corretti. Se il file non esiste, crealo.
    conf_zoo_quorum=server.1=192.168.56.101:2888:3888\nserver.2=192.168.56.102:2888:3888\nserver.3=192.168.56.104:2888:3888\n

    Assicurati di inserire "\n" dopo ogni indirizzo IP e che le voci siano nello stesso ordine su ogni nodo.

  3. Trova il leader dell'ensemble ZooKeeper utilizzando il seguente comando (sostituisci node con l'indirizzo IP della macchina Zookeeper):
    echo srvr | nc node 2181

    La riga Mode nell'output deve indicare "leader".

  4. Riavvia uno ZooKeeper dopo l'altro, iniziando dal leader e terminando con il nodo su cui è stato modificato l'indirizzo IP. Se più di un nodo Zookeeper ha modificato gli indirizzi IP, potrebbe essere necessario riavviare tutti i nodi.
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
  5. Utilizza il comando echo descritto sopra per verificare ogni nodo ZooKeeper.

Comunica ai nodi Apigee la configurazione modificata

  1. Su ogni nodo router, modifica il file /opt/apigee/customer/application/router.properties come segue. Se il file non esiste, crealo.
    • Modifica il parametro conf_zookeeper_connection.string in modo da includere il nuovo indirizzo IP
    • Modifica il parametro conf_zookeeper_zk1.host in modo da includere il nuovo indirizzo IP
  2. Su ogni nodo del processore di messaggi, modifica il file /opt/apigee/customer/application/message-processor.properties nel seguente modo. Se il file non esiste, crealo.
    • Modifica il parametro conf_zookeeper_connection.string in modo che includa il nuovo indirizzo IP.
    • Modifica il parametro conf_zookeeper_zk1.host in modo da includere il nuovo indirizzo IP
  3. Sul nodo Management Server, modifica il file /opt/apigee/customer/application/management-server.properties come segue. Se il file non esiste, crealo.
    • Modifica il parametro conf_zookeeper_connection.string in modo che includa il nuovo indirizzo IP.
    • Modifica il parametro conf_zookeeper_zk1.host in modo da includere il nuovo indirizzo IP
  4. Riavvia tutti i componenti della piattaforma Apigee eseguendo il seguente comando su ogni nodo:
    /opt/apigee/apigee-service/bin/apigee-all restart

Modifica dell'indirizzo IP di un server LDAP (SymasLDAP)

Per modificare l'indirizzo IP di un nodo SymasLDAP:

  1. Nel nodo del server di gestione, modifica il file /opt/apigee/customer/application/management-server.properties. Se il file non esiste, crealo.
  2. Nel file management-server.properties, imposta il parametro conf_security_ldap.server.host sul nuovo indirizzo IP.
  3. Riavvia il server di gestione:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

Modifica dell'indirizzo IP di altri tipi di nodi Apigee

Per modificare l'indirizzo IP di uno di questi tipi di nodi (router, processore di messaggi, server Postgres (non postgresql) e server Qpid (non qpidd):

  1. Utilizza il seguente comando curl per registrare il nuovo indirizzo IP interno ed esterno:
    curl -u ADMINEMAIL:PW -X PUT \
      http://MSIP:8080/v1/servers/uuid -d ExternalIP=ip
    curl -u ADMINEMAIL:PW -X PUT \
      http://$MSIP:8080/v1/servers/uuid -d InternalIP=ip

    Dove uuid è l'UUID del nodo.

Per informazioni su come ottenere l'UUID di un componente, vedi Ottenere gli UUID.