Comparteix a través de


Información sobre la configuración de la copia de seguridad periódica en Azure Service Fabric

La configuración de la copia de seguridad periódica de los servicios con estado de confianza o Reliable Actors consta de los pasos siguientes:

  1. Creación de directivas de copia de seguridad: en este paso, se crean una o varias directivas de copia de seguridad según los requisitos.

  2. Habilitación de la copia de seguridad: en este paso, se asocian las directivas de copia de seguridad creadas en el paso 1 a las entidades necesarias, aplicación, servicio o partición.

Crear directiva de copia de seguridad

Una directiva de copia de seguridad consta de las siguientes configuraciones:

  • Restauración automática en caso de pérdida de datos: especifica si se debe desencadenar automáticamente la restauración con la última copia de seguridad disponible en caso de que la partición experimente un evento de pérdida de datos.

Nota:

Se recomienda NO establecer la restauración automática en los clústeres de producción.

  • Número máximo de copias de seguridad incrementales: define el número máximo de copias de seguridad incrementales que se deben realizar entre dos copias de seguridad completas. El número máximo de copias de seguridad incrementales especifica el límite superior. Se puede realizar una copia de seguridad completa antes de que se complete el número especificado de copias de seguridad incrementales cuando se da una de las condiciones siguientes

    1. La réplica nunca ha realizado una copia de seguridad completa desde que se convirtió en la primaria.

    2. Algunas de las entradas del registro se han truncado desde la última copia de seguridad.

    3. La réplica superó el límite MaxAccumulatedBackupLogSizeInMB.

  • Programación de copia de seguridad: las horas a las que se van a realizar las copias de seguridad periódicas o la frecuencia. Se puede programar que las copias de seguridad sean periódicas con el intervalo especificado o en un momento fijo, diaria o semanalmente.

    1. Programación de copia de seguridad basada en frecuencia: este tipo de programación debe usarse si es necesario realizar copias de seguridad de datos a intervalos fijos. El intervalo de tiempo deseado entre dos copias de seguridad consecutivas se define con el formato ISO8601. La programación de copia de seguridad basada en frecuencia admite la resolución de intervalos de un minuto.

      {
          "ScheduleKind": "FrequencyBased",
          "Interval": "PT10M"
      }
      
    2. Programación de copia de seguridad basada en tiempo: este tipo de programación debe usarse si es necesario realizar copias de seguridad de datos a horas específicas del día o la semana. El tipo de frecuencia de la programación puede ser diaria o semanal.

      1. Programación de copia de seguridad basada en tiempo diaria: este tipo de programación debe usarse si es necesario realizar copias de seguridad de datos a horas específicas del día. Para especificarla, establezca ScheduleFrequencyType en Cada día; y establezca RunTimes en la lista de horas del día deseadas con el formato ISO8601. Se omitirá la fecha especificada junto con la hora. Por ejemplo, 0001-01-01T18:00:00 representa 6:00 P.M. cada día y se omite la parte de fecha 0001-01-01. En el ejemplo siguiente se ilustra la configuración para desencadenar la copia de seguridad diaria a las 9:00 AM y 6:00 P.M. todos los días.

        {
            "ScheduleKind": "TimeBased",
            "ScheduleFrequencyType": "Daily",
            "RunTimes": [
              "0001-01-01T09:00:00Z",
              "0001-01-01T18:00:00Z"
            ]
        }
        
      2. Programación de copia de seguridad basada en tiempo semanal: este tipo de programación debe usarse si es necesario realizar copias de seguridad de datos a horas específicas del día. Para especificarla, establezca ScheduleFrequencyType en Cada semana; establezca RunDays en la lista de días de la semana en las que se debe desencadenar la copia de seguridad y establezca RunTimes en la lista de horas del día deseadas con el formato ISO8601, se omitirá la fecha especificada junto con la hora. Lista de días de la semana en las que se debe desencadenar la copia de seguridad periódica. En el ejemplo siguiente se ilustra la configuración para desencadenar la copia de seguridad diaria a las 9:00 AM y 6:00 P.M. de lunes a viernes.

        {
            "ScheduleKind": "TimeBased",
            "ScheduleFrequencyType": "Weekly",
            "RunDays": [
               "Monday",
               "Tuesday",
               "Wednesday",
               "Thursday",
               "Friday"
            ],
            "RunTimes": [
              "0001-01-01T09:00:00Z",
              "0001-01-01T18:00:00Z"
            ]
        }
        
  • Almacenamiento de copia de seguridad: especifica la ubicación en la que se deben cargar las copias de seguridad. El almacenamiento puede ser el almacén de blobs de Azure o un recurso compartido de archivos.

    1. Azure Blob Storage: este tipo de almacenamiento debe seleccionarse cuando se deben almacenar copias de seguridad generadas en Azure. Tanto los clústeres independientes como los clústeres basados en Azure pueden usar este tipo de almacenamiento. La descripción de este tipo de almacenamiento requiere la cadena de conexión y el nombre del contenedor donde se deben cargar las copias de seguridad. Si el contenedor con el nombre especificado no está disponible, se crea durante la carga de una copia de seguridad.

      {
          "StorageKind": "AzureBlobStore",
          "FriendlyName": "Azure_storagesample",
          "ConnectionString": "<Put your Azure blob store connection string here>",
          "ContainerName": "BackupContainer"
      }
      

      Nota:

      El servicio de restauración de copias de seguridad no funciona con la versión 1 de Azure Storage.

    2. Recurso compartido de archivos: se debe seleccionar este tipo de almacenamiento para clústeres independientes cuando se debe almacenar la copia de seguridad de datos localmente. La descripción de este tipo de almacenamiento requiere la ruta de acceso del recurso compartido de archivos donde se deben cargar las copias de seguridad. Se puede configurar el acceso al recurso compartido de archivos mediante una de las opciones siguientes

      1. Autenticación de Windows integrada, donde el acceso al recurso compartido de archivos se proporciona a todos los equipos que pertenecen al clúster de Service Fabric. En este caso, establezca los siguientes campos para configurar el almacenamiento de copia de seguridad basado en recurso compartido de archivos.

        {
            "StorageKind": "FileShare",
            "FriendlyName": "Sample_FileShare",
            "Path": "\\\\StorageServer\\BackupStore"
        }
        
      2. Protección del recurso compartido de archivos mediante nombre de usuario y contraseña, donde se proporciona el acceso al recurso compartido de archivos a usuarios específicos. La especificación del almacenamiento de recurso compartido de archivos también proporciona la capacidad de especificar un nombre de usuario y contraseña secundarios para ofrecer credenciales de reserva en caso de que se produzca un error de autenticación con el nombre de usuario y contraseña principales. En este caso, establezca los siguientes campos para configurar el almacenamiento de copia de seguridad basado en recurso compartido de archivos.

        {
            "StorageKind": "FileShare",
            "FriendlyName": "Sample_FileShare",
            "Path": "\\\\StorageServer\\BackupStore",
            "PrimaryUserName": "backupaccount",
            "PrimaryPassword": "<Password for backupaccount>",
            "SecondaryUserName": "backupaccount2",
            "SecondaryPassword": "<Password for backupaccount2>"
        }
        

Nota:

Asegúrese de que la confiabilidad del almacenamiento cumpla o supere los requisitos de confiabilidad de los datos de copia de seguridad.

  • Directiva de retención: especifica la directiva para conservar copias de seguridad en el almacenamiento configurado. Solo se admite la directiva de retención básica.
    1. Directiva de retención básica: esta directiva de retención permite garantizar un uso óptimo del almacenamiento eliminando los archivos de copia de seguridad que ya no son necesarios. RetentionDuration puede especificarse para establecer el intervalo de tiempo durante el que se deben conservar las copias de seguridad en el almacenamiento. MinimumNumberOfBackups es un parámetro opcional que se puede especificar para asegurarse de que el número especificado de copias de seguridad se conserva siempre con independencia de RetentionDuration. En el ejemplo siguiente se muestra la configuración para conservar las copias de seguridad durante 10 días y no permite que el número de copias de seguridad sea inferior a 20.

      {
          "RetentionPolicyType": "Basic",
          "RetentionDuration" : "P10D",
          "MinimumNumberOfBackups": 20
      }
      

Habilitación de la copia de seguridad periódica

Después de definir la directiva de copia de seguridad para satisfacer los requisitos de copia de seguridad de datos, la directiva de copia de seguridad debe asociarse correctamente con una aplicación, servicio o partición.

Nota:

Asegúrese de que no haya actualizaciones de aplicaciones en curso antes de habilitar la copia de seguridad.

Propagación jerárquica de directiva de copia de seguridad

En Service Fabric, la relación entre la aplicación, el servicio y las particiones es jerárquica, como se explica en Modelo de aplicación. La directiva de copia de seguridad puede asociarse a una aplicación, un servicio o una partición en la jerarquía. La directiva de copia de seguridad se propaga de forma jerárquica al siguiente nivel. Por ejemplo, si solo se ha creado una única directiva de copia de seguridad y se ha asociado con una aplicación, se hará copia de seguridad de todas las particiones con estado que pertenezcan a todos los servicios con estado de confianza y a Reliable Actors de la aplicación mediante la directiva de copia de seguridad. O si la directiva de copia de seguridad está asociada con un servicio con estado de confianza, se hará copia de seguridad de todas sus particiones mediante la directiva de copia de seguridad.

Reemplazar directiva de copia de seguridad

Puede haber un escenario en el que se requiera una copia de seguridad de datos con la misma programación de copia de seguridad para todos los servicios de la aplicación, excepto para servicios específicos en los que se deba realizar la copia de seguridad de datos con una programación de frecuencia mayor o en una cuenta de almacenamiento diferente o recurso compartido de archivos. Para abordar estos escenarios, el servicio de restauración de copia de seguridad proporciona un recurso para reemplazar la directiva propagada en el ámbito del servicio y la partición. Cuando la directiva de copia de seguridad se asocia al servicio o partición, reemplaza a la directiva de copia de seguridad propagada, si la hubiera.

Ejemplo

En este ejemplo se usa la configuración con dos aplicaciones MyApp_A y MyApp_B. La aplicación MyApp_A contiene dos servicios con estado de confianza, SvcA1 y SvcA3, y un servicio de actor de confianza, ActorA2. SvcA1 contiene tres particiones, mientras que ActorA2 y SvcA3 contienen dos particiones cada uno. La aplicación MyApp_B contiene tres servicios con estado de confianza, SvcB1, SvcB2 y SvcB3. SvcB1 y SvcB2 contienen dos particiones cada uno, mientras que SvcB3 contiene tres particiones.

Se supone que los requisitos de copia de seguridad de datos de estas aplicaciones son los siguientes

  1. MyApp_A

    1. Crear una copia de seguridad de datos diaria para todas las particiones de todos los servicios de confianza con estado y Reliable Actors que pertenezcan a la aplicación. Cargar los datos de copia de seguridad en la ubicación BackupStore1.

    2. Uno de los servicios, SvcA3, requiere una copia de seguridad de datos cada hora.

    3. El tamaño de los datos de la partición SvcA1_P2 es mayor de lo esperado y la copia de seguridad de datos se debe almacenar en una ubicación de almacenamiento diferente, BackupStore2.

  2. MyApp_B

    1. Crear una copia de seguridad de datos todos los domingos a las 8:00 A.M. para todas las particiones del servicio SvcB1. Cargar los datos de copia de seguridad en la ubicación BackupStore1.

    2. Crear una copia de seguridad de datos todos los días a las 8:00 A.M. para la partición SvcB2_P1. Cargar los datos de copia de seguridad en la ubicación BackupStore1.

Para afrontar estos requisitos de copia de seguridad de datos, se crean las directivas de copia de seguridad BP_1 a BP_5 y la copia de seguridad se habilita de la siguiente manera.

  1. MyApp_A

    1. Cree una directiva de copia de seguridad, BP_1, con la programación de copia de seguridad basada en frecuencia, donde esta se establezca en 24 horas y el almacenamiento de copia de seguridad se configure para usar la ubicación de almacenamiento BackupStore1. Habilite esta directiva para la aplicación MyApp_A con la API para habilitar copia de seguridad de aplicación. Esta acción habilita la copia de seguridad de datos mediante la directiva de copia de seguridad BP_1 para todas las particiones de servicios con estado de confianza y Reliable Actors que pertenezcan a la aplicación MyApp_A.

    2. Cree una directiva de copia de seguridad, BP_2, con la programación de copia de seguridad basada en frecuencia, donde esta se establezca en 1 hora y el almacenamiento de copia de seguridad se configure para usar la ubicación de almacenamiento BackupStore1. Habilite esta directiva para el servicio SvcA3 mediante la API para habilitar copia de seguridad de servicio. Esta acción reemplaza la directiva propagada BP_1 por la directiva de copia de seguridad habilitada explícitamente BP_2 para todas las particiones del servicio SvcA3 lo que da lugar a la copia de seguridad de datos con la directiva de copia de seguridad BP_2 para estas particiones.

    3. Cree una directiva de copia de seguridad, BP_3, con la programación de copia de seguridad basada en frecuencia, donde esta se establezca en 24 horas y el almacenamiento de copia de seguridad se configure para usar la ubicación de almacenamiento BackupStore2. Habilite esta directiva para la partición SvcA1_P2 mediante la API para habilitar copia de seguridad de partición. Esta acción reemplaza la directiva propagada BP_1 por la directiva de copia de seguridad habilitada explícitamente BP_3 para la partición SvcA1_P2.

  2. MyApp_B

    1. Cree una directiva de copia de seguridad, BP_4, con programación copia de seguridad basada en tiempo donde el tipo de frecuencia de programación se establezca en semanal, los días de ejecución en domingo y las horas de ejecución en 8:00 AM. El almacenamiento de copia de seguridad se configura para usar la ubicación de almacenamiento BackupStore1. Habilite esta directiva para el servicio SvcB1 mediante la API para habilitar copia de seguridad de servicio. Esta acción habilita la copia de seguridad de datos con la directiva de copia de seguridad BP_4 para todas las particiones del servicio SvcB1.

    2. Cree una directiva de copia de seguridad, BP_5, con programación de copia de seguridad basada en tiempo donde el tipo de frecuencia de programación se establezca en diaria y las horas de ejecución en 8:00 AM. El almacenamiento de copia de seguridad se configura para usar la ubicación de almacenamiento BackupStore1. Habilite esta directiva para la partición SvcB2_P1 mediante la API para habilitar copia de seguridad de partición. Esta acción habilita la copia de seguridad de datos con la directiva de copia de seguridad BP_5 para la partición SvcB2_P1.

En el diagrama siguiente se representan las directivas de copia de seguridad habilitadas explícitamente y las directivas de copia de seguridad propagadas.

Service Fabric Application Hierarchy

Deshabilitar copias de seguridad

Cuando no es necesario realizar copias de seguridad, se pueden deshabilitar las directivas de copia de seguridad. La directiva de copia de seguridad habilitada en una aplicación solo se puede deshabilitar en la misma aplicación con la API para deshabilitar copia de seguridad de aplicación, la directiva de copia de seguridad habilitada en un servicio se puede deshabilitar en el mismo servicio con la API para deshabilitar copia de seguridad de servicio y la directiva de copia de seguridad habilitada en una partición se puede deshabilitar en la misma partición con la API para deshabilitar copia de seguridad de partición.

  • Cuando se deshabilita la directiva de copia de seguridad para una aplicación, se detienen todas las copias de seguridad de datos periódicas en ejecución como resultado de la propagación de la directiva de copia de seguridad a las particiones de servicio con estado de confianza o las particiones de Reliable Actor.

  • Cuando se deshabilita la directiva de copia de seguridad para un servicio, se detienen todas las copias de seguridad de datos periódicas en ejecución como resultado de la propagación de la directiva de copia de seguridad a las particiones del servicio.

  • Cuando se deshabilita la directiva de copia de seguridad para una partición, se detienen todas las copias de seguridad de datos periódicas en ejecución debido a la directiva de copia de seguridad de la partición.

  • Al deshabilitar la copia de seguridad de una entidad (aplicación, servicio o partición), CleanBackup se puede establecer en verdadero para eliminar todas las copias de seguridad del almacenamiento configurado.

    {
        "CleanBackup": true 
    }
    

Nota:

Asegúrese de que no haya actualizaciones de aplicaciones en curso antes de deshabilitar la copia de seguridad.

Suspender y reanudar la copia de seguridad

Determinadas situaciones pueden requerir la suspensión temporal de la copia de seguridad de datos periódica. En esta situación, en función de los requisitos, se puede usar la API para suspender la copia de seguridad en una aplicación, servicio o partición. La suspensión de la copia de seguridad periódica es transitiva a través del subárbol de la jerarquía de la aplicación desde el punto en el que se aplica.

  • Cuando se aplica la suspensión en una aplicación mediante la API para suspender copia de seguridad de aplicación, se suspende la copia de seguridad de datos periódica en todos los servicios y las particiones de esta aplicación.

  • Cuando se aplica la suspensión en un servicio mediante la API para suspender copia de seguridad de servicio, se suspende la copia de seguridad de datos periódica en todas las particiones de este servicio.

  • Cuando se aplica la suspensión en una partición mediante la API para suspender copia de seguridad de partición, se suspende la copia de seguridad de datos periódica en las particiones de este servicio.

Cuando ya no sea necesaria la suspensión, la copia de seguridad de datos periódica se puede restaurar mediante la respectiva API para reanudar la copia de seguridad. Las copias de seguridad periódicas se deben reanudar en la misma aplicación, servicio o partición donde se suspendió.

Diferencia entre suspender y deshabilitar copias de seguridad

Deshabilitar copias de seguridad debe usarse cuando las copias de seguridad ya no sean necesarias para una determinada aplicación, servicio o partición. Se puede invocar la solicitud de deshabilitar copias de seguridad junto con el parámetro de limpiar copias de seguridad establecido en verdadero, lo que significaría que también se eliminarían todas las copias de seguridad existentes. Sin embargo, suspender debe usarse en escenarios donde se desea desactivar las copias de seguridad temporalmente, como cuando se llena el disco local o se producen errores al cargar la copia de seguridad debido a un problema de red conocido.

Mientras la deshabilitación solo se puede invocar en el nivel en el que la copia de seguridad se había habilitado explícitamente; sin embargo, la suspensión se puede aplicar en cualquier nivel en el que esté habilitada la copia de seguridad ya sea directamente o a través de herencia o jerarquía. Por ejemplo, si está habilitada la copia de seguridad en nivel de aplicación, la deshabilitación se puede invocar solo en el nivel de la aplicación; sin embargo, la suspensión se puede invocar en la aplicación, cualquier servicio o partición de esa aplicación.

Restaurar automáticamente en caso de pérdida de datos

La partición de servicio puede perder datos debido a errores inesperados. Por ejemplo, el disco de dos de las tres réplicas de una partición (incluida la réplica principal) sufre daños o se borra.

Cuando Service Fabric detecta que la partición está perdiendo datos, invoca al método de interfaz OnDataLossAsync en la partición y espera que la partición realice la acción necesaria para dejar de perder datos. En esta situación, si la directiva de copia de seguridad efectiva en la partición tiene la marca AutoRestoreOnDataLoss establecida en true, la restauración se desencadena automáticamente con la copia de seguridad más reciente disponible para esta partición.

Nota:

Se recomienda NO establecer la restauración automática en los clústeres de producción.

Obtener la configuración de copia de seguridad

Están disponibles API independientes para obtener la información de configuración de copia de seguridad en el ámbito de una aplicación, un servicio y una partición. Estas son las API para obtener información de configuración de copia de seguridad de aplicación, obtener información de configuración de copia de seguridad de servicio y obtener información de configuración de copia de seguridad de partición, respectivamente. Principalmente, estas API devuelven la directiva de copia de seguridad aplicable, el ámbito en la que la directiva de copia de seguridad se aplica y los detalles de la suspensión de la copia de seguridad. La siguiente es una breve descripción sobre los resultados devueltos de estas API.

  • Información de configuración de copia de seguridad de aplicación: proporciona los detalles de la directiva de copia de seguridad aplicada en la aplicación y todas las directivas reemplazadas en servicios y particiones que pertenecen a la aplicación. También incluye la información de la suspensión de la aplicación, los servicios y las particiones.

  • Información de configuración de copia de seguridad de servicio: proporciona los detalles de la directiva de copia de seguridad efectiva en el servicio y el ámbito en que se aplicó esta directiva y todas las directivas reemplazadas en sus particiones. También incluye la información de la suspensión del servicio y las particiones.

  • Información de configuración de copia de seguridad de partición: proporciona los detalles de la directiva de copia de seguridad efectiva en la partición y el ámbito en que se aplicó esta directiva. También incluye la información de la suspensión para las particiones.

Listar copias de seguridad disponibles

Las copias de seguridad disponibles se pueden enumerar mediante la API para obtener la lista de copias de seguridad. El resultado de la llamada de API incluye elementos de información de copia de seguridad relacionados con todas las copias de seguridad disponibles en el almacenamiento de copia de seguridad, que se configura en la directiva de copia de seguridad aplicable. Se proporcionan distintas variantes de esta API para enumerar las copias de seguridad disponibles que pertenecen a una aplicación, servicio o partición. Estas API admiten la obtención de la copia de seguridad más reciente disponible de todas las particiones aplicables o el filtrado de copias de seguridad en función de la fecha de inicio y fecha de finalización.

Estas API también admiten la paginación de los resultados, cuando el parámetro MaxResults se establece en un número entero positivo distinto de cero, la API devuelve los elementos de información de copia de seguridad MaxResults máximos. En el caso de que haya más elementos de información de copia de seguridad que el valor de MaxResults, se devuelve un token de continuación. El parámetro de token de continuación válido se puede utilizar para obtener el siguiente conjunto de resultados. Cuando el valor de token de continuación válido se pasa a la siguiente llamada de la API, esta devuelve el siguiente conjunto de resultados. No se incluye ningún token de continuación en la respuesta cuando se devuelven todos los resultados disponibles.

La información resumida de las variantes admitidas es la siguiente.

Pasos siguientes