Retirar un centro de datos

En ocasiones, es posible que debas retirar de servicio un centro de datos. Por ejemplo, si actualizas tu sistema operativo, debes instalar el nuevo sistema operativo en un centro de datos nuevo y, luego, retirar de servicio el centro de datos anterior. En las siguientes secciones, se presenta un ejemplo de retiro de servicio de un centro de datos, en el que hay dos centros de datos, dc-1 y dc-2, en un 12 nodos instalación agrupada en clústeres:

  • dc-1 es el centro de datos que se retirará.
  • dc-2 es un segundo centro de datos, que se utiliza en el procedimiento de retiro de servicio.

Si quieres actualizar tu sistema operativo, dc-2 podría ser el centro de datos en el que instalaste la nueva versión del sistema operativo (SO). Sin embargo, no es necesario instalar un SO nuevo. retirar del servicio un centro de datos.

Consideraciones antes de dar de baja un centro de datos

Ten en cuenta las siguientes consideraciones cuando desincorpores un centro de datos:

  • Bloquear todo el tráfico del entorno de ejecución y administración al centro de datos que se retirará y se redireccionará a otros centros de datos.
  • Después de retirar el centro de datos, habrás reducido la capacidad de tu clúster de Apigee. Para compensarlo, considera aumentar la capacidad en los centros de datos restantes o agregar a los centros de datos luego del retiro de servicio.
  • Durante el proceso de retiro, existe la posibilidad de que se pierdan los datos de estadísticas, según qué componentes de estadísticas se instalan en el centro de datos que se retirará. Puedes encontrar más detalles en Agregar o quitar Qpid nodos.
  • Antes de retirar un centro de datos, debería entender cómo funcionan todos los componentes se configuran en todos los centros de datos, especialmente OpenLDAP, ZooKeeper, Cassandra, como PostgreSQL y Postgres. También debes crear copias de seguridad de todos los componentes y sus parámetros de configuración.

Antes de comenzar

  • Servidor de administración: Todos los pasos del retiro de servicio dependen en gran medida del servidor de administración. Si solo tienes un servidor de administración disponible, te recomendamos que instales un nuevo componente de servidor de administración en un centro de datos que no sea dc-1 antes de retirar el servidor de administración de dc-1 y asegurarte de que uno de los servidores de administración siempre esté disponible.
  • Router: Antes de retirar un router, inhabilita la accesibilidad de los routers bloqueando el puerto 15999. Asegúrate de que no haya un entorno de ejecución el tráfico se dirige a los routers que se están retirando de servicio.
  • Cassandra y ZooKeeper: En las siguientes secciones, se describe cómo dar de baja dc-1 en una configuración de dos centros de datos. Si tienes más de dos centros de datos, asegúrate de quitar todas las referencias al nodo que se dará de baja (dc-1 en este caso) de todos los archivos de configuración silenciosos de todos los centros de datos restantes. En el caso de los nodos de Cassandra que se retirarán de servicio, descarta esos hosts de CASS_HOSTS. Los nodos de Cassandra restantes deben permanecer en el orden original de CASS_HOSTS.

  • Postgres: Si retiras la instancia principal de Postgres, asegúrate de promocionar cualquiera de nodos en espera disponibles como una nueva instancia principal de postgres. Mientras que el servidor QPID mantiene un búfer si la instancia principal de Postgres no está disponible por más tiempo, corres el riesgo de perder datos de estadísticas.

Requisitos previos

  • Antes de retirar cualquier componente, te recomendamos que crees una copia de seguridad completa de todos nodos. Usa el procedimiento de tu versión actual de Edge para realizar la crear una copia de seguridad de su contenido. Para obtener más información sobre las copias de seguridad, consulta Copia de seguridad y restablecimiento.

    Nota: Si tienes varios nodos Cassandra o ZooKeeper, crea una copia de seguridad de a uno por vez. ya que el proceso de copia de seguridad cierra ZooKeeper temporalmente.

  • Asegúrate de que Edge esté funcionando antes del retiro con el siguiente comando:
    /opt/apigee/apigee-service/bin/apigee-all status
  • Asegúrate de que no haya tráfico del tiempo de ejecución al centro de datos que estás fuera de servicio.

Orden de los componentes del retiro de servicio

Si instalas Edge para la nube privada en varios nodos, deberás retirarlos Los componentes de Edge en esos nodos en el siguiente orden:

  1. IU de Edge (edge-ui)
  2. Servidor de administración (servidor de administración perimetral)
  3. OpenLDAP (apigee-openldap)
  4. Router (router de borde)
  5. Message Processor (edge-message-processor)
  6. Qpid Server y Qpidd (edge-qpid-server y apigee-qpidd)
  7. Base de datos de Postgres y PostgreSQL (edge-postgres-server y apigee-postgresql)
  8. ZooKeeper (apigee-zookeeper)
  9. Cassandra (apigee-cassandra)

En las siguientes secciones, se explica cómo retirar cada componente.

IU de Edge

Para detener y desinstalar el componente de IU de Edge de dc-1, ingresa los siguientes comandos:

/opt/apigee/apigee-service/bin/apigee-service edge-ui stop
/opt/apigee/apigee-service/bin/apigee-service edge-ui uninstall

Servidor de administración

Para retirar el servidor de administración en dc-1, sigue estos pasos:

  1. Detén el servidor de administración en dc-1:
    apigee-service edge-management-server stop
  2. Busca el UUID del servidor de administración registrado en dc-1:
    curl -u <AdminEmailID>:'<AdminPassword>' \
    -X GET “http://{MS_IP}:8080/v1/servers?pod=central&region=dc-1&type=management-server”
  3. Anula el registro del tipo de servidor:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
    -d "type=management-server&region=dc-1&pod=central&uuid=UUID&action=remove"
  4. Borra el servidor. Nota: Si también hay otros componentes instalados en este servidor, anula su registro a todos antes de borrar el UUID.
    curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/{UUID}
  5. Desinstala el componente del servidor de administración en dc-1:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server uninstall

Abrir LDAP

En esta sección, se explica cómo retirar OpenLDAP en dc-1.

Nota: Si tienes más de dos centros de datos, consulta la siguiente información: Configuraciones con más de dos centros de datos a continuación.

Para retirar OpenLDAP en dc-1, sigue estos pasos:

  1. Crea una copia de seguridad del nodo OpenLDAP dc-1 siguiendo los pasos que se indican en Cómo crear una copia de seguridad.
  2. Divide la replicación de datos entre los dos centros de datos, dc-1 y dc-2, de la siguiente manera: ejecutando los siguientes pasos en ambos centros de datos.

    1. Verifica el estado actual:
      ldapsearch -H ldap://{HOST}:{PORT} -LLL -x -b "cn=config" -D "cn=admin,cn=config" -w {credentials} -o ldif-wrap=no 'olcSyncRepl' | grep olcSyncrepl

      El resultado debería ser similar al siguiente:

      olcSyncrepl: {0}rid=001 provider=ldap://{HOST}:{PORT}/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials={credentials} searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1

    2. Crea un archivo break_repl.ldif que contenga los siguientes comandos:
      dn: olcDatabase={2}bdb,cn=config
      changetype: modify
      delete: olcSyncRepl
      
      dn: olcDatabase={2}bdb,cn=config
      changetype: modify
      delete: olcMirrorMode
    3. Ejecuta el comando ldapmodify:
      ldapmodify -x -w {credentials} -D "cn=admin,cn=config" -H "ldap://{HOST}:{PORT}/" -f path/to/file/break_repl.ldif

      El resultado debería ser similar al siguiente:

      modifying entry "olcDatabase={2}bdb,cn=config"
      modifying entry "olcDatabase={2}bdb,cn=config"

  3. Puedes verificar que dc-2 ya no se replique a dc-1 creando una entrada en el LDAP de dc-2 y se asegura de que no aparezca en el LDAP de dc-1.

    De manera opcional, puedes seguir los pasos que se indican a continuación, que crean un usuario de solo lectura en dc-2 Nodo de OpenLDAP y, luego, comprobar si el usuario está replicado o no. Posteriormente, se le asigna al usuario borrar.

    1. Crea un archivo readonly-user.ldif en dc-2 con el siguiente contenido:
      dn: uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com
      objectClass: organizationalPerson
      objectClass: person
      objectClass: inetOrgPerson
      objectClass: top
      cn: readonly-user
      sn: readonly-user
      userPassword: {testPassword}
    2. Agrega el usuario con el comando "ldapadd" en dc-2:
      ldapadd -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" -f path/to/file/readonly-user.ldif

      El resultado será similar a este:

      adding new entry "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"

    3. Busca al usuario en dc-1 para asegurarte de que no se haya replicado. Si el usuario no está presente en dc-1, te asegurarás de que ambos LDAP ya no se repliquen:
      ldapsearch -H ldap://{HOST}:{PORT} -x -w {credentials} -D "cn=manager,dc=apigee,dc=com" -b uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com -LLL

      El resultado debería ser similar al siguiente ejemplo:

      No such object (32)
      Matched DN: ou=users,ou=global,dc=apigee,dc=com
    4. Quita el usuario con acceso de lectura que agregaste anteriormente:
      ldapdelete -v -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"
  4. Detén OpenLDAP en dc-1:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
  5. Desinstala el componente de OpenLDAP en dc-1:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap uninstall

Router

En esta sección, se explica cómo retirar un router. Consulta Quita un servidor para obtener más detalles sobre cómo quitar el router.

Los siguientes pasos dan de baja el router de dc-1. Si hay varios nodos de router configurados en dc-1, realiza los pasos en todos los nodos del router. de a una por vez

Nota: Aquí se da por sentado que el puerto de verificación de estado 15999 del router está configurado en tu balanceador de cargas y que el puerto bloqueador 15999 haga que el router sea inaccesible. Es posible que necesites acceso con permisos de administrador para bloquear el puerto.

Sigue estos pasos para retirar un router:

  1. Inhabilita la accesibilidad de los routers bloqueando el puerto 15999, el puerto de verificación de estado. Asegúrate de que el tráfico del entorno de ejecución esté bloqueado en este centro de datos:

    iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
  2. Verifica que se pueda acceder al router:

    curl -vvv -X GET http://{ROUTER_IP}:15999/v1/servers/self/reachable

    El resultado debería ser similar al siguiente:

    About to connect() to 10.126.0.160 port 15999 (#0)
    Trying 10.126.0.160...
    Connection refused
    Failed connect to 10.126.0.160:15999; Connection refused
    Closing connection 0
    curl: (7) Failed connect to 10.126.0.160:15999; Connection refused

  3. Obtén el UUID del router, como se describe en Obtén los UUID.
  4. Detén el router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router stop
  5. Para obtener una lista de los Pods de puerta de enlace disponibles en la organización, usa el siguiente comando:
    curl -u  <AdminEmailID>:<AdminPassword> -X GET "http://{MS_IP}:8080/v1/organizations/{ORG}/pods"

    Consulta Acerca de los Pods.

  6. Anula el registro del tipo de servidor:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
    -d "type=router&amp;region=dc-1&amp;pod=gateway-1&amp;uuid=UUID&amp;action=remove"
  7. Borra el servidor:
    curl -u <AdminEmailID>:'<AdminPassword>’ -X DELETE http://{MS_IP}:8080/v1/servers/UUID
  8. Desinstala edge-router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router uninstall
    Consulta Quita un servidor.
  9. Limpia las reglas de iptables para habilitar el puerto 15999 bloqueado:
    iptables -F

Message Processor

En esta sección, se describe cómo dar de baja el procesador de mensajes de dc-1. Consulta Quita un servidor para obtener más detalles sobre cómo quitar el Message Processor.

Como suponemos que dc-1 tiene un valor 12 nodos o en clústeres, hay dos nodos de Message Processor configurados en dc-1. Realiza el los siguientes comandos en ambos nodos.

  1. Obtén los UUID de los procesadores de mensajes, como se describe en Obtén los UUID.
  2. Detén Message Processor:
    apigee-service edge-message-processor stop
  3. Anula el registro del tipo de servidor:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers  \
    -d "type=message-processor&amp;region=dc-1&amp;pod=gateway-1&amp;uuid=UUID&amp;action=remove"/pre>
  4. Disassociate an environment from the Message Processor.

    Note: You need to remove the bindings on each org/env that associates the Message Processor UUID.

    curl -H "Content-Type:application/x-www-form-urlencoded" -u <AdminEmailID>:''  \
    -X POST http://{MS_IP}:8080/v1/organizations/{ORG}/environments/{ENV}/servers \
    -d "action=remove&uuid=UUID"
  5. Anula el registro del tipo de servidor:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MS_IP:8080/v1/servers -d "type=message-processor&region=dc-1&pod=gateway-1&uuid=UUID&action=remove"
  6. Desinstala el procesador de mensajes:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor uninstall
  7. Anula el registro del servidor:
    curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/UUID

Servidor Qpid y Qpidd

En esta sección, se explica cómo dar de baja el servidor Qpid (edge-qpid-server) y Qpidd (apigee-qpidd). Existen dos nodos Qpid configurados en dc-1, por lo que debes seguir los pasos que se indican a continuación para ambos nudos:

  1. Obtén el UUID de Qpidd, como se describe en Obtén UUIDs.
  2. Detén edge-qpid-server y apigee-qpidd:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
    /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
  3. Obtén una lista de los grupos de consumidores y de Analytics:
    curl -u <AdminEmailID>:'<AdminPassword>' -X GET http://{MS_IP}:8080/v1/analytics/groups/ax
  4. Quita Qpid del grupo de consumidores:
    curl -u <AdminEmailID>:'<AdminPassword>' -H "Content-Type: application/json"  -X DELETE \ "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/consumer-groups/{consumer_group}/consumers/{QPID_UUID}"
  5. Quita el Qpid del grupo de estadísticas:
    curl -v -u <AdminEmailID>:'<AdminPassword>' \
    -X DELETE "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/servers?uuid={QPID_UUID}&type=qpid-server"
  6. Cancela el registro del servidor Qpid de la instalación de Edge:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
    -d "type=qpid-server&region=dc-1&pod=central&uuid={QPID_UUID}&action=remove"
  7. Quita el servidor Qpid de la instalación de Edge:
    curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
  8. Reinicia todos los componentes de Edge-qpid-server en todos los nodos para asegurarte de que se detecte el cambio. por esos componentes:
    $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server wait_for_ready
  9. Desinstale Edge-qpid-server y apigee-qpidd:
    $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall
    $ /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall

Postgres y Postgresql

El centro de datos que retirarás podría tener una instancia principal de Postgres o una instancia de reserva de Postgres. En las siguientes secciones, se explica cómo retirarlas:

Retiro de servicio principal de Postgres

Nota: Si retiras la instancia principal de Postgres, asegúrate de ascender cualquiera de las nodos en espera disponibles como una nueva instancia principal de postgres. Mientras que las colas de QPID almacenan datos, Si la instancia principal de Postgres no está disponible por mucho tiempo, corres el riesgo de perder los datos de estadísticas.

Para retirar la instancia principal de Postgres, sigue estos pasos:

  1. Sigue las instrucciones en los siguientes vínculos para crear una copia de seguridad del nodo principal de Postgres de dc-1:
  2. Obtén los UUID de los servidores de Postgres, como se describe en Obtén los UUID.
  3. En dc-1, detén edge-postgres-server y apigee-postgresql en la instancia principal actual:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  4. En el nodo en espera de dc-2, ingresa el siguiente comando para convertirlo en el nodo principal:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql promote-standby-to-master <IP of OLD Progress master>

    Nota: Si tienes más de un nodo Postgres en espera, debes agregar entradas de host en la instancia principal nueva y actualizará la configuración de replicación de todos los nodos en espera de postgres disponibles.

    Para agregar entradas de host a la nueva instancia principal de Postgres, sigue los pasos de la sección correspondiente a continuación:

    Si solo queda un nodo en espera

    Por ejemplo, supongamos que antes del retiro de servicio hay tres nodos de Postgres configurados. Retiraste el servicio de la instancia principal existente y ascendiste uno de los recursos en espera de postgres restantes nodos a la instancia principal. Configura el nodo en espera restante con los siguientes pasos:

    1. En la nueva instancia principal, edita la configuración. para configurar:
      PG_MASTER=IP_or_DNS_of_new_PG_MASTER
      PG_STANDBY=IP_or_DNS_of_PG_STANDBY
    2. Habilita la replicación en la instancia principal nueva:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFIle

    Si queda más de un nodo de reserva

    1. Agrega la siguiente configuración en /opt/apigee/customer/application/postgresql.properties
      conf_pg_hba_replication.connection=host replication apigee standby_1_ip/32 trust \n host replication apigee standby_2_ip/32 trust
    2. Asegúrate de que el archivo /opt/apigee/customer/application/postgresql.properties sea propiedad de Usuario de Apigee:
            chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
    3. Reinicia apigee-postgresql:
      apigee-service apigee-postgresql restart
    4. Para actualizar la configuración de la replicación en un nodo en espera, haz lo siguiente:

      1. Modifica el archivo de configuración /opt/silent.conf y actualízalo El campo PG_MASTER con la dirección IP de la nueva instancia principal de Postgres
      2. Quita los datos antiguos de Postgres con el siguiente comando:
        rm -rf /opt/apigee/data/apigee-postgresql/
      3. Configura la replicación en el nodo de reserva:
        /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
    5. Ingresa el siguiente comando en dc-2 para verificar que el maestro de Postgres esté configurado correctamente:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
    6. Quita y agrega los servidores Postgresql del grupo de estadísticas y del grupo de consumidores.
      1. Quita el servidor de Postgres anterior del grupo de estadísticas según las instrucciones que se indican en Quita un servidor de Postgres de un grupo de estadísticas.
      2. Agrega un nuevo servidor Postgres al grupo de estadísticas siguiendo las instrucciones que se indican en Agrega un servidor Postgres existente a un grupo de estadísticas.
    7. Cancela el registro del servidor postgres anterior de dc-1:
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
      -d "type=postgres-server&region=dc-1&pod=analytics&uuid=UUID&action=remove"<
    8. Borra el servidor de postgres anterior de dc-1:
      curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
    9. Ya es seguro retirar del servicio la antigua instancia principal de Postgres. Desinstalar edge-postgres-server y apigee-postgresql:
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall

    Retiro de servicio en espera de Postgres

    Nota: La documentación para un 12 nodos la instalación en clústeres muestra el nodo de postgresql dc-1 como principal pero, para mayor comodidad, en esta sección se supone que el nodo postgresql dc-1 está en espera y el nodo dc-2 postgresql es principal.

    Para retirar el servicio en espera de Postgres, sigue estos pasos:

    1. Obtén los UUIDs de los servidores de Postgres siguiendo las instrucciones que se indican en Obtén UUIDs.
    2. Detén apigee-postgresql en el nodo en espera actual en dc-1:
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
    3. Quita y agrega los servidores Postgresql del grupo de estadísticas y del grupo de consumidores.
      1. Quita el servidor de Postgres anterior del grupo de estadísticas según las instrucciones que se indican en Quita un servidor de Postgres de un grupo de estadísticas.
      2. Agrega un nuevo servidor de postgres al grupo de estadísticas según las instrucciones que se indican en Agrega un servidor de Postgres existente a un grupo de estadísticas.
    4. Cancela el registro del servidor postgres anterior de dc-1:
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
      -d "type=postgres-server&region=dc-1&pod=analytics&uuid=UUID&action=remove"<
    5. Borra el servidor de postgres anterior de dc-1:
      curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
    6. Ya es seguro retirar del servicio la antigua instancia principal de Postgres. Desinstala edge-postgres-server y apigee-postgresql:
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall

    ZooKeeper y Cassandra

    En esta sección, se explica cómo retirar los servidores de ZooKeeper y Cassandra en una configuración de dos centros de datos.

    Si tienes más de dos de datos, asegúrate de quitar todas las referencias al nodo que dejará de estar disponible (dc-1 en este caso) de todos los archivos de configuración silenciosos de todos los centros de datos restantes. En el caso de los nodos de Cassandra que se retirarán de servicio, descarta esos hosts de CASS_HOSTS. Los nodos de Cassandra restantes deben permanecer en el orden original de CASS_HOSTS.

    Nota sobre ZooKeeper: Debe mantener un quórum de nodos votantes al modificar el Propiedad ZK_HOST en el archivo de configuración para garantizar que el ensamble de ZooKeeper siga funcionando. Debes tener un número impar de nodos votantes en tu configuración. Para obtener más información, consulta Mantenimiento de Apache ZooKeeper tareas.

    Para retirar los servidores de ZooKeeper y Cassandra, haz lo siguiente:

    1. Crea una copia de seguridad de los nodos de dc-1 Cassandra y ZooKeeper. Para ello, sigue las instrucciones de los siguientes vínculos:
    2. Enumera los UUID de ZooKeeper y Cassandra en el centro de datos donde los nodos de Cassandra están retirarse de servicio.

      apigee-adminapi.sh servers list -r dc-1 -p central -t application-datastore --admin <AdminEmailID> --pwd '<AdminPassword>' --host localhost
    3. Anula el registro del tipo de servidor:
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MS_IP:8080/v1/servers -d "type=cache-datastore&type=user-settings-datastore&type=scheduler-datastore&type=audit-datastore&type=apimodel-datastore&type=application-datastore&type=edgenotification-datastore&type=identityzone-datastore&type=user-settings-datastore&type=auth-datastore&region=dc-1&pod=central&uuid=UUID&action=remove"
    4. Cancela el registro del servidor:
      curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
    5. Actualiza el archivo de configuración sin las IP de los nodos retirados de ZK_HOSTS y CASS_HOSTS.

      Ejemplo: Supongamos que tienes las IP $IP1 $IP2 $IP3 en dc-1 y $IP4 $IP5 $IP6. en dc-2 y están retirando de servicio dc-1. Luego, quita las IP $IP1 $IP2 $IP3 del de configuración de Terraform.

      • Entradas del archivo de configuración existente:
        ZK_HOSTS="$IP1 $IP2 $IP3 $IP4 $IP5 $IP6"
        CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1, $IP4:2,1 $IP5:2,1 $IP6:2,1”
      • Nuevas entradas del archivo de configuración:
        ZK_HOSTS="$IP4 $IP5 $IP6"
        CASS_HOSTS="$IP4:2,1 $IP5:2,1 $IP6:2,1"
    6. Actualiza el archivo de configuración silencioso (modificado en el paso e) con las IP del de servicio y ejecutar el panel de administración en todos los nodos que alojan servidores de administración:
      /opt/apigee/apigee-setup/bin/setup.sh -p ms -f updated_config_file
    7. Actualiza el archivo de configuración con las IP de los nodos retirados de servicio que se quitaron y ejecuta el perfil MP/RMP en todos los nodos del router y del procesador de mensajes:
      • Si el router perimetral y el procesador de mensajes están configurados en el mismo nodo, ingresa lo siguiente:
        /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f updated_config_file
      • Si el router perimetral y el procesador de mensajes están configurados en nodos separados, ingresa lo siguiente:

        Para el router:

        /opt/apigee/apigee-setup/bin/setup.sh -p r -f updated_config_file

        Para el procesador de mensajes:

        /opt/apigee/apigee-setup/bin/setup.sh -p mp -f updated_config_file
    8. Vuelve a configurar todos los nodos de Qpid, con las IP de los nodos dados de baja quitadas del archivo de respuesta:
      /opt/apigee/apigee-setup/bin/setup.sh -p qs -f updated_config_file
    9. Vuelve a configurar todos los nodos de Postgres, con las IP de los nodos retirados que se quitaron del archivo de respuesta:
      /opt/apigee/apigee-setup/bin/setup.sh -p ps -f updated_config_file
    10. Modificar el espacio de teclas system_auth. Si tienes la autenticación de Cassandra habilitada en un nodo de Cassandra existente, ejecuta el siguiente comando para actualizar el factor de replicación del espacio de claves system_auth:
      ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-2': '3'};

      Este comando establece el factor de replicación en '3', lo que indica que hay tres nodos de Cassandra. en el clúster. Modifica este valor según sea necesario.

      Después de completar este paso, la topología de Cassandra no debería tener dc-1 en ninguno de los espacios de claves.

    11. Inhabilita los nodos de Cassandra en dc-1, uno por uno.

      Para retirar los nodos de Cassandra, ingresa el siguiente comando:

      /opt/apigee/apigee-cassandra/bin/nodetool -h cassIP -u cassandra -pw '<AdminPassword>' decommission

    12. Comprueba la conexión de los nodos de Cassandra desde dc-1 mediante uno de los siguientes comandos:
      /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p '<AdminPassword>'

      O el comando de verificación secundario que se ejecutará en el nodo retirado de servicio:

      /opt/apigee/apigee-cassandra/bin/nodetool netstats

      El comando anterior debería mostrar lo siguiente:

      Mode: DECOMMISSIONED

    13. Ejecuta el perfil de DS para todos los nodos de Cassandra y ZooKeeper en dc-2:
      /opt/apigee/apigee-setup/bin/setup.sh -p ds -f updated_config_file
    14. Detén apigee-cassandra y apigee-zookeeper en dc-1:
      apigee-service apigee-cassandra stop
      apigee-service apigee-zookeeper stop
    15. Desinstala apigee-cassandra y apigee-zookeeper en dc-1:
      apigee-service apigee-cassandra uninstall
      apigee-service apigee-zookeeper uninstall

    Borra las vinculaciones de dc-1

    Para borrar las vinculaciones de dc-1, sigue estos pasos:

    1. Borra las vinculaciones de dc-1.
      1. Obtén una lista de todos los Pods disponibles en la organización:
        curl -v -u  <AdminEmailID>:<AdminPassword> -X GET "http://MS_IP:8080/v1/o/ORG/pods"
      2. Para comprobar si se quitaron todas las vinculaciones, obtén el UUID de los servidores asociados a los Pods:
        curl -v -u  <AdminEmailID>:<AdminPassword> \
        -X GET "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1/servers"

        Si este comando no muestra ningún UUID, significa que los pasos anteriores quitaron todas las vinculaciones. y puedes omitir el siguiente paso. De lo contrario, realiza el siguiente paso.

      3. Quita todas las vinculaciones del servidor para los UUID obtenidos en el paso anterior:
        curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
      4. Desasocia la organización del Pod:
        curl -v -u  <AdminEmailID>:<AdminPassword>  "http://MS_IP:8080/v1/o/ORG/pods" -d "action=remove&region=dc-1&pod=gateway-1" -H "Content-Type: application/x-www-form-urlencoded" -X POST
    2. Borra los Pods:
      curl -v -u <AdminEmailID>:<AdminPassword> "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1" -X DELETE
    3. Borra la región.
      curl -v -u <AdminEmailID>:<AdminPassword>  "http://MS_IP:8080/v1/regions/dc-1" -X DELETE

    Nota: Si omites uno de los pasos para borrar los servidores, el paso anterior mostrará un mensaje de error que indica que un servidor en particular del pod aún existe. Por lo tanto, bórralas siguiendo los pasos para solucionar problemas. a continuación, mientras personalizas los tipos en el comando curl.

    En este punto, completaste el retiro de servicio de dc-1.

    Apéndice

    Solución de problemas

    Si aún hay servidores en algunos Pods después de realizar los pasos anteriores, sigue estos pasos: para anular el registro y borrar los servidores. Nota: Cambie los tipos y los pods según sea necesario.

    1. Obtén los UUID con el siguiente comando:
      apigee-adminapi.sh servers list -r dc-1 -p POD -t  --admin <AdminEmailID> --pwd  '<AdminPassword>’ --host localhost
    2. Tipo de servidor que se cancelará el registro:
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MP_IP:8080/v1/servers -d "type=TYPE=REGION=dc-1&pod=POD&uuid=UUID&action=remove"
    3. Borra los servidores uno por uno:
      curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MP_IP:8080/v1/servers/UUID

    Validación

    Puedes validar el retiro de servicio mediante los siguientes comandos.

    Servidor de administración

    Ejecuta los siguientes comandos desde los servidores de administración en todas las regiones.

    curl -v  -u  <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=central&region=dc-1
    curl -v  -u  <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=gateway&region=dc-1
    curl -v -u  <AdminEmailID>:'<AdminPassword>'  http://MS_IP:8080/v1/servers?pod=analytics&region=dc-1

    Ejecuta el siguiente comando en todos los componentes para comprobar los requisitos de puertos de toda la administración. y puertos.

    curl -v http://MS_IP:8080/v1/servers/self

    Verifica el grupo de estadísticas.

    curl  -v  -u  <AdminEmailID>:'<AdminPassword>' "http://MS_IP:8080}/v1/o/ORG/e/ENV/provisioning/axstatus"
    curl -v  -u  <AdminEmailID>:'<AdminPassword>'  http://MS_IP:8080/v1/analytics/groups/ax

    Nodos de Cassandra y ZooKeeper

    En todos los nodos de Cassandra, ingresa lo siguiente:

    /opt/apigee/apigee-cassandra/bin/nodetool -h <host> statusthrift

    Se mostrará el estado running o not running para ese estado .

    En un nodo, ingresa:

    /opt/apigee/apigee-cassandra/bin/nodetool -h <host> ring
    /opt/apigee/apigee-cassandra/bin/nodetool -h <host> status

    Los comandos anteriores mostrarán información sobre el centro de datos activo.

    En los nodos de ZooKeeper, ingresa primero lo siguiente:

    echo ruok | nc <host> 2181

    Este comando mostrará imok.

    Luego, ingresa lo siguiente:

    echo stat | nc <host> 2181 | grep Mode

    El valor de Mode que muestra el comando anterior será uno de los siguientes: observer, leader o follower.

    En un nodo de ZooKeeper:

    /opt/apigee/apigee-zookeeper/contrib/zk-tree.sh >> /tmp/zk-tree.out.txt

    En el nodo principal de Postgres, ejecuta lo siguiente:

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    Valida que la respuesta indique que el nodo es el nodo principal.

    En el nodo en espera:

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

    Valida que la respuesta indique que el nodo está en espera.

    Accede a la base de datos de PostgreSQL con el comando

    psql -h localhost -d apigee -U postgres

    Cuando se te solicite, ingresa la contraseña del usuario "postgres" como 'postgres'. Selecciona max(client_received_start_timestamp) en Analytics.

    ”$org.$env.fact” limit 1;

    Registros

    Revisa los registros de los componentes para asegurarte de que no haya errores.