Edge para nube privada v4.19.01
Si encuentras un error durante una actualización a Edge 4.19.01, puedes revertir el componente que causó el error y, luego, volver a intentar la actualización.
Puedes revertir Edge 4.19.01 a las siguientes versiones de actualización de funciones:
- Versión 4.18.05
- Versión 4.18.01
- Versión 4.17.09*
* Para revertir de la versión 4.19.01 a la 4.17.09, debes revertir Postgres, además de revertir los componentes en cada nodo. Si reviertes a la versión 4.18.01 o 4.18.05, no es necesario que reviertas Postgres, ya que el proceso de actualización no incluyó una actualización de Postgres.
Existen dos situaciones en las que es posible que quieras realizar una reversión:
- Cómo revertir a una versión de funciones anterior Por ejemplo, de 4.19.01 a 4.18.05.
- Revertir a una versión de actualización anterior en la misma versión Por ejemplo, de 4.19.01.02 a 4.19.01.01.
Para obtener más información, consulta el proceso de lanzamiento de Apigee Edge.
Quién puede realizar una reversión
El usuario que realiza una reversión debe ser el mismo 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 componentes de Edge como usuarios diferentes. Por ejemplo, si el router tiene que acceder a puertos con privilegios, como los que están por debajo de 1000, 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 componente 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(Message Processor)edge-router(router)edge-postgres-server(servidor de Postgres)edge-qpid-server(servidor de Qpid)
Por ejemplo, si tienes instalados el servidor de administración, el router y el Message Processor en el nodo, para revertir cualquiera de ellos, debes revertir los tres.
Cómo revertir a una versión de funciones anterior
Para revertir de la versión 4.19.01 a la 4.17.09, debes revertir Postgres, además de revertir los componentes en cada nodo. Si reviertes desde la versión 4.18.01 o 4.18.05, no es necesario revertir Postgres, ya que el proceso de actualización no incluyó una actualización de Postgres.
Para revertir a una versión de funciones anterior, haz lo siguiente en cada nodo que aloje el componente:
-
Descarga el archivo
bootstrap.shde la versión a la que deseas revertir:- Para revertir a la versión 4.18.05, descarga
bootstrap_4.18.05.sh:curl https://software.apigee.com/bootstrap_4.18.05.sh -o /tmp/bootstrap_4.18.05.sh
- Para revertir a la versión 4.18.01, descarga
bootstrap_4.18.01.sh:curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh
- Para volver a la versión 4.17.09, descarga
bootstrap_4.17.09.sh:curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh
- Para revertir a la versión 4.18.05, descarga
- Detén el componente que deseas revertir:
- Para revertir cualquiera de los componentes con código común en el
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 - Para revertir cualquier otro componente en el nodo, detén solo ese componente:
/opt/apigee/apigee-service/bin/apigee-service component stop
- Para revertir cualquiera de los componentes con código común en el
nodo, debes detenerlos todos, como se muestra en el siguiente ejemplo:
- Si reviertes la Monetización, desinstálala de todos los nodos de Management Server y Message
Processor:
/opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
- Desinstala el componente para revertir el nodo:
- Para revertir cualquiera de los componentes con código común en el
nodo, debes desinstalarlos todos desinstalando el grupo de componentes
edge-gateway, como se muestra en el siguiente ejemplo:/opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
- Para revertir cualquier otro componente en el 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.
- Para revertir Edge Router, debes borrar el contenido del archivo
/opt/nginx/conf.d, además de desinstalar el grupo de componentesedge-gateway:cd /opt/nginx/conf.d
rm -rf *
- Para revertir cualquiera de los componentes con código común en el
nodo, debes desinstalarlos todos desinstalando el grupo de componentes
- Desinstala la versión 4.19.01 de
apigee-setup:/opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
- Instala la versión 4.18.05, 4.18.01 o 4.17.09 de la utilidad
apigee-servicey sus dependencias. En el siguiente ejemplo, se instala la versión 4.17.09 deapigee-service:sudo bash /tmp/bootstrap_4.17.09.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 pedirá que lo ingreses.
Si recibes un error, asegúrate de haber descargado el archivo
bootstrap.shen el paso 1. - Instala
apigee-setup:/opt/apigee/apigee-service/bin/apigee-service apigee-setup install
- Instala la versión anterior del componente:
/opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile
Donde component es el componente que se instalará y configFile es tu archivo de configuración para la versión anterior.
- Si reviertes Qpid, limpia iptables:
sudo iptables -F
- Repite este proceso para cada nodo que aloje el componente que estás revirtiendo.
Para revertir de la versión 4.19.01 a la 4.17.09, debes revertir Postgres, además de revertir los componentes en cada nodo. Si reviertes desde la versión 4.18.01 o 4.18.05, no es necesario revertir Postgres, ya que el proceso de actualización no incluyó una actualización de Postgres.
Revierte a una versión de actualización anterior
Para revertir un componente a una versión específica de una versión, haz lo siguiente en cada nodo que aloja el componente:
- Descarga la versión específica del componente:
/opt/apigee/apigee-service/bin/apigee-service component_version install
Donde component_version es el componente y la versión de actualización que se instalarán. Por ejemplo:
/opt/apigee/apigee-service/bin/apigee-service edge-ui-4.17.09-0.0.3749 install
Si usas el repositorio en línea de Apigee, puedes determinar las versiones de los componentes disponibles con el siguiente comando:
yum --showduplicates list comp
Por ejemplo:
yum --showduplicates list edge-ui
- Usa
apigee-setuppara 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 especificas el nombre del componente cuando lo instalas, no la versión.
- Repite este proceso para cada nodo que aloje el componente que estás revirtiendo.
Para revertir de la versión 4.19.01 a la 4.17.09, debes revertir Postgres, además de revertir los componentes en cada nodo. Si reviertes desde la versión 4.18.01 o 4.18.05, no es necesario revertir Postgres, ya que el proceso de actualización no incluyó una actualización de Postgres.
Revierte la actualización de Postgres 9.6
Si actualizaste a la versión 4.19.01 desde la versión 4.17.09, debes revertir la actualización de Postgres, además de los componentes de Edge.
Para revertir la actualización de Postgres cuando actualizas Postgres en una configuración de principal-en espera, haz lo siguiente:
- Ascender el nuevo nodo en espera para que se convierta en el nodo principal de Postgres La nueva instancia principal de Postgres será la misma versión que la instalación anterior de Edge.
- Configura el nodo en espera anterior para que sea un nodo en espera del nodo principal nuevo. El nodo en espera anterior tendrá la misma versión que la instalación de Edge anterior.
- Registra los nuevos nodos principal y en espera con los grupos de consumidores y de estadísticas.
Cuando termines con 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 de 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, detenlo:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- Si está instalado, inicia Qpid en el nodo en espera anterior:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
- Asciende el nuevo nodo en espera como el principal de Postgres:
- Asciende el nuevo nodo en espera para que sea el nuevo principal:
apigee-service apigee-postgresql promote-standby-to-master new_standby_IP
Si se te solicita, ingresa la contraseña de Postgres para el usuario "apigee", que de forma predeterminada es "postgres".
- Edita el archivo de configuración que usaste para instalar la versión actual de Edge a fin de especificar
lo siguiente:
# IP address of the new master: PG_MASTER=new_standby_IP # IP address of the old standby node 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
- Asciende el nuevo nodo en espera para que sea el nuevo principal:
- Vuelve a compilar el nodo en espera anterior:
- Edita el archivo de configuración que usaste para instalar la versión actual de Edge a fin de especificar
lo siguiente:
# IP address of the new master: PG_MASTER=new_standby_IP # IP address of the old standby node PG_STANDBY=old_standby_IP
- Quita el directorio de datos en el 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 del nuevo nodo principal:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
- Asegúrate de que Postgres se esté ejecutando 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 edge-postgres-server start
- Edita el archivo de configuración que usaste para instalar la versión actual de Edge a fin de especificar
lo siguiente:
- Verifica que se haya agregado el nodo en espera nuevo. Para ello, consulta el
archivo
/opt/apigee/apigee-postgresql/conf/pg_hba.confen la instancia principal nueva. - Ejecuta el siguiente comando en el servidor de administración para ver la información actual de las estadísticas y del grupo de consumidores:
curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax
Este comando devuelve el nombre del grupo de estadísticas en el campo
namey el nombre del grupo de consumidores en el camponameenconsumer-groups. También devuelve los UUID de los nodos principal y en espera de Postgres antiguos en el campopostgres-servery en el campodatastores. Deberías ver un resultado con el siguiente formato:{ "name" : "axgroup-001", "properties" : { }, "scopes" : [ "VALIDATE~test", "sgilson~prod" ], "uuids" : { "qpid-server" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ], "postgres-server" : [ "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ], "datastores" : [ "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256" ], "properties" : { } } ], "data-processors" : { } } - Obtén la dirección UUID de la instancia principal anterior ejecutando el siguiente comando
curlen el nodo principal anterior:curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self
Deberías ver el UUID del nodo al final del resultado, con el siguiente formato:
"type" : [ "postgres-server" ], "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
- Repite el paso anterior para obtener las direcciones IP del nodo en espera anterior y del nuevo principal.
- Quita los nodos principal 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/datastores/masterUUID,standbyUUID" -v
Donde axgroup-001 y consumer-group-001 son los nombres predeterminados de los grupos de consumidores y de estadísticas. masterUUID,standbyUUID están en el mismo orden en el que aparecieron antes cuando consultaste la información actual de las estadísticas y del grupo de consumidores. Es posible que debas especificarlos como standbyUUID,masterUUID.
La propiedad
datastoresdeconsumer-groupsahora debería estar vacía. - Quita los nodos principal y en espera antiguos del grupo de estadísticas:
curl -u sysAdminEmail:password -X DELETE \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v
La propiedad
postgres-serverenuuidsahora debería estar vacía. - Registra los nuevos nodos principal y en espera de PG con los grupos de consumidores y de estadísticas:
curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d '' "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v
curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d '' "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores?uuid=masterUUID,standbyUUID" -v - Valida el grupo de estadísticas:
curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax
Deberías ver los UUID de los nuevos nodos principal y en espera que se enumeran en el grupo de estadísticas y el grupo de consumidores.
- Reinicia el servidor de administración de Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- Reinicia todos los servidores de Qpid:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
- Reinicia todos los servidores de Postgres:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- Verifica el estado de la replicación ejecutando las siguientes secuencias de comandos en ambos servidores. El sistema
debería mostrar resultados idénticos en ambos servidores para garantizar una replicación exitosa:
En la nueva instancia principal, ejecuta lo siguiente:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
Valida que indique que es la instancia principal. En el nodo en espera anterior, haz lo siguiente:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
Valida que indique que es la instancia 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 indica en
Actualiza Apigee Edge
4.16.01/4.16.05 a 4.17.09.
Como alternativa, puedes desinstalar Qpid de la instancia principal anterior y, luego, instalar Qpid en el nodo principal nuevo. Después de desinstalar Qpid, puedes retirar el nodo principal anterior.
Desinstala Qpid de la instancia principal anterior y, luego, instálalo en la nueva
Para desinstalar Qpid de la instancia principal anterior y, luego, instalarlo en la nueva, haz lo siguiente:
- Bloquea el acceso al puerto 5672 de Qpid en la instancia principal anterior desde el acceso de los Message Processors. Para ello,
ejecuta el siguiente comando en todos los Message Processors:
iptables -A OUTPUT -p tcp -d 10.233.147.20 --dport 5672 -j DROP
- Asegúrate de que la cola de mensajes de Qpid esté vacía. Para ello, ejecuta el siguiente comando. No puedes
desinstalar Qpid hasta que haya procesado todos los mensajes pendientes:
qpid-stat -q
Este comando muestra una tabla que contiene un recuento de
msg, msgIn, and msgOut. Todos los mensajes se habrán procesado cuandomsg=0ymsgIn=msgOut. - Determina el UUID del servidor de 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 edge-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 edge-qpid-server uninstall
/opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall - Quita el servidor de Qpid anterior de los grupos de consumidores y de estadísticas:
curl -u sysAdminEmail:password -X DELETE -H "Content-Type: application/json" -d '' \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumers/qpid_UUID" -v
curl -u sysAdminEmail:password -X DELETE \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=qpid_UUID&type=qpid-server" -v - Quita el servidor de Qpid anterior de Zookeeper:
curl -u sysAdminEmail:password -X DELETE \ http://ms_IP:8080/v1/servers/qpid_UUID
- Instala Qpid en la nueva instancia principal:
/opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
- Determina el UUID del servidor de Qpid en la nueva instancia principal 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 nuevo servidor de Qpid con los grupos de consumidores y de estadísticas:
curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d '' \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=qpid_UUID&type=qpid-server" -v
curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d '' \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumers?uuid=qpid_UUID" -v - Reinicia todos los Message Processors:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- Ejecuta el siguiente comando en el nuevo servidor de Qpid para verificar que se hayan creado las colas:
qpid-stat -q
Asegúrate de que se actualicen
msg,msgInymsgOuta medida que el servidor de Qpid procesa los mensajes.
Comunícate con el equipo de asistencia de Apigee Edge si tienes problemas para revertir los cambios.