- v1.15 (última)
- v1.14
- v1.13
- Lista de versiones admitidas
- v1.12
- v1.11
- v1.10
- v1.9
- v1.8
- v1.7
- Versión 1.6
- v1.5
- Versión 1.4
- Versión 1.3
- v1.2
- v1.1
Versiones compatibles:
Versiones no compatibles:
En esta página se describe cómo migrar una organización de Apigee hybrid de un clúster de Kubernetes a otro. Estos son algunos casos en los que puede que tengas que migrar una organización a otro clúster:
- El centro de datos que aloja el clúster no tiene más capacidad o se está retirando.
- El clúster ejecuta una infraestructura antigua o una versión antigua de Kubernetes, y quieres migrar a un clúster con una infraestructura más reciente.
- Quieres mover organizaciones de clústeres de varias organizaciones a clústeres independientes.
Ten en cuenta que existen riesgos y limitaciones al migrar una organización a otro clúster híbrido. Lee los detalles de la sección Limitaciones antes de realizar una migración.
Limitaciones
Se aplican las siguientes limitaciones al migrar una organización híbrida a otro clúster de Kubernetes:
- Si mueves datos de una organización a un nuevo clúster de Kubernetes, corres el riesgo de perderlos. Antes de migrar una organización, debes crear una copia de seguridad de los datos de todas las organizaciones del clúster de Kubernetes siguiendo las instrucciones de copia de seguridad híbrida.
- El tamaño máximo de datos admitido para la migración de organizaciones es de 5 GB en todos los espacios de claves de una organización, sin incluir la caché ni la cuota.
- Los datos de caché no se migrarán. Hybrid vuelve a generar los datos de la caché.
- Los datos de cuota no se migrarán. Hybrid restablece los datos de cuota.
- Solo puedes migrar organizaciones a un clúster de Kubernetes que no contenga ningún despliegue híbrido. No se puede migrar a un clúster con una implementación híbrida.
- La organización que se va a migrar solo se puede mover a un clúster nuevo con una implementación de una sola región. Una vez que el despliegue de una sola región esté en funcionamiento, puedes seguir el proceso de expansión de la región, que se describe en el artículo Despliegue multirregional, para ampliarlo a otras regiones.
- El clúster de Cassandra debe funcionar correctamente en todas las regiones.
Migrar una organización
Sigue las instrucciones que se indican a continuación para migrar una organización híbrida de un clúster de Kubernetes a otro:
- Si aún no lo ha hecho, habilite las copias de seguridad en el clúster de Kubernetes que contenga la organización híbrida que se va a migrar. Consulta la información general sobre las copias de seguridad de Cassandra para obtener información sobre las copias de seguridad híbridas.
- Inicia una tarea de copia de seguridad híbrida con el siguiente comando:
kubectl create job -n apigee --from=cronjob/apigee-cassandra-backup <backup job name>
<backup job name>
puede ser cualquier nombre de contenedor válido. - Una vez que se haya completado el trabajo de copia de seguridad, sigue las instrucciones de las siguientes secciones de Monitorización de copias de seguridad para comprobar que la copia de seguridad se ha completado correctamente:
- "Check the status of the backup job" ("Comprueba el estado del trabajo de copia de seguridad")
- "Revisa los registros de copia de seguridad"
- Después de verificar que la copia de seguridad se ha completado correctamente, anota el número de ID que aparece al final del registro de la copia de seguridad.
Por ejemplo, un registro de copia de seguridad correcta debe contener una línea como la siguiente:
Anota el número de varias cifras que aparece al final de la línea. Necesitarás este número más adelante.INFO: completed upload for 20230207004250
- Cambia el contexto de Kubernetes al clúster de Kubernetes de destino:
kubectl config use-context <destination cluster name> # <destination cluster name>
donde
<destination cluster name>
es el nombre del clúster de Kubernetes de destino. - Restaura los datos de la copia de seguridad en el clúster de Kubernetes de destino siguiendo las instrucciones de la sección
Restaurar en una sola región.
- Usa el archivo overrides.yaml de la organización que se va a migrar a la implementación híbrida de destino.
- Recuerda asignar al valor
restore:snapshotTimestamp
el número de varios dígitos que se muestra en el registro de copia de seguridad en el paso 4. Consulta Restaurar en una sola región.
- Una vez completada la restauración, elimina del clúster de Kubernetes de destino todos los datos de la organización, excepto los de la organización que se está migrando. Los archivos de copia de seguridad híbrida contienen los datos de todas las organizaciones, incluidas las que no quieras migrar. Una vez restaurada la implementación híbrida de destino, debe eliminar los datos de organización adicionales que se hayan copiado en la implementación. Para ello, siga estos pasos:
- Verifica que el contexto actual sea el correcto para el clúster de Kubernetes de destino:
kubectl config current-context
- Ejecuta el comando en el pod
apigee-cassandra-default-0
:kubectl exec -it -n apigee apigee-cassandra-default-0 -- /bin/bash
- Ejecuta el comando siguiente:
find /opt/apigee/data/apigee-cassandra/ -iname '*_hybrid' -not -iname '*<migrated org name>*' -type d -maxdepth 2 -printf "%f\n"
Consulta Obtener el nombre de la organización migrada para ver las instrucciones sobre cómo encontrar
<migrated org name>
.Copia la lista de todos los nombres que se muestran en el resultado. Necesitarás esta lista en el paso 7. f.
- Sal del pod
apigee-cassandra-default-0
. - Crea un pod de cliente de depuración de Cassandra siguiendo las instrucciones de
Crear un contenedor de cliente para depuración. Ve al siguiente paso después de recibir una petición
cqlsh
. - Ejecuta los siguientes comandos en el símbolo del sistema
cqlsh
:-
desc keyspaces;
Asegúrate de que este comando no devuelva ningún error.
- Ejecuta el siguiente comando para cada nombre de la lista creada en el paso 7.c:
drop keyspace <name>
-
- Sal del pod del cliente de depuración de Cassandra.
- Después de ejecutar los comandos
cqlsh
, ejecuta los siguientes comandos en todos los pods de Cassandra del clúster de Kubernetes de destino:kubectl exec -it -n apigee
-- /bin/bash find /opt/apigee/data/apigee-cassandra/ -iname '*_hybrid' -not -iname '*<migrated org name>*' -type d -maxdepth 2
Consulta Obtener el nombre de la organización migrada para saber cómo encontrar
<migrated org name>
.find /opt/apigee/data/apigee-cassandra/ -iname '*_hybrid' -not -iname '*
*' -type d -maxdepth 2 -exec rm -rf {} +
- Sal del pod de Cassandra.
- Verifica que el contexto actual sea el correcto para el clúster de Kubernetes de destino:
- Cambia el contexto de Kubernetes al clúster de Kubernetes de origen:
kubectl config use-context <source cluster name>
donde
<source cluster name>
es el nombre del clúster de Kubernetes de origen. - Elimina la organización migrada del clúster de Kubernetes de origen. Asegúrate de usar el archivo
overrides.yaml
de la organización en el comando de eliminación:- Verifica que el contexto actual sea el correcto para el clúster de Kubernetes de origen:
kubectl config current-context
apigeectl delete --settings virtualhost -f
apigeectl delete --all-envs -f <overrides.yaml>
apigeectl delete -f <overrides.yaml> --org
- Ejecuta el pod apigee-cassandra-default-0:
kubectl exec -it -n apigee apigee-cassandra-default-0 -- /bin/bash
- Ejecuta el comando siguiente:
find /opt/apigee/data/apigee-cassandra/ -iname '*<migrated org name>_hybrid' -type d -maxdepth 2 -printf "%f\n"
Consulta Obtener el nombre de la organización migrada para saber cómo encontrar
<migrated org name>
.Copia la lista de todos los nombres que se muestran en el resultado. Necesitarás esta lista en el paso 9. j.
- Sal del pod
apigee-cassandra-default-0
. - Crea un pod de cliente de depuración de Cassandra siguiendo las instrucciones de la sección
Crear un contenedor de cliente para depuración. Ve al siguiente paso
después de recibir una petición
cqlsh
. - Ejecuta los siguientes comandos en el símbolo del sistema
cqlsh
:desc keyspaces;
Asegúrate de que este comando no devuelva ningún error.
- Por cada nombre de la lista creada en el paso 10.f,
ejecuta el siguiente comando:
drop keyspace <name>;
- Sal del pod del cliente de depuración de Cassandra. Después de ejecutar los comandos
-
kubectl exec -it -n apigee <cassandra pod name> -- /bin/bash
-
find /opt/apigee/data/apigee-cassandra/ -iname '*<migrated org name>_hybrid' -type d -maxdepth 2
Consulta Obtener el nombre de la organización migrada para saber cómo encontrar
<migrated org name>
. -
find /opt/apigee/data/apigee-cassandra/ -iname '*<migrated org name>_hybrid' -type d -maxdepth 2 -exec rm -rf {} +
- Sal del pod de Cassandra.
cqlsh
, ejecuta los siguientes comandos en todos los pods de Cassandra del clúster de Kubernetes de origen: - Verifica que el contexto actual sea el correcto para el clúster de Kubernetes de origen:
Obtener el nombre de la organización migrada
En varios de los pasos del procedimiento descrito en la sección anterior se requiere el nombre de la organización migrada. Para obtener el nombre de la organización migrada, haz lo siguiente:
- Obtener el nombre de la organización del archivo overrides.yaml de la organización. Asegúrate de consultar el archivo overrides.yaml de la organización que se va a migrar.
- Si el nombre de la organización contiene guiones "-", sustitúyelos por guiones bajos "_".