Edge para la nube privada v. 4.17.01
En caso de que se produzca un error durante una actualización a Edge 4.17.01, puedes revertir el componente que causó el error y, luego, intentar la actualización de nuevo. Por ejemplo, si la actualización a Postgres 9.4 falla, puedes revertir solo los nodos de Postgres y volver a intentar la actualización.
Hay dos situaciones en las que es posible que desees realizar una reversión:
- Revertir a una versión anterior Por ejemplo, de 4.17.01 a 4.16.09.
- Revertir a una versión anterior en el mismo lanzamiento
Usa el procedimiento a continuación para realizar una reversión en ambas situaciones.
Quién puede realizar la reversión
El usuario que realiza la reversión debe ser el mismo que el que actualizó Edge originalmente o un usuario que ejecuta la versión raíz.
De forma predeterminada, los componentes de Edge se ejecutan como el usuario “apigee”. En algunos casos, es posible que ejecutes componentes de Edge como usuarios diferentes. Por ejemplo, si el router tiene que acceder a puertos privilegiados, como los inferiores a 1,000, debes ejecutar el router como raíz o como un usuario con acceso a esos puertos. O bien, puedes ejecutar un componente como un usuario y otro componente como otro usuario.
Qué componentes se pueden revertir
Cuando realices una reversión, debes tener en cuenta las siguientes condiciones:
- Los cinco componentes de Edge enumerados a continuación comparten código común. Por lo tanto, para revertir cualquiera de los cinco componentes de un nodo, debes revertir cualquiera de los cinco instalados en el nodo. Por ejemplo, si tienes el servidor de administración, el router y el procesador de mensajes instalados en el nodo, debes revertir los tres para revertir cualquiera de ellos.
Los cinco componentes que comparten código son los siguientes:- Servidor de administración
- Router
- Procesador de mensajes
- Servidor Qpid
- Servidor Postgres
- Si actualizas desde Edge 4.16.01, no reviertas Cassandra. Esta versión de Edge contiene una versión actualizada de Cassandra. Si reviertes algún componente, deja Cassandra en la versión 4.17.01.
Revirtiendo 4.17.01
En esta sección, se incluye el procedimiento para revertir Edge 4.17.01 a una versión anterior. Esta sección se divide en dos partes:
- Si solo actualizas desde las versiones 4.16.01 o 4.16.05, revierte la actualización de Postgres a la versión 9.4
La parte final de cada procedimiento de actualización de las versiones 4.16.01 o 4.16.05 es actualizar los nodos de Postgres a la versión 9.4. Si esa actualización falla, puedes usar este procedimiento para revertirla. - Revierte todos los demás componentes de Edge
Usa este procedimiento para revertir cualquier otro componente de Edge.
Cómo revertir la actualización de Postgres 9.4
Para revertir la actualización de Postgres cuando se actualiza Postgres en una configuración de instancia principal en espera, debes hacer lo siguiente:
- Asciende el nuevo nodo en espera para que se convierta en la instancia principal de Postgres. La nueva instancia principal de Postgres será la misma versión que la instalación de Edge anterior.
- Configura el nodo en espera anterior para que sea un nodo en espera de la instancia principal nueva. El nodo en espera anterior será la misma versión que la instalación anterior de Edge.
- Registra los nuevos nodos principal y en espera con los grupos de consumidores y de estadísticas.
Cuando finalice la reversión, el nodo principal anterior ya no será necesario. Luego, puedes retirar el nodo principal anterior.
- Asegúrate de que el nuevo nodo Postgres en espera se esté ejecutando:
> /opt/apigee/apigee-service/bin/apigee-all status
Si Postgres no se está ejecutando, inícialo:
> /opt/apigee/apigee-service/bin/apigee-all start - Asegúrate de que Postgres esté detenido en el nodo principal anterior y en el nodo en espera anterior:
> /opt/apigee/apigee-service/bin/apigee-all status
Si Postgres se está ejecutando, deténlo:
> /opt/apigee/apigee-service/bin/apigee-service perimetral-postgres-server stop
> /opt/apigee/apigee-service/bin/ - Si está instalado, inicia Qpid en el nodo en espera anterior:
> /opt/apigee/apigee-service/bin/apigee-service perimetral-qpid-server start
Nota: En muchas configuraciones, el nodo en espera anterior solo alojará Postgres, pero no Qpid. - Promueve el nuevo nodo en espera como la instancia principal de Postgres:
- Promueve el nodo en espera nuevo para que sea la nueva instancia principal:
> apigee-service apigee-postgresqlPromote- Standbyby-to-master new_standby_IP
Si se te solicita, ingresa la contraseña de Postgres para el usuario “apigee”, cuyo valor predeterminado es “postgres”. - Edita el archivo de configuración que usaste para instalar tu versión actual de Edge a fin de especificar
lo siguiente:
# dirección IP de la nueva instancia principal:
PG_MASTER=new_waitby_IP
# dirección IP del nodo en espera anterior
PG_STANDBY=old_ Standby_IP - Configura la nueva instancia principal:
>/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
- Promueve el nodo en espera nuevo para que sea la nueva instancia principal:
- Vuelve a compilar el nodo en espera anterior:
- Edita el archivo de configuración que usaste para instalar tu versión actual de Edge a fin de especificar
lo siguiente:
# dirección IP de la nueva instancia principal:
PG_MASTER=new_standby_IP
# dirección IP del nodo en espera anterior
PG_STANDBY=old_ Standby_IP - Quita el directorio de datos del nodo en espera anterior:
> cd /opt/apigee/data/apigee-postgresql/pgdata
> rm -rf * - Vuelve a configurar el nodo en espera anterior para que sea un nodo en espera de la instancia principal nueva:
>/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on- Standbyby -f configFile - Asegúrate de que Postgres se ejecute en el nodo en espera anterior:
> /opt/apigee/apigee-service/bin/apigee-all status
Si no se está ejecutando, inícialo:
> /opt/apigee/apigee-service/bin/apigee-service perimetral-postgres-server start
- Edita el archivo de configuración que usaste para instalar tu versión actual de Edge a fin de especificar
lo siguiente:
- Verifica que el nodo en espera nuevo se haya agregado mediante la visualización del archivo /opt/apigee/apigee-postgresql/conf/pg_hba.conf en la instancia principal nueva.
- Para ver las estadísticas actuales y la información del grupo de consumidores, ejecuta el siguiente comando en el servidor de administración:
> curl -u sysAdminEmail:password http://<ms_IP>:8080/v1/analytics/groups/ax
Este comando muestra el nombre del grupo de estadísticas en el campo name y el nombre del grupo de consumidores en el campo name en los grupos. También muestra los UUID de los nodos de la instancia principal y en espera de Postgres anteriores en el campo postgres-server y en el campo datastores. - Para obtener la dirección UUID de la instancia principal anterior, ejecuta el siguiente comando cURL en el nodo principal anterior:
> curl -u sysAdminEmail:password http://<node_IP>:8084/v1/servers/self
Deberías ver el cURL del nodo al final de la salida, con el siguiente formato:
“post
Si el servidor de Postgres no se está ejecutando, puedes ejecutar el siguiente comando en el servidor de administración para determinar el UUID:
> curl -u sysAdminEmail:password http://<ms_IP>:8080/v1/servers?pod=analytics
El resultado de este comando muestra el UUID para la dirección IP de cada nodo de Postres. - Repite el paso anterior para obtener las direcciones IP del nodo en espera anterior y la instancia principal nueva.
- Quita los nodos principales y en espera antiguos del grupo de consumidores:
> curl -u sysAdminEmail:password -X DELETE "http://<ms_IP>:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastore-party/datastores/master-consumidor
Los masterUUID,StandbybyUUID están en el mismo orden en el que aparecen antes cuando consultaste la información actual del grupo de consumidores y las estadísticas. Es posible que debas especificarlos como StandbybyUUID,masterUUID.
La propiedad datastores para consumer-groups ahora debería estar vacía. - Quita los nodos principales y en espera anteriores del grupo de estadísticas:
> curl -u sysAdminEmail:password -X DELETE "http://<ms_IP>:8080/v1/analytics/groups/ax/axgroup-001/servers?uu=masterAdminEmail:password underX DELETE "http://<ms_IP>:8080/v1/analytics/groups/ax/axgroup-001/servers?uuuid=master,UUID-uid-server&type=postgres UUID&type=postgres emptyserver
- Regístrate
- Valida el grupo de estadísticas:
> curl -u sysAdminEmail:password http://<ms_IP>:8080/v1/analytics/groups/ax
Deberías ver los UUIDs de los nuevos nodos principales y en espera enumerados en el grupo de estadísticas y en el grupo de consumidores. - Reinicia el servidor de administración perimetral:
> /opt/apigee/apigee-service/bin/apigee-service Edge-management-server restart - Reinicia todos los servidores de Qpid:
> /opt/apigee/apigee-service/bin/apigee-service perimetral-qpid-server restart - Reinicia todos los servidores de Postgres:
> /opt/apigee/apigee-service/bin/apigee-service Edge-postgres-server restart - Verifica el estado de replicación mediante la emisión de las siguientes secuencias de comandos en ambos servidores. El sistema debe mostrar resultados idénticos en ambos servidores para garantizar una replicación exitosa:
En la instancia principal nueva, ejecuta lo siguiente:
>/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
Valida que se indique que es la instancia principal.
En el nodo en espera anterior:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check- Standby
Valida que indica que está en espera. - Repite el paso anterior después de realizar varias solicitudes a la API para asegurarte de que los nodos estén sincronizados.
- Retira la instancia principal de Postgres anterior con el procedimiento que se describe en Actualiza Apigee Edge a la versión 4.16.09.
Nota: Si el nodo principal anterior ejecutaba Qpid, puedes dejar ese servidor para ejecutar Qpid. Asegúrate de que se esté ejecutando. De lo contrario, iníciala:
>/opt/apigee/apigee-service/bin/apigee-service Edge-management-server start
De manera alternativa, puedes desinstalar Qpid de la instancia principal anterior e instalar Qpid en el nodo principal nuevo, como se describe a continuación. Después de desinstalar Qpid, puedes retirar el nodo principal anterior.
Instala Qpid en la versión principal anterior e instala Qpid en la nueva.
Usa el siguiente procedimiento para desinstalar Qpid de la instancia principal anterior y, luego, instalarlo en la instancia principal nueva:
- Bloquea el acceso al puerto Qpid 5672 en la instancia principal anterior para evitar que Message Processors acceda mediante la ejecución del siguiente comando en todos los procesadores de mensajes:
> iptables -A OUTPUT -p tcp -d 10.233.147.20 --dport 5672 -j DROP - Ejecuta el siguiente comando para asegurarte de que la cola de mensajes de Qpid esté vacía. No puedes desinstalar Qpid hasta que se hayan procesado todos los mensajes pendientes:
> qpid-stat -q
Este comando muestra una tabla que contiene un recuento para msg, msgIn y msgOut. Todos los mensajes se habrán procesado cuando msg=0 y msgIn=msgOut. - Determina el UUID del servidor Qpid en la instancia principal anterior ejecutando el siguiente comando en
la instancia principal anterior. Guarda esta información para más adelante en el procedimiento:
> curl -u sysAdminEmail:password http://<node_IP>::8083/v1/servers/self - Detén Qpid en la instancia principal anterior:
>/opt/apigee/apigee-service/bin/apigee-service perimetral-qpid-server stop
> /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop - Desinstala el servidor de Qpid:
>/opt/apigee/apigee-service/bin/apigee-service perimetral-qpid-server desinstalar
> /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd desinstalar - Quita el servidor Qpid anterior de los grupos de analytics y consumidores:
> curl -u sysAdminEmail:password -X DELETE -H "Content-Type: application/json" -d ''"http://<ms_IP>:8080/v1/analytics/groups/ax/axgroup-001 - Quita el servidor Qpid anterior de Zookeeper:
> curl -u sysAdminEmail:password -X DELETE http://<ms_IP>:8080/v1/servers/qpid_UUID - Instala Qpid en la instancia principal nueva:
>/opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile - Determina el UUID del servidor Qpid en la instancia principal nueva ejecutando el siguiente comando en
la nueva instancia principal. Guarda esta información para más adelante en el procedimiento:
> curl -u sysAdminEmail:password http://<node_IP>::8083/v1/servers/self - Registra el servidor Qpid nuevo con las estadísticas y los grupos de consumidores
- Reinicia todos los procesadores de mensajes:
> /opt/apigee/apigee-service/bin/apigee-service perimetral-message-processor - Ejecuta el siguiente comando en el nuevo servidor de Qpid para comprobar que se hayan creado colas:
> qpid-stat -q
Asegúrate de ver que msg, msgIn y msgOut se actualizan a medida que el servidor de Qpid procesa mensajes.
Para revertir componentes individuales de la versión 4.17.01
Como parte de la reversión, debes descargar el archivo Boot.sh correspondiente a tu versión actual de Edge:
- Para revertir a 4.16.09, descarga bootstrap_4.16.09.sh.
- Para revertir a 4.16.05, descarga bootstrap_4.16.05.sh.
- Para revertir a 4.16.01, descarga bootstrap.sh.
Para cada nodo que aloja un componente que se revertirá, haz lo siguiente:
- Detén el componente para revertirlo:
-
Si quieres revertir alguno de los siguientes componentes del nodo, debes detenerlos a todos: servidor de administración, router, procesador de mensajes, servidor Qpid o servidor Postgres:
- > Detención de apigee-service Edge-management-server
- > Detención del router perimetral de apigee-service
- > Detención de apigee-service Edge-message-processor
- > detención de apigee-service perimetral-qpid-server
- > Detención de apigee-service perimetral-postgres-server
-
Si quieres revertir cualquier otro componente en el nodo, detén solo ese componente:
- > apigee-service comp detener
-
Si quieres revertir alguno de los siguientes componentes del nodo, debes detenerlos a todos: servidor de administración, router, procesador de mensajes, servidor Qpid o servidor Postgres:
- Si estás revirtiendo la monetización, desinstálala de todos los nodos del servidor de administración y del procesador
de mensajes:
> apigee-service perimetral-mint-gateway desinstalar - Desinstala el componente para revertir en el nodo:
- Si quieres revertir cualquiera de los siguientes componentes del nodo, desinstálalos todos: Servidor de administración, Router, Procesador de mensajes, Qpid Server o Postgres:
> apigee-service perimetral-gateway desinstalar - Si quieres revertir cualquier otro componente del nodo, desinstala solo ese componente:
> apigee-service comp desinstalar - Si estás revirtiendo el router, entonces debes borrar el
contenido de /opt/nginx/conf.d:
> cd /opt/nginx/conf.d
> rm -rf *
- Si quieres revertir cualquiera de los siguientes componentes del nodo, desinstálalos todos: Servidor de administración, Router, Procesador de mensajes, Qpid Server o Postgres:
-
Para revertir el componente, haz lo siguiente:
- Desinstala la versión 4.17.01 de apigee-setup:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup - Descarga boot.sh para la versión 4.16.01, 4.16.05 o 4.16.09:
Por ejemplo, para 4.16.09:
> curl https://software.apigee.com/boot_4.16.09.sh -o /tmp/boot_4.16. - Instala la utilidad y las dependencias apigee-service 4.16.01, 4.16.05 o 4.16.09.
Por ejemplo, para 4.16.09:
> sudo bash /tmp/Boot_4.16.09.sh apigeeuser=uName apigeepassword=pWord
donde uName y pWord son el nombre de usuario y la contraseña que recibió de Apigee. Si omites pWord, se te solicitará que lo ingreses. - Instala la versión 4.16.01, 4.16.05 o 4.16.09 de apigee-setup:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup install - Instala la versión 4.16.01, 4.16.05 o 4.16.09 del componente:
> /opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile
en la que comp.1.6 es el componente que se debe instalar o 4config.6.6.6 - Si estás revirtiendo Qpid, limpia las iptables:
> sudo iptables -F
- Desinstala la versión 4.17.01 de apigee-setup:
-
Para revertir el componente a una versión específica de la versión 4.17.01, sigue estos pasos:
- Descarga la versión del componente específico:
> /opt/apigee/apigee-service/bin/apigee-service comp-version install
En el ejemplo anterior, comp-version es el componente y la versión que se deben instalar. Por ejemplo:
>/opt/apigee/apigee-service/bin/apigee-service perimetral-ui-4.17.01-0.0.3749 install
Si usas el repositorio en línea de Apigee, puedes determinar las versiones de componentes disponibles mediante el siguiente comando:
> yum --showduplicates list com
> Por ejemplo: - 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 solo el nombre de configFile
- Descarga la versión del componente específico:
Comunícate con la asistencia de Apigee si tienes problemas para realizar la reversión.