Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Você pode fazer backup de dados de serviços com estado confiáveis e atores confiáveis para lidar com cenários de desastre ou perda de dados.
O Azure Service Fabric tem recursos para o backup periódico de dados e o backup de dados com base na necessidade. O backup sob demanda é útil porque protege contra perda/de dados, corrupção de dados devido a alterações planejadas no serviço subjacente ou em seu ambiente.
Os recursos de backup sob demanda são úteis para capturar o estado dos serviços antes de acionar manualmente uma operação de serviço ou ambiente de serviço. Por exemplo, se você fizer uma alteração nos binários de serviço ao atualizar ou fazer downgrade do serviço. Nesse caso, o backup sob demanda pode ajudar a proteger os dados contra corrupção por bugs de código do aplicativo.
Pré-requisitos
- Instale o módulo Microsoft.ServiceFabric.Powershell.Http para fazer chamadas de configuração.
Install-Module -Name Microsoft.ServiceFabric.Powershell.Http -AllowPrerelease
Nota
Se sua versão do PowerShellGet for menor que 1.6.0, você precisará atualizar para adicionar suporte para o sinalizador -AllowPrerelease :
Install-Module -Name PowerShellGet -Force
- Verifique se o Cluster está conectado usando o comando
Connect-SFCluster
antes de fazer qualquer solicitação de configuração usando o módulo Microsoft.ServiceFabric.Powershell.Http.
Connect-SFCluster -ConnectionEndpoint 'https://mysfcluster.southcentralus.cloudapp.azure.com:19080' -X509Credential -FindType FindByThumbprint -FindValue '1b7ebe2174649c45474a4819dafae956712c31d3' -StoreLocation 'CurrentUser' -StoreName 'My' -ServerCertThumbprint '1b7ebe2174649c45474a4819dafae956712c31d3'
Acionando o backup sob demanda
O backup sob demanda requer detalhes de armazenamento para carregar arquivos de backup. Você especifica o local de backup sob demanda, seja na política de backup periódico ou em uma solicitação de backup sob demanda.
Backup sob demanda para armazenamento especificado por uma política de backup periódico
Você pode configurar a política de backup periódico para usar uma partição de um serviço Reliable Stateful ou Reliable Ator para backup extra sob demanda para armazenamento.
O caso a seguir é a continuação do cenário em Configurando backups periódicos para um serviço stateful de confiança e atores de confiança. Nesse caso, você habilita uma política de backup para usar uma partição e um backup ocorre em uma frequência definida no Armazenamento do Azure.
PowerShell usando o módulo Microsoft.ServiceFabric.Powershell.Http
Backup-SFPartition -PartitionId '974bd92a-b395-4631-8a7f-53bd4ae9cf22'
Chamada de repouso usando o PowerShell
Use a API BackupPartition para configurar o acionamento para o backup sob demanda para ID 974bd92a-b395-4631-8a7f-53bd4ae9cf22
de partição.
$url = "https://mysfcluster.southcentralus.cloudapp.azure.com:19080/Partitions/974bd92a-b395-4631-8a7f-53bd4ae9cf22/$/Backup?api-version=6.4"
Invoke-WebRequest -Uri $url -Method Post -ContentType 'application/json' -CertificateThumbprint '1b7ebe2174649c45474a4819dafae956712c31d3'
Use a API GetBackupProgress para habilitar o acompanhamento do progresso do backup a pedido.
Backup sob demanda para armazenamento especificado
Você pode solicitar backup sob demanda para uma partição de um serviço Reliable Stateful ou Reliable Ator. Forneça as informações de armazenamento como parte da solicitação de backup sob demanda.
PowerShell usando o módulo Microsoft.ServiceFabric.Powershell.Http
Backup-SFPartition -PartitionId '974bd92a-b395-4631-8a7f-53bd4ae9cf22' -ManagedIdentityAzureBlobStore -FriendlyName "AzureMI_storagesample" -BlobServiceUri 'https://<account-name>.blob.core.windows.net' -ContainerName 'backup-container' -ManagedIdentityType "VMSS" -ManagedIdentityClientId "<Client-Id of User-Assigned MI>"
# Use Optional parameter `ManagedIdentityClientId` with Client-Id of User-Assigned Managed Identity in case of multiple User-Assigned Managed Identities assigned to your resource, or both SAMI & UAMI assigned and we need to use UAMI as the default, else no need of this paramter.
Chamada de repouso usando o PowerShell
Use a API BackupPartition para configurar o acionamento para o backup sob demanda para ID 974bd92a-b395-4631-8a7f-53bd4ae9cf22
de partição. Inclua as seguintes informações de Armazenamento do Azure:
$StorageInfo = @{
StorageKind = "ManagedIdentityAzureBlobStore"
FriendlyName = "AzureMI_storagesample"
BlobServiceUri = "https://<account-name>.blob.core.windows.net"
ContainerName = "backup-container"
ManagedIdentityType = "VMSS"
ManagedIdentityClientId = "<Client-Id of User-Assigned MI>" # Use Optional parameter `ManagedIdentityClientId` with Client-Id of User-Assigned Managed Identity in case of multiple User-Assigned Managed Identities assigned to your resource, or both SAMI & UAMI assigned and we need to use UAMI as the default, else no need of this paramter.
}
$OnDemandBackupRequest = @{
BackupStorage = $StorageInfo
}
$body = (ConvertTo-Json $OnDemandBackupRequest)
$url = "https://mysfcluster.southcentralus.cloudapp.azure.com:19080/Partitions/974bd92a-b395-4631-8a7f-53bd4ae9cf22/$/Backup?api-version=6.4"
Invoke-WebRequest -Uri $url -Method Post -Body $body -ContentType 'application/json' -CertificateThumbprint '1b7ebe2174649c45474a4819dafae956712c31d3'
Você pode usar a API GetBackupProgress para configurar o acompanhamento do progresso do backup a pedido.
Usando o Service Fabric Explorer
Verifique se o Modo Avançado foi habilitado nas configurações do Service Fabric Explorer.
Selecione as partições desejadas e selecione em Ações.
Selecione Trigger Partition Backup e preencha as informações do Azure:
ou FileShare:
Acompanhamento do progresso do backup sob demanda
Uma partição de um serviço Reliable Stateful ou Reliable Ator aceita apenas uma solicitação de backup sob demanda de cada vez. Outra solicitação só pode ser aceita após a conclusão da solicitação de backup sob demanda atual.
Partições diferentes podem disparar solicitações de backup sob demanda ao mesmo tempo.
PowerShell usando o módulo Microsoft.ServiceFabric.Powershell.Http
Get-SFPartitionBackupProgress -PartitionId '974bd92a-b395-4631-8a7f-53bd4ae9cf22'
Chamada de repouso usando o PowerShell
$url = "https://mysfcluster-backup.southcentralus.cloudapp.azure.com:19080/Partitions/974bd92a-b395-4631-8a7f-53bd4ae9cf22/$/GetBackupProgress?api-version=6.4"
$response = Invoke-WebRequest -Uri $url -Method Get -CertificateThumbprint '1b7ebe2174649c45474a4819dafae956712c31d3'
$backupResponse = (ConvertFrom-Json $response.Content)
$backupResponse
As solicitações de backup sob demanda podem estar nos seguintes estados:
-
Aceito: O backup foi iniciado na partição e está em andamento.
BackupState : Accepted TimeStampUtc : 0001-01-01T00:00:00Z BackupId : 00000000-0000-0000-0000-000000000000 BackupLocation : EpochOfLastBackupRecord : LsnOfLastBackupRecord : 0 FailureError :
-
Êxito, falha ou tempo limite: um backup sob demanda solicitado pode ser concluído em qualquer um dos seguintes estados:
-
Êxito: Um estado de backup Êxito indica que o estado da partição foi guardado com sucesso. A resposta fornece BackupEpoch e BackupLSN para a partição, juntamente com a hora em UTC.
BackupState : Success TimeStampUtc : 2018-11-21T20:00:01Z BackupId : 5d64b697-6acd-45a4-adbd-3d75e0078081 BackupLocation : SampleApp\MyStatefulService\974bd92a-b395-4631-8a7f-53bd4ae9cf22\2018-11-21 20.00.01.zip EpochOfLastBackupRecord : @{DataLossNumber=131873018908156893; ConfigurationNumber=8589934592} LsnOfLastBackupRecord : 36 FailureError :
-
Falha: Um estado de backup de falha indica que ocorreu uma falha durante o backup do estado da partição. A causa da falha é declarada em resposta.
BackupState : Failure TimeStampUtc : 0001-01-01T00:00:00Z BackupId : 00000000-0000-0000-0000-000000000000 BackupLocation : EpochOfLastBackupRecord : LsnOfLastBackupRecord : 0 FailureError : @{Code=FABRIC_E_BACKUPCOPIER_UNEXPECTED_ERROR; Message=An error occurred during this operation. Please check the trace logs for more details.}
-
Tempo limite: um estado de backup de tempo limite indica que o backup do estado da partição não pôde ser criado em um determinado período de tempo. O valor de tempo limite padrão é 10 minutos. Inicie uma nova solicitação de backup sob demanda com maior BackupTimeout nesse cenário.
BackupState : Timeout TimeStampUtc : 0001-01-01T00:00:00Z BackupId : 00000000-0000-0000-0000-000000000000 BackupLocation : EpochOfLastBackupRecord : LsnOfLastBackupRecord : 0 FailureError : @{Code=FABRIC_E_TIMEOUT; Message=The request of backup has timed out.}
-
Êxito: Um estado de backup Êxito indica que o estado da partição foi guardado com sucesso. A resposta fornece BackupEpoch e BackupLSN para a partição, juntamente com a hora em UTC.