Instantâneos

Um instantâneo é um subconjunto nomeado e imutável dos valores-chave de uma loja de Configuração de Aplicativos. Os pares chave-valor que compõem uma captura são escolhidos no momento da criação, através da utilização de filtros de chave e de rótulo. Depois que um snapshot é criado, os valores-chave dentro têm a garantia de permanecer inalterados.

Uma breve visão geral está disponível neste vídeo, destacando três razões pelas quais os instantâneos podem ser úteis para você.

Implante com segurança com snapshots

Os snapshots são projetados para implantar alterações de configuração com segurança. A implantação de alterações de configuração defeituosas em um ambiente em execução pode causar problemas como interrupção do serviço e perda de dados. Para evitar esses problemas, é importante ser capaz de examinar as alterações de configuração antes de passar para ambientes de produção. Se esse problema ocorrer, é importante ser capaz de reverter quaisquer alterações de configuração defeituosas para restaurar o serviço. As capturas instantâneas são criadas para gerir estes cenários.

As alterações de configuração devem ser implantadas de forma controlada e consistente. Os desenvolvedores podem usar snapshots para realizar uma implementação controlada. A única alteração necessária em um aplicativo para iniciar uma distribuição controlada é atualizar o nome do instantâneo ao qual o aplicativo está se referindo. À medida que a aplicação passa para produção, é garantido que a configuração no snapshot referenciado permanece inalterada. Esta garantia contra qualquer alteração num snapshot protege contra configurações inesperadas que cheguem à produção. A imutabilidade e a facilidade de referência dos snapshots simplificam a garantia de que o conjunto certo de alterações de configuração seja implementado com segurança.

Cenários para o uso de snapshots

  • Distribuição controlada: os snapshots, devido à sua natureza imutável, são adequados para suportar a distribuição controlada. Quando os desenvolvedores utilizam snapshots para configuração, eles podem ter certeza de que a configuração permanece inalterada à medida que a versão progride através de diferentes fases da implantação.

  • Configuração do Last Known Good (LKG): os snapshots podem ser usados para dar suporte a práticas de implantação seguras para Configuração. Com snapshots, os desenvolvedores podem garantir que uma configuração do Last known Good (LKG) esteja disponível para reversão se houver algum problema durante a implantação.

  • Controle de versão de configuração: os instantâneos podem ser usados para criar um historial de versões das definições de configuração para sincronizar com as versões de lançamento. As configurações capturadas em cada instantâneo podem ser comparadas para identificar alterações entre versões.

  • Auditoria: Utilize snapshots para fins de auditoria e conformidade. Os programadores podem manter um registo das alterações de configuração entre lançamentos utilizando snapshots para os lançamentos.

  • Ambientes de teste e preparação: os snapshots podem ser usados para criar ambientes de teste e preparo consistentes. Os desenvolvedores podem garantir que a mesma configuração seja usada em ambientes diferentes, usando o mesmo instantâneo, o que pode ajudar na depuração e no teste.

  • Composição simplificada da configuração do cliente: Normalmente, os clientes de Configuração de Aplicações necessitam de um subconjunto dos valores-chave de uma instância de Configuração de Aplicação. Sem snapshots, os clientes precisam de lógica de consulta no código para recuperar os valores-chave necessários. Como os snapshots suportam filtros na criação, os clientes podem referir-se ao conjunto necessário de valores-chave pelo nome.

Operações de instantâneo

Como os snapshots são imutáveis, podes criá-los e arquivá-los, mas não podes apagar, eliminar ou editar.

  • Criar instantâneo: os instantâneos podem ser criados definindo os filtros de chave e rótulo para capturar os valores-chave necessários da instância de Configuração do Aplicativo. Os valores-chave filtrados são armazenados como um instantâneo com o nome fornecido durante a criação.

  • Arquivar instantâneo: arquivar um instantâneo o coloca em um estado arquivado. Embora um snapshot seja arquivado, ele ainda é totalmente funcional. Quando o snapshot é arquivado, um tempo de expiração é definido com base no período de retenção configurado durante a criação do snapshot. Se o snapshot permanecer no estado arquivado até o tempo de expiração, ele desaparecerá automaticamente do sistema quando o tempo de expiração passar. O arquivamento é utilizado para descontinuar snapshots que já não estão a ser utilizados.

  • Recuperar snapshot: a recuperação de um snapshot o coloca de volta em um estado ativo. Neste ponto, o snapshot não está mais sujeito à expiração com base em seu período de retenção configurado. A recuperação só é possível no período de retenção após o arquivamento.

Nota

O período de retenção só pode ser definido durante a criação de um snapshot. O valor padrão para o período de retenção é de 30 dias para lojas de nível Standard e Premium e 7 dias para lojas de nível gratuito e de desenvolvedor.

Requisitos para operações de instantâneo

As secções seguintes detalham as permissões necessárias para executar operações relacionadas com snapshots com o Microsoft Entra ID e autenticação HMAC.

Criar um instantâneo

Para criar um instantâneo nas lojas com autenticação do Microsoft Entra, são necessárias as seguintes permissões. A função Proprietário de Dados de Configuração do Aplicativo já tem essas permissões.

  • Microsoft.AppConfiguration/configurationStores/keyvalues/read
  • Microsoft.AppConfiguration/configurationStores/snapshots/write

Para criar um instantâneo com autenticação HMAC, deve ser utilizada uma chave de acesso com permissões de leitura e escrita.

Arquivar e recuperar um instantâneo

Para arquivar e/ou recuperar um instantâneo usando a autenticação do Microsoft Entra, a seguinte permissão é necessária. A função Proprietário de Dados de Configuração do Aplicativo já tem essa permissão.

  • Microsoft.AppConfiguration/configurationStores/snapshots/archive/action

Para arquivar e/ou recuperar um snapshot usando a autenticação HMAC, uma chave de acesso de leitura-gravação deve ser usada.

Ler e listar capturas instantâneas

Para listar todos os snapshots ou obter todos os valores-chave de um snapshot individual por nome, precisa da seguinte permissão para lojas que utilizam autenticação Microsoft Entra. Os papéis incorporados de Proprietário de Dados e Leitor de Dados já incluem esta permissão.

  • Microsoft.AppConfiguration/configurationStores/snapshots/read

Para armazenamentos que usam autenticação HMAC, a operação "ler instantâneo" (para ler os valores-chave de um instantâneo) e a operação "listar instantâneos" podem ser executadas usando as chaves de acesso de leitura-gravação ou as chaves de acesso somente leitura.

Considerações e limites de faturamento

A Configuração do Aplicativo tem quatro camadas: Gratuita, Desenvolvedora, Standard e Premium. A tabela a seguir resume as cotas de armazenamento de snapshot para cada camada:

Escalão de serviço Cota de armazenamento de snapshot
Gratuito 10 MB
Desenvolvedor 500 MB
Standard 1 GB
Premium 4 GB

Você pode criar quantos snapshots forem necessários, desde que o tamanho total de armazenamento de todos os snapshots ativos e arquivados não exceda a cota do seu nível. O tamanho máximo de um instantâneo individual é de 1 MB.

Próximos passos