Revierte Apigee Edge 4.52.02

Si encuentras un error durante una actualización a Edge 4.52.02, puedes revertir el componente que causó el error y, luego, intentar la actualización de nuevo.

Puedes revertir Edge 4.52.02 a las siguientes versiones de actualización principales:

  • Versión 4.52.01
  • Versión 4.52.00
  • Versión 4.51.00

El proceso de revertir una versión implica revertir cada componente que se haya actualizado. Además, de acuerdo con la versión con la que comenzaste, es posible que debas tener en cuenta consideraciones especiales antes de revertir ciertos componentes de software. La siguiente tabla incluye los distintos software para los que se pueden necesitar pasos especiales durante la reversión:

Revertir a la versión Consideración especial para el software
4.52.01 Cassandra
4.52.00 Cassandra, Zookeeper, Qpid
4.51.00 Cassandra, Zookeeper, Qpid, Postgres

Hay dos situaciones en las que es posible que desees realizar una reversión:

  1. Revierte a una versión principal o secundaria anterior. Por ejemplo, de 4.52.02 a 4.52.00.
  2. Revierte a una versión de parche anterior en la misma versión. Por ejemplo, de 4.52.00.02 a 4.52.00.01.

Para obtener más información, consulta Proceso de lanzamiento de Apigee Edge.

Orden de reversión

La reversión de los componentes debe realizarse en el orden inverso en que se actualizaron, con la excepción de los servidores de administración, que deben revertirse después de Cassandra.

Un orden general típico de reversión para la Nube privada 4.52.02 se verá de la siguiente manera:

  1. Revierte Postgres, Qpid y otros componentes relacionados con estadísticas
  2. Enrutadores de reversión y procesadores de mensajes
  3. Reversión de Cassandra, Zookeeper
  4. Servidor de administración de reversiones

Por ejemplo, supongamos que actualizaste todo el clúster de Cassandra, todos tus servidores de administración y algunas RMP a la versión 4.52.02 desde la versión 4.52.01 y deseas hacer una reversión. En este caso, debes hacer lo siguiente:

  1. Revierte todos los RMP uno por uno
  2. Revierte todo el clúster de Cassandra mediante copias de seguridad
  3. Revierte los nodos del servidor de la administración perimetral uno por uno

Quién puede realizar una reversión

El usuario que realiza la reversión debe ser el mismo que el que actualizó Edge originalmente o un usuario que se ejecuta como raíz.

De forma predeterminada, los componentes de Edge se ejecutan como el usuario “apigee”. En algunos casos, es posible que ejecutes los componentes de Edge como usuarios diferentes. Por ejemplo, si el router debe acceder a puertos con privilegios, como los inferiores a 1,000, debes ejecutar el router como raíz o como un usuario con acceso a esos puertos. También puedes ejecutar un componente como un usuario y otro como otro usuario.

Componentes con código común

Los siguientes componentes de Edge comparten código común. Por lo tanto, para revertir cualquiera de estos componentes en un nodo, debes revertir todos los componentes que se encuentran en ese nodo.

  • edge-management-server (servidor de administración)
  • edge-message-processor (Procesador de mensajes)
  • edge-router (router)
  • edge-postgres-server (servidor de Postgres)
  • edge-qpid-server (Servidor Qpid)

Por ejemplo, si tienes el servidor de administración, el router y el procesador de mensajes instalados en el nodo, para revertir cualquiera de ellos debes revertir los tres.

Reversión de Cassandra

Cuando se realiza una actualización importante de Cassandra en un nodo de Cassandra en particular, Cassandra modifica el esquema de los datos almacenados en el nodo, lo que hace que una reversión directa sea inviable. Existen dos metodologías para hacer una reversión. Usarás una de estas metodologías en función del estado de la actualización que estás revirtiendo.

Metodologías para hacer reversiones

Limpia y usa los nodos existentes en el clúster para volver a compilar el nodo.

Puedes seguir este procedimiento si aún tienes al menos un centro de datos completamente funcional en el clúster en la versión anterior de Cassandra (Cassandra 2.1.22). Si actualizaste todo el clúster de Cassandra y quieres hacer una reversión, debes seguir los pasos que se indican en Borra y restablece copias de seguridad o instantáneas de VM.

Pasos para la reversión

  1. Comienza con el nodo que deseas revertir:
    • Detén Cassandra en el nodo:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    • Desinstala el software de Cassandra del nodo:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
    • Quita el directorio de datos del nodo:
      rm -rf /opt/apigee/data/apigee-cassandra
    • Descarga y ejecuta el arranque de la versión anterior de Edge para la nube privada a la que deseas realizar una reversión.

    Ejemplo: Para revertir a 4.52.01, haz lo siguiente:

    • Descargar el arranque de 4.52.01:
      curl https://software.apigee.com/bootstrap_4.52.01.sh -o /tmp/bootstrap_4.52.01.sh -u ‘uName:pWord’
    • Ejecuta el arranque de 4.52.01:
      sudo bash /tmp/bootstrap_4.52.01.sh apigeeuser=uName apigeepassword=pWord

    • Configura Cassandra en el nodo:
      /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile
    • Para ejecutar la recompilación en el nodo, proporciona el nombre del centro de datos funcional:
      /opt/apigee/apigee-cassandra/bin/nodetool rebuild -h <node-IP> <functional-dc>
    • Repite los pasos anteriores en cada nodo que desees revertir, uno a la vez.
  2. Cuando se reviertan y vuelvan a compilar todos los nodos, haz lo siguiente:
    • Ejecuta la configuración de cualquier nodo del servidor de administración. Asegúrate de que el servidor de administración sea de la versión revertida. De lo contrario, revierte también el servidor de administración.
    • Detén el servidor de administración:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
    • Si usas la monetización, también desinstala la monetización:
      /opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
    • Desinstala management-server:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    • Descarga y ejecuta el arranque de la versión anterior. Por ejemplo, realiza los siguientes pasos para descargar y ejecutar el arranque de la versión 4.52.01:
      curl https://software.apigee.com/bootstrap_4.52.01.sh -o /tmp/bootstrap_4.52.01.sh -u ‘uName:pWord’
      sudo bash /tmp/bootstrap_4.52.01.sh apigeeuser=uName apigeepassword=pWord
    • Ejecuta la configuración de un nodo del servidor de administración:
      /opt/apigee/apigee-setup/bin/setup.sh -p mt -f configFile

Optimización después de la recompilación

En los pasos anteriores, todos los datos del nodo se transmiten desde el centro de datos remoto durante la recompilación. Puedes optimizar este proceso con una reparación una vez que todas las réplicas se hayan transmitido al centro de datos local. Esto evita la transmisión entre DC y debería ser más rápido que volver a compilar todos los nodos desde una DC remota.

Ejemplo: Supongamos que tienes seis nodos Cassandra en el centro de datos local. De forma predeterminada, el factor de replicación de Apigee es tres, por lo que cada nodo posee el 50% de los datos. En este caso, puedes volver a compilar los nodos n° 1 y n° 4 siguiendo el procedimiento anterior. Para los nodos n.o 2, 3, 5 y 6, sigue los pasos que se indican a continuación para restablecer la copia de seguridad y ejecutar una reparación.

  1. Sigue el procedimiento hasta el paso seis según se documenta para volver a compilar réplicas en el centro de datos local.
  2. Para los nodos restantes, sigue los pasos que se indican a continuación en cada nodo restante, uno a la vez.
    • Restablece la copia de seguridad que capturaste en este nodo (Nota: Es probable que esta copia de seguridad tenga datos inactivos, ya que se realizó esta copia de seguridad antes de que iniciaras la actualización de Cassandra):
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restore backup_file
    • Si tienes una instantánea de VM del nodo, puedes restablecer la instantánea en lugar de restablecer la copia de seguridad de Cassandra.
    • Después de restablecer la copia de seguridad, inicia el servicio de Cassandra en el nodo:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra start
    • Ejecuta una reparación en el nodo para que los datos más recientes se puedan transmitir desde un centro de datos existente:
      /opt/apigee/apigee-cassandra/bin/nodetool -h <node-IP> repair -dc <local-dc-name>
    • Repite los pasos del tres al seis en cada nodo que desees reparar.

Borrar y restablecer la copia de seguridad o la instantánea de VM

Este procedimiento es el único disponible si actualizaste todo el clúster de Cassandra y deseas hacer una reversión.

Además, las copias de seguridad de Apigee son específicas del nodo. No es posible restablecer una copia de seguridad de un nodo a otro. Las copias de seguridad de Cassandra incluyen información de metadatos de nodos (como dirección IP, posición de sonido, etcétera).

  1. Comienza con 1 nodo de Cassandra en el clúster:
    • Detén el servicio de Cassandra en el nodo:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    • Desinstala el software de Cassandra del nodo:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra uninstall
    • Quita el directorio de datos del nodo:
      rm -rf /opt/apigee/data/apigee-cassandra
    • Descarga y ejecuta el arranque de la versión anterior de Edge para la nube privada a la que deseas realizar una reversión.

    Ejemplo: Reversión a la versión 4.52.01

    • Descargar el arranque de 4.52.01:
      curl https://software.apigee.com/bootstrap_4.52.01.sh -o /tmp/bootstrap_4.52.01.sh -u ‘uName:pWord’
    • Ejecuta el arranque de 4.52.01:
      sudo bash /tmp/bootstrap_4.52.01.sh apigeeuser=uName apigeepassword=pWord

    • Configura Cassandra en el nodo:
      /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile
    • Restablece la copia de seguridad en el nodo con el procedimiento que se describe en Restablece desde una copia de seguridad.
    • Detén Cassandra en el nodo:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra stop
    • Borrar el directorio de datos:
      rm -rf /opt/apigee/data/apigee-cassandra/data
    • Restablecer la copia de seguridad:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restore backup_file
    • Inicia el servicio de Cassandra en el nodo:
      /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra start
    • Repite los pasos en cada nodo de Cassandra, uno a la vez.
    • Ejecuta la reparación en todos los nodos, uno a la vez:
      /opt/apigee/apigee-cassandra/bin/nodetool -h <node-IP> repair -pr

Revierte la actualización de Zookeeper 3.8.3

Si quieres revertir a las versiones 4.52.00 o 4.51.00, tendrás que consultar algunos pasos especiales antes de revertir Zookeeper. Estos pasos se enumeran en Reversión.

Si quieres revertir a la versión 4.52.01, debes revertir Zookeeper de la misma manera que lo harías con cualquier software, como se indica en la sección Cómo revertir a una versión principal o secundaria anterior a continuación.

Qpid de reversión

Si quieres revertir a las versiones 4.52.00 o 4.51.00, tendrás que consultar algunos pasos especiales antes de revertir Qpid. Estos pasos se enumeran en Reversión.

Si quieres revertir a la versión 4.52.01, revierte Qpid como lo harías con cualquier software según se indica en Cómo revertir a una versión principal o secundaria anterior.

Revierte la actualización de Postgres 10.17

Si quieres revertir a la versión 4.51.00, deberás consultar algunos pasos especiales antes de revertir Postgres. Estos pasos se enumeran en Reversión.

Si quieres revertir a la versión 4.52.01 o 4.52.00, revierte Postgres como lo harías con cualquier software, como se indica en la sección Revertir a una versión principal o secundaria anterior a continuación.

Revertir a una versión principal o secundaria anterior

Para revertir a una versión principal o secundaria anterior, haz lo siguiente en cada nodo que aloje el componente:

  1. Descarga el archivo bootstrap.sh de la versión a la que deseas revertir:

    • Para revertir a la versión 4.51.00, descarga bootstrap_4.51.00.sh:
      curl https://software.apigee.com/bootstrap_4.51.00.sh -o /tmp/bootstrap_4.51.00.sh 
  2. Detén el componente para revertirlo:
    1. Para revertir cualquiera de los componentes con código común del nodo, debes detenerlos todos, como se muestra en el siguiente ejemplo:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
       /opt/apigee/apigee-service/bin/apigee-service edge-router stop
       /opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
       /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
       /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
    2. Para revertir cualquier otro componente en el nodo, detén solo ese componente:
      • /opt/apigee/apigee-service/bin/apigee-service component stop
  3. Si quieres revertir la monetización, desinstálala de todos los nodos del servidor de administración y del procesador de mensajes:
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
  4. Desinstala el componente para revertirlo en el nodo:
    1. Para revertir cualquiera de los componentes con código común del nodo, debes desinstalarlos a todos. Para ello, desinstala el grupo de componentes edge-gateway, como se muestra en el siguiente ejemplo:
      /opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
    2. Para revertir cualquier otro componente del nodo, desinstala solo ese componente, como se muestra en el siguiente ejemplo:
      /opt/apigee/apigee-service/bin/apigee-service component uninstall

      Donde component es el nombre del componente.

    3. Para revertir el router perimetral, debes borrar el contenido del archivo /opt/nginx/conf.d además de desinstalar el grupo de componentes edge-gateway:
      cd /opt/nginx/conf.d
       rm -rf *
  5. Desinstala la versión 4.52.02 de apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
  6. Instala la versión 4.51.00 de la utilidad apigee-service y sus dependencias. En el siguiente ejemplo, se instala la versión 4.51.00 de apigee-service:
    sudo bash /tmp/bootstrap_4.51.00.sh apigeeuser=uName apigeepassword=pWord

    En el ejemplo anterior, uName y pWord son el nombre de usuario y la contraseña que recibiste de Apigee. Si omites pWord, se te solicitará que lo ingreses.

    Si recibes un error, asegúrate de haber descargado el archivo bootstrap.sh en el paso 1.

  7. Instala apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  8. Instala la versión anterior del componente:
    /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile

    En el ejemplo anterior, component es el componente que se debe instalar y configFile es el archivo de configuración de la versión anterior.

  9. Si estás revirtiendo Qpid, limpia las iptables:
    sudo iptables -F
  10. Repite este proceso con cada nodo que aloje el componente que estás revirtiendo.

Revertir a una versión de parche anterior

Para revertir un componente a una versión de parche específica, haz lo siguiente en cada nodo que aloja el componente:

  1. Descarga la versión del componente específico:
    /opt/apigee/apigee-service/bin/apigee-service component_version install

    Donde component_version es el componente y la versión de parche que se instalará. Por ejemplo:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui-4.51.05-0.0.3749 install

    Si usas el repositorio en línea de Apigee, puedes determinar las versiones de componentes disponibles con el siguiente comando:

    yum --showduplicates list comp

    Por ejemplo:

    yum --showduplicates list edge-ui
  2. Usa apigee-setup para instalar el componente:
    /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile

    Por ejemplo:

    /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile

    Ten en cuenta que solo se especifica el nombre del componente cuando lo instalas, no la versión.

  3. Repite este proceso con cada nodo que aloje el componente que estás revirtiendo.

Revierte mTLS

Para revertir la actualización de mTLS, sigue estos pasos en todos los hosts:

  1. Detén Apigee:
    apigee-all stop
  2. Detener mTLS:
    apigee-service apigee-mtls uninstall
  3. Vuelve a instalar mTLS:
    apigee-service apigee-mtls install
    apigee-service apigee-mtls setup -f /opt/silent.conf