Recuperación de aplicaciones con backups remotos
Con Astra, puede realizar un backup completo y consistente con las aplicaciones que puede utilizar para restaurar su aplicación con sus datos en un clúster de Kubernetes diferente que se ejecute en un centro de datos en las instalaciones o en un cloud público.
Para validar que la recuperación de aplicaciones se ha realizado correctamente, simule un fallo local de una aplicación que se ejecuta en el sistema FlexPod y restaure la aplicación a un clúster K8s que se ejecuta en el cloud mediante un backup remoto.
La aplicación de ejemplo es una aplicación de lista de precios que utiliza MySQL para la base de datos. Para automatizar la puesta en marcha, usamos "CD Argo" herramienta. Argo CD es una herramienta de entrega continua, declarativa, GitOPS para Kubernetes.
-
Inicie sesión en el clúster OpenShift de las instalaciones y cree un nuevo proyecto con el nombre
argocd
. -
En OperatorHub, busque
argocd
Y seleccione operador de Argo CD. -
Instale el operador en el
argocd
espacio de nombres. -
Vaya al operador y haga clic en Crear ArgoCD.
-
Para desplegar la instancia del CD Argo en
argocd
Project, proporcione un nombre y haga clic en Create. -
Para iniciar sesión en el CD de Argo, el usuario predeterminado es admin y la contraseña está en un archivo secreto con el nombre
argocd-netapp-cluster
. -
En el menú lateral, seleccione rutas > ubicación y haga clic en la dirección URL de
argocd
rutas. Introduzca el nombre de usuario y la contraseña. -
Agregue el clúster OpenShift en las instalaciones al CD de Argo a través de la CLI.
####Login to Argo CD#### abhinav3@abhinav-ansible$ argocd-linux-amd64 login argocd-netapp-server-argocd.apps.ocp.flexpod.netapp.com --insecure Username: admin Password: 'admin:login' logged in successfully Context'argocd-netapp-server-argocd.apps.ocp.flexpod.netapp.com' updated ####List the On-Premises OpenShift cluster#### abhinav3@abhinav-ansible$ argocd-linux-amd64 cluster add ERRO[0000] Choose a context name from: CURRENT NAME CLUSTER SERVER * default/api-ocp-flexpod-netapp-com:6443/abhinav3 api-ocp-flexpod-netapp-com:6443 https://api.ocp.flexpod.netapp.com:6443 default/api-ocp1-flexpod-netapp-com:6443/abhinav3 api-ocp1-flexpod-netapp-com:6443 https://api.ocp1.flexpod.netapp.com:6443 ####Add On-Premises OpenShift cluster### abhinav3@abhinav-ansible$ argocd-linux-amd64 cluster add default/api-ocp1-flexpod-netapp-com:6443/abhinav3 WARNING: This will create a service account `argocd-manager` on the cluster referenced by context `default/api-ocp1-flexpod-netapp-com:6443/abhinav3` with full cluster level admin privileges. Do you want to continue [y/N]? y INFO[0002] ServiceAccount "argocd-manager" already exists in namespace "kube-system" INFO[0002] ClusterRole "argocd-manager-role" updated INFO[0002] ClusterRoleBinding "argocd-manager-role-binding" updated Cluster 'https://api.ocp1.flexpod.netapp.com:6443' added
-
En la interfaz de usuario de ArgoCD, haga clic EN LA NUEVA APLICACIÓN e introduzca los detalles sobre el nombre de la aplicación y el repositorio de código.
-
Introduzca el clúster OpenShift donde se va a implementar la aplicación junto con el espacio de nombres.
-
Para implementar la aplicación en el clúster OpenShift en las instalaciones, haga clic en SYNC.
-
En la consola de OpenShift Container Platform, vaya a Lista de precios de proyecto y, en almacenamiento, compruebe el nombre y el tamaño del PVC.
-
Inicie sesión en System Manager y verifique la RVP.
-
Una vez que se estén ejecutando los pods, seleccione Networking > Routes en el menú lateral y haga clic en la dirección URL en ubicación.
-
Se muestra la página de inicio de la aplicación Lista de precios.
-
Cree algunos registros en la página Web.
-
La aplicación se descubre en Astra Control Center. Para gestionar la aplicación, vaya a aplicaciones > descubiertas, seleccione la aplicación Lista de precios y haga clic en Administrar aplicaciones en acciones.
-
Haga clic en la aplicación Lista de precios y seleccione Protección de datos. En este momento, no deben existir copias Snapshot o backups. Haga clic en Create Snapshot para crear una snapshot bajo demanda.
Astra Control Center de NetApp es compatible con copias Snapshot y backups bajo demanda y programadas. -
Una vez creada la copia de Snapshot y el estado es correcto, cree un backup remoto con esa copia de Snapshot. Este backup se almacena en el bloque de S3.
-
Seleccione el bloque de AWS S3 e inicie la operación de backup.
-
La operación de backup debe crear una carpeta con varios objetos en el bloque de AWS S3.
-
Una vez completado el backup remoto, simule un desastre en las instalaciones; para ello, detenga la máquina virtual de almacenamiento (SVM) que aloja el volumen de respaldo del VP.
-
Actualice la página web para confirmar la interrupción. La página web no está disponible.
Como se espera, el sitio web está inactivo, por lo que recuperemos rápidamente la aplicación del backup remoto utilizando Astra en el clúster OpenShift que se ejecuta en AWS.
-
En Astra Control Center, haga clic en la aplicación Lista de precios y seleccione Protección de datos > copias de seguridad. Seleccione el backup y haga clic en Restore Application, en Action.
-
Seleccione
ocp-aws
como clúster de destino y asigne un nombre al espacio de nombres. Haga clic en la copia de seguridad bajo demanda, Siguiente y, a continuación, Restaurar. -
Una nueva aplicación con el nombre
pricelist-app
Se provisoned en el clúster OpenShift que se ejecuta en AWS. -
Compruebe lo mismo en la consola web de OpenShift.
-
Después de todos los pods bajo la
pricelist-aws
Proyecto en ejecución, vaya a rutas y haga clic en la dirección URL para iniciar la página Web.
Este proceso valida que la aplicación de lista de precios se ha restaurado correctamente y que la integridad de los datos se ha mantenido en el clúster OpenShift sin problemas en AWS con la ayuda de Astra Control Center.
Protección de datos con copias Snapshot y movilidad de aplicaciones para DevTest
Este caso de uso consta de dos partes, como se describe en las siguientes secciones.
Parte 1
Con Astra Control Center, puede tomar instantáneas en cuenta las aplicaciones para la protección de datos local. Si elimina o corrompe accidentalmente sus datos, puede revertir sus aplicaciones y los datos asociados a un estado correcto conocido utilizando una instantánea registrada previamente.
En este escenario, un equipo de desarrollo y pruebas (DevTest) implementa una aplicación de ejemplo con estado (sitio de blog) que es una aplicación de blog Ghost, agrega algunos contenidos y actualiza la aplicación a la última versión disponible. La aplicación Ghost utiliza SQLite para la base de datos. Antes de actualizar la aplicación, se realiza una instantánea (bajo demanda) con Astra Control Center para la protección de datos. Los pasos detallados son los siguientes:
-
Despliegue la aplicación de blogs de ejemplo y sincronícela desde ArgoCD.
-
Inicie sesión en el primer clúster de OpenShift, vaya a Project y escriba Blog en la barra de búsqueda.
-
En el menú lateral, seleccione redes > rutas y haga clic en la URL.
-
Se muestra la página de inicio del blog. Agregue contenido al sitio del blog y lo publique.
-
Vaya a Astra Control Center. En primer lugar, gestione la aplicación desde la ficha descubierto y, a continuación, realice una copia snapshot.
También puede proteger sus aplicaciones creando instantáneas, copias de seguridad o ambas con una programación definida. Para obtener más información, consulte "Proteja las aplicaciones con snapshots y backups". -
Una vez creada correctamente la instantánea bajo demanda, actualice la aplicación a la última versión. La versión actual de la imagen es
ghost: 3.6-alpine
y la versión de destino esghost:latest
. Para actualizar la aplicación, realice cambios directamente en el repositorio de Git y sincronícelo con el CD de Argo. -
Puede ver que la actualización directa a la última versión no es compatible debido a que el sitio de blog está inactivo y a que toda la aplicación está dañada.
-
Para confirmar que el sitio del blog no está disponible, actualice la dirección URL.
-
Restaurar la aplicación desde la instantánea.
-
La aplicación se restaura en el mismo clúster de OpenShift.
-
El proceso de restauración de aplicaciones se inicia inmediatamente.
-
En unos minutos, la aplicación se restaura correctamente a partir de la instantánea disponible.
-
Para ver si la página web está disponible, actualice la dirección URL.
Con la ayuda de Astra Control Center, un equipo de DevTest puede recuperar con éxito una aplicación del sitio de blog y sus datos asociados mediante la instantánea.
Parte 2
Con Astra Control Center, puede mover toda una aplicación junto con sus datos de un clúster de Kubernetes a otro, independientemente de dónde estén los clústeres (en las instalaciones o en el cloud).
-
El equipo de DevTest actualiza inicialmente la aplicación a la versión compatible (
ghost-4.6-alpine
) antes de actualizar a la versión final (ghost-latest
) para preparar la producción. A continuación, publican una actualización de la aplicación que se clona en el clúster de producción OpenShift que se ejecuta en un sistema FlexPod diferente. -
En este momento, la aplicación se actualiza a la versión más reciente y está lista para clonarse en el clúster de producción.
-
Para verificar el nuevo tema, actualice el sitio del blog.
-
En Astra Control Center, clone la aplicación en el otro clúster de producción OpenShift que se ejecuta en VMware vSphere.
Ahora se aprovisiona un nuevo clon de aplicaciones en el clúster OpenShift de producción.
-
Inicie sesión en el clúster de Production OpenShift y busque el blog del proyecto.
-
En el menú lateral, seleccione redes > rutas y haga clic en la dirección URL en ubicación. Se muestra la misma página de inicio con el contenido.
Con esto concluye la validación de la solución Astra Control Center. Ahora puede clonar una aplicación completa y sus datos de un clúster de Kubernetes a otro, sin importar dónde esté el clúster de Kubernetes.