Trasladar servidores de Apigee

Edge para la nube privada v4.19.01

Mover componentes de una máquina a otra puede causar una incompatibilidad de configuración si no mantienes sincronizadas las direcciones IP en los archivos de configuración de los componentes.

En esta sección, se describe cómo diagnosticar y corregir errores de configuración.

Diferencias entre las direcciones IP y los 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, usar 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.

Como resultado, Apigee recomienda usar direcciones IP para todas las configuraciones de componentes. En algunos casos, como con Cassandra, debes usar direcciones IP y no puedes usar nombres de host. En la mayoría de los ejemplos de la documentación, se usan direcciones IP para la configuración de componentes.

Para los nombres de host y las direcciones IP, ten en cuenta las implicaciones de las siguientes situaciones cuando traslades servidores de Apigee:

Situación Impacto en el movimiento de servidores
Cambio en la dirección IP Actualizar todos los archivos relacionados que hacen referencia a la dirección IP original
Cambio de nombre de host sin cambios en la dirección IP Sin efecto
Cambio de nombre de host con cambio en la 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 la configuración con un solo nodo de Cassandra

  1. Edita /opt/apigee/customer/application/cassandra.properties en el sistema que se está modificando. Si el archivo no existe, créalo.
  2. Cambia los siguientes parámetros:
    • Configura los parámetros conf_cassandra_seeds y conf_cassandra_listen_address para especificar la nueva dirección IP del sistema.
    • Cambia conf_cassandra_rpc_address para usar la nueva dirección IP o 0.0.0.0 (lo que permite que Cassandra Thrift escuche en todas las interfaces).
  3. 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 siguiente formato:
    192.168.56.101=dc-1:ra-1
    default=dc-1:ra-1

    Guarda esa información.

  4. Edita /opt/apigee/customer/application/cassandra.properties para cambiar la dirección IP anterior especificada por la nueva dirección IP:
    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 especificar la misma configuración predeterminada que la del Paso 3.

  5. Reinicia Cassandra:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. Si es necesario, también repara ZooKeeper (consulta a continuación). De lo contrario, reinicia cada componente de la plataforma de Apigee a partir del servidor de administración.

Para parámetros de configuración con varios nodos de Cassandra (anillo)

  1. Si el nodo que se cambiará es un nodo de origen, edita el archivo /opt/apigee/customer/application/cassandra.properties en cada sistema del anillo y cambia el parámetro conf_cassandra_seeds para incluir la IP nueva del sistema modificado. Si el archivo cassandra.properties no existe, créalo.
  2. 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 nueva dirección IP o "0.0.0.0" (que permite que Cassandra Thrift escuche en todas las interfaces).
  3. Abre /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties en un editor. Deberías ver todas las direcciones IP y la configuración predeterminada de Cassandra 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.

  4. Edita /opt/apigee/customer/application/cassandra.properties para cambiar la dirección IP anterior especificada por la nueva dirección 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

    Asegúrate de insertar “\n” después de cada dirección IP y de usar la misma configuración predeterminada que registraste antes en el paso 3.

  5. Reinicia Cassandra en el sistema modificado. Si el sistema modificado es un nodo de origen, también reinicia cada sistema que usó el nodo de origen modificado.
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. Ejecuta el comando nodetool ring en el nodo modificado para asegurarte de que el anillo esté completo. La utilidad se encuentra en /opt/apigee/apigee-cassandra/bin.
    nodetool [-u username -pw password] -h localhost ring

    Solo tienes que pasar tu nombre de usuario y contraseña si habilitaste la autenticación JMX para Cassandra.

  7. Ejecuta nodetool repair en el nodo modificado. Ten en cuenta que este proceso puede tardar un poco, por lo que se recomienda no hacerlo durante las horas de mayor tráfico de la API.
    nodetool [-u username -pw password] -h localhost repair -pr
  8. Si es necesario, repara ZooKeeper (consulta a continuación) y, luego, reinicia todos los componentes de la plataforma de Apigee, comenzando por el servidor de administración.

Actualiza los registros del almacén de datos

  1. 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&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]'

      En el ejemplo anterior, DC es el nombre del centro de datos. En una única instalación de centro de datos, el valor suele ser "dc-1".

  2. Registra las nuevas direcciones IP con uno de los siguientes comandos. El comando necesario dependerá del tipo de nodo modificado.
    • Para 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
    • 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&region=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&region=REGION&pod=analytics" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST 
  3. Borra los registros anteriores del UUID del sistema en el que se cambió la dirección IP. Para cada uno de estos problemas de UUID:
    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 ZooKeeper (solo para configuraciones de ensamble de varios nodos).

  1. 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 con 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.

  2. En cada nodo de ZooKeeper, edita el archivo /opt/apigee/customer/application/zookeeper.properties para establecer la propiedad conf_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.

  3. Encuentra el líder del ensamble ZooKeeper usando 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 debería decir "líder".

  4. Reinicia un ZooKeeper después del otro comenzando con el líder y terminando con el nodo en el que se cambió la dirección IP. Si más de un nodo de Zookeeper cambió las direcciones IP, es posible que sea necesario reiniciar todos los nodos.
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
  5. Usa el comando echo que se describió anteriormente para verificar cada nodo de ZooKeeper.

Informa a los nodos de Apigee sobre la configuración modificada

  1. En cada nodo de Router, edita el archivo /opt/apigee/customer/application/router.properties como se indica a continuación. 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.
  2. En cada nodo de Message Processor, edita el archivo /opt/apigee/customer/application/message-processor.properties como se indica a continuación. 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.
  3. En el nodo del servidor de administración, edita el archivo /opt/apigee/customer/application/management-server.properties como se indica a continuación. 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.
  4. 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

Cambiar la dirección IP de un servidor LDAP (OpenLDAP)

Para cambiar la dirección IP de un nodo de OpenLDAP, haz lo siguiente:

  1. 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.
  2. En el archivo management-server.properties, configura el parámetro conf_security_ldap.server.host como la dirección IP nueva.
  3. Reinicia el servidor de administración:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

Cambia 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 de Qpid (no qpidd):

  1. Usa el siguiente comando de curl para registrar la nueva dirección 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 ejemplo anterior, uuid es el UUID del nodo.

Si quieres saber cómo obtener el UUID de un componente, consulta Obtén UUID.