Lo spostamento di componenti da una macchina a un'altra potrebbe causare una mancata corrispondenza della configurazione se non si mantengono sincronizzati gli indirizzi IP nei file di configurazione dei componenti.
Questa sezione descrive come diagnosticare e correggere le mancate corrispondenze di configurazione.
Indirizzi IP e nomi host
Nei file di configurazione dei componenti dovresti utilizzare gli indirizzi IP anziché i nomi host.
Sebbene alcuni file di configurazione dei componenti consentano di utilizzare nomi host anziché indirizzi IP, il loro utilizzo può complicare la risoluzione dei problemi. Ad esempio, i nomi host possono essere l'origine di problemi relativi alla connettività del server DNS, agli errori di ricerca e alla sincronizzazione.
Di conseguenza, Apigee consiglia vivamente di utilizzare gli indirizzi IP per tutte le configurazioni dei componenti. In alcuni casi, ad esempio con Cassandra, devi utilizzare indirizzi IP e non puoi utilizzare i nomi host. La maggior parte degli esempi nella documentazione utilizza gli indirizzi IP per la configurazione dei componenti.
Per i nomi host e gli indirizzi IP, considera le implicazioni dei seguenti scenari durante lo spostamento dei server Apigee:
Scenario | Impatto sullo spostamento dei server |
---|---|
Modifica dell'indirizzo IP | Aggiorna tutti i file correlati che fanno riferimento all'indirizzo IP originale |
Variazione del nome host senza modifiche dell'indirizzo IP | Nessun impatto |
Variazione del nome host con modifica dell'indirizzo IP | Uguale alla 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
- Modifica
/opt/apigee/customer/application/cassandra.properties
sul sistema in fase di modifica. Se il file non esiste, crealo. - Modifica i seguenti parametri:
- Imposta i parametri
conf_cassandra_seeds
econf_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).
- Imposta i parametri
- Apri
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
in un editor. Dovresti vedere il vecchio indirizzo IP e l'impostazione predefinita nel modulo:192.168.56.101=dc-1:ra-1 default=dc-1:ra-1
Salva queste informazioni.
- Modifica
/opt/apigee/customer/application/cassandra.properties
per cambiare il vecchio indirizzo IP specificato nel nuovo indirizzo IP: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 indicate nel passaggio 3 sopra.
- Riavvia Cassandra:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Se necessario, ripara anche ZooKeeper (vedi di seguito), altrimenti riavvia ogni componente della piattaforma Apigee a partire dal server di gestione.
Per configurazioni con più nodi Cassandra (anello)
- Se il nodo da modificare è un nodo seed, modifica il file
/opt/apigee/customer/application/cassandra.properties
su ciascun sistema nell'anello e cambia il parametroconf_cassandra_seeds
in modo da includere il nuovo IP del sistema modificato. Se il file cassandra.properties non esiste, crealo. - Modifica
/opt/apigee/customer/application/cassandra.properties
sul sistema da modificare e cambia i seguenti parametri:- Imposta
conf_cassandra_listen_address
in modo che utilizzi il nuovo indirizzo IP. - Imposta
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).
- Imposta
- Apri
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
in un editor. Tutti gli indirizzi IP di Cassandra e l'impostazione predefinita dovrebbero essere visualizzati nel modulo: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.
- Modifica
/opt/apigee/customer/application/cassandra.properties
per cambiare il vecchio indirizzo IP specificato nel nuovo indirizzo IP: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 utilizza le stesse impostazioni predefinite registrate nel passaggio 3.
- Riavvia Cassandra sul sistema modificato. Se il sistema modificato è un nodo seed, riavvia anche ogni sistema che ha utilizzato il nodo seed modificato.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- 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
Devi passare il nome utente e la password solo se hai attivato l'autenticazione JMX per Cassandra.
- Esegui
nodetool repair
sul nodo modificato. Tieni presente che questa procedura potrebbe richiedere del tempo, perciò è vivamente consigliato non eseguirla nelle ore di picco del traffico API.nodetool [-u username -pw password] -h localhost repair -pr
- Se necessario, ripara ZooKeeper (vedi di seguito), quindi riavvia ogni componente della piattaforma Apigee, a partire dal server di gestione.
Aggiorna registrazioni datastore
- Trova gli UUID delle registrazioni del datastore specificando 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®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics®ion=DC" | egrep -i '[type|internalip|uuid|region]'
Dove DC è il nome del data center. In genere, in una singola installazione di data center il valore è "dc-1".
-
- Registra i nuovi indirizzi IP utilizzando uno dei comandi riportati di seguito. Il comando necessario dipenderà 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®ion=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®ion=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®ion=REGION&pod=analytics" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- Per type="application-datastore":
- Elimina le vecchie registrazioni per l'UUID del sistema in 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'ensemble ZooKeeper (solo per configurazioni di insiemi di più nodi)
- Apri
/opt/apigee/apigee-zookeeper/conf/zoo.cfg
in un editor. Dovresti vedere tutti gli indirizzi IP di ZooKeeper e l'impostazione predefinita nel modulo: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.
- 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.
- Trova il leader dell'insieme ZooKeeper utilizzando il seguente comando (sostituisci
node con l'indirizzo IP della macchina Zookeeper):
echo srvr | nc node 2181
La riga Mode nell'output dovrebbe riportare la dicitura "leader".
- Riavvia uno ZooKeeper dopo l'altro, iniziando con il 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
- Utilizza il comando
echo
descritto sopra per verificare ogni nodo ZooKeeper.
Informa i nodi Apigee della modifica della configurazione
- Su ciascun nodo del 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
per includere il nuovo indirizzo IP - Modifica il parametro
conf_zookeeper_zk1.host
per includere il nuovo indirizzo IP
- Modifica il parametro
- Su ogni nodo del processore di messaggi, modifica il file
/opt/apigee/customer/application/message-processor.properties
come segue. Se il file non esiste, crealo.- Modifica il parametro
conf_zookeeper_connection.string
per includere il nuovo indirizzo IP - Modifica il parametro
conf_zookeeper_zk1.host
per includere il nuovo indirizzo IP
- Modifica il parametro
- Sul nodo del server di gestione, 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
per includere il nuovo indirizzo IP - Modifica il parametro
conf_zookeeper_zk1.host
per includere il nuovo indirizzo IP
- Modifica il parametro
- Riavvia tutti i componenti della piattaforma Apigee eseguendo questo comando su ciascun nodo:
/opt/apigee/apigee-service/bin/apigee-all restart
Modifica dell'indirizzo IP di un server LDAP (OpenLDAP)
Per modificare l'indirizzo IP di un nodo OpenLDAP, segui questi passaggi:
- Sul nodo del server di gestione, modifica il file
/opt/apigee/customer/application/management-server.properties
del file. Se il file non esiste, crealo. - Nel file
management-server.properties
, imposta il parametroconf_security_ldap.server.host
sul nuovo indirizzo IP. - 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 qualsiasi di questi tipi di nodi (router, processore di messaggi, server Postgres (non postgresql) e server Qpid (non qpidd):
- Utilizza il seguente comando
curl
per registrare i nuovi indirizzi IP interni ed esterni: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, consulta la sezione Ottenere gli UUID.