Mover componentes de una máquina a otra puede causar una incongruencia en la configuración si no mantienes sincronizadas las direcciones IP de los archivos de configuración de los componentes.
En esta sección, se describe cómo diagnosticar y corregir discrepancias en la configuración.
Direcciones IP frente a nombres de host
Debes usar direcciones IP en lugar de nombres de host en los archivos de configuración de los componentes.
Si bien algunos archivos de configuración de componentes te permiten usar nombres de host en lugar de direcciones IP, el uso de nombres de host puede complicar la solución de problemas. Por ejemplo, los nombres de host pueden ser la fuente de problemas relacionados con la conectividad del servidor DNS, las fallas de búsqueda y la sincronización.
Por lo tanto, Apigee recomienda enfáticamente usar direcciones IP para todas las configuraciones de los componentes. En algunos casos, como con Cassandra, debes usar direcciones IP y no puedes usar nombres de host. La mayoría de los ejemplos en la documentación usan direcciones IP para la configuración de componentes.
Para los nombres de host y las direcciones IP, considera las implicaciones de las siguientes situaciones cuando muevas servidores de Apigee:
Situación | Impacto en el movimiento de servidores |
---|---|
Cambio en la dirección IP | Actualiza todos los archivos relacionados que hacen referencia a la dirección IP original |
Cambio de nombre de host sin cambio de dirección IP | Sin efecto |
Cambio de nombre de host con cambio de dirección IP | Igual que un cambio en la dirección IP |
Cambia la dirección IP de un nodo de Cassandra
Para cambiar la dirección IP de un nodo de Cassandra, sigue estos pasos:
Para configuraciones con un solo nodo de Cassandra
- Edita
/opt/apigee/customer/application/cassandra.properties
en el sistema que se está modificando. Si el archivo no existe, créalo. - Cambia los siguientes parámetros:
- Establece los parámetros
conf_cassandra_seeds
yconf_cassandra_listen_address
para especificar la nueva dirección IP del sistema. - Cambia
conf_cassandra_rpc_address
para usar la dirección IP nueva o 0.0.0.0 (que permite que Cassandra Thrift escuche en todas las interfaces).
- Establece los parámetros
- Abre
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
en un editor. Deberías ver la dirección IP anterior y la configuración predeterminada en el formulario:192.168.56.101=dc-1:ra-1 default=dc-1:ra-1
Guarda esa información.
- Edita
/opt/apigee/customer/application/cassandra.properties
para cambiar la dirección IP anterior especificada por la nueva:conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n
Asegúrate de insertar "\n" después de la dirección IP y especifica la misma configuración predeterminada que la que encontraste en el paso 3.
- Reinicia Cassandra:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Si es necesario, también repara ZooKeeper (consulta Cómo cambiar la dirección IP de un nodo de ZooKeeper). De lo contrario, reinicia todos los componentes de la plataforma de Apigee, comenzando con el servidor de administración.
Para configuraciones con varios nodos de Cassandra (anillo)
- Si el nodo que se cambia es un nodo de origen, edita el archivo
/opt/apigee/customer/application/cassandra.properties
en cada sistema del anillo y cambia el parámetroconf_cassandra_seeds
para incluir la nueva IP del sistema modificado. Si el archivo cassandra.properties no existe, créalo. - Edita
/opt/apigee/customer/application/cassandra.properties
en el sistema que se está modificando y cambia los siguientes parámetros:- Configura
conf_cassandra_listen_address
para usar la dirección IP nueva. - Configura
conf_cassandra_rpc_address
para usar la dirección IP nueva o "0.0.0.0" (lo que permite que Cassandra Thrift escuche en todas las interfaces).
- Configura
- Abre
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
en un editor. Deberías ver todas las direcciones IP de Cassandra y la configuración predeterminada en el siguiente formato: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
Guarda esa información.
- Edita
/opt/apigee/customer/application/cassandra.properties
para cambiar la dirección IP anterior especificada por la nueva: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
Asegúrate de insertar “\n” después de cada dirección IP y usar la misma configuración predeterminada que registraste anteriormente en el paso 3.
- Reinicia Cassandra en el sistema modificado.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Para todos los demás nodos, repite los cambios realizados en los pasos 3 y 4 para informarles sobre la posición de este nodo en el anillo de Cassandra. Además, cambia la IP del nodo de origen como se describe en el paso 1.
- Reinicia cada nodo de Cassandra restante uno por uno.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- Ejecuta el comando
nodetool ring
en el nodo modificado para asegurarte de que el anillo esté completo. Puedes encontrar la utilidad en/opt/apigee/apigee-cassandra/bin
.nodetool [-u username -pw password] -h localhost ring
- Ejecuta
nodetool repair
en el nodo modificado. Ten en cuenta que este proceso puede tardar un poco, por lo que se recomienda que no lo realices durante las horas pico de tráfico de API.nodetool [-u username -pw password] -h localhost repair -pr
- Si es necesario, repara ZooKeeper (consulta Cómo cambiar la dirección IP de un nodo de ZooKeeper) y, luego, reinicia todos los componentes de la plataforma de Apigee, comenzando por el servidor de administración.
Actualiza registros del almacén de datos
- Encuentra los UUID de los registros del almacén de datos que especifican la dirección IP anterior con los
siguientes comandos. Toma nota de los parámetros "type" y "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]'
En el ejemplo anterior, DC es el nombre del centro de datos. En una instalación de centro de datos única, el valor suele ser "dc-1".
-
- Registra las direcciones IP nuevas con uno de los siguientes comandos. El comando necesario
dependerá del tipo del nodo modificado.
- Para 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
- Para 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
- Para 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
- Para type="application-datastore":
- Borra los registros antiguos del UUID del sistema en el que se cambió la dirección IP. Para cada uno de estos UUIDs, ocurre un problema:
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE
Cambia la dirección IP de un nodo de ZooKeeper
Sigue los pasos que se indican a continuación para cambiar la dirección IP de un nodo de ZooKeeper:
Cambia la dirección IP y reinicia el ensamble de ZooKeeper (solo para configuraciones de ensamble de varios nodos)
- Abre
/opt/apigee/apigee-zookeeper/conf/zoo.cfg
en un editor. Deberías ver todas las direcciones IP y la configuración predeterminada de ZooKeeper en el siguiente 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
Guarda esa información.
- En cada nodo de ZooKeeper, edita el archivo
/opt/apigee/customer/application/zookeeper.properties
para establecer la propiedadconf_zoo_quorum
en las direcciones IP correctas. Si el archivo no existe, créalo.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
Asegúrate de insertar “\n” después de cada dirección IP y de que las entradas estén en el mismo orden en cada nodo.
- Encuentra el líder del ensamble de ZooKeeper con el siguiente comando (reemplaza node por la dirección IP de la máquina de Zookeeper):
echo srvr | nc node 2181
La línea de modo en el resultado debe decir "leader".
- Reinicia un ZooKeeper después del otro, comenzando con el líder y finalizando con el nodo en el que se cambió la dirección IP. Si más de un nodo de Zookeeper cambió las direcciones IP, puede
ser necesario reiniciar todos los nodos.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
- Usa el comando
echo
que se describió anteriormente para verificar cada nodo de ZooKeeper.
Informar a los nodos de Apigee sobre el cambio de configuración
- En cada nodo del router, edita el archivo
/opt/apigee/customer/application/router.properties
de la siguiente manera. Si el archivo no existe, créalo.- Cambia el parámetro
conf_zookeeper_connection.string
para incluir la dirección IP nueva. - Cambia el parámetro
conf_zookeeper_zk1.host
para incluir la dirección IP nueva.
- Cambia el parámetro
- En cada nodo del procesador de mensajes, edita el archivo
/opt/apigee/customer/application/message-processor.properties
de la siguiente manera. Si el archivo no existe, créalo.- Cambia el parámetro
conf_zookeeper_connection.string
para incluir la dirección IP nueva. - Cambia el parámetro
conf_zookeeper_zk1.host
para incluir la dirección IP nueva.
- Cambia el parámetro
- En el nodo del servidor de administración, edita el archivo
/opt/apigee/customer/application/management-server.properties
de la siguiente manera. Si el archivo no existe, créalo.- Cambia el parámetro
conf_zookeeper_connection.string
para incluir la dirección IP nueva. - Cambia el parámetro
conf_zookeeper_zk1.host
para incluir la dirección IP nueva.
- Cambia el parámetro
- Ejecuta el siguiente comando en cada nodo para reiniciar todos los componentes de la plataforma de Apigee:
/opt/apigee/apigee-service/bin/apigee-all restart
Cómo cambiar la dirección IP de un servidor LDAP (OpenLDAP)
Para cambiar la dirección IP de un nodo OpenLDAP, haz lo siguiente:
- En el nodo del servidor de administración, edita el archivo
/opt/apigee/customer/application/management-server.properties
. Si el archivo no existe, créalo. - En el archivo
management-server.properties
, configura el parámetroconf_security_ldap.server.host
en la dirección IP nueva. - Reinicia el servidor de administración:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Cambiar la dirección IP de otros tipos de nodos de Apigee
Para cambiar la dirección IP de cualquiera de estos tipos de nodos (router, procesador de mensajes, servidor Postgres (no postgresql) y servidor Qpid (no qpidd), sigue estos pasos:
- Usa el siguiente comando de
curl
para registrar las nuevas direcciones IP interna y externa: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
En el que uuid es el UUID del nodo.
Si deseas obtener información para obtener el UUID de un componente, consulta Cómo obtener UUID.