Existe quiesce para o Linux?

8

Quiescing um sistema de arquivos permite que você faça um backup do banco de dados enquanto ainda está em execução e outros programas e suas dados também.

O aplicativo geralmente precisa ser notificado sobre a operação de backup quiesce porque todos os buffers precisam ser liberados para o disco e quaisquer solicitações de gravação recebidas precisam ser interrompidas para que um backup válido possa ser criado sem interromper completamente o sistema.

O Linux ainda tem algum suporte para esse tipo de coisa? Eu li que o Microsoft Windows tem suporte para isso desde o Windows Server 2003, e eu vi alguns lugares onde eles falam sobre como isso pode ser feito com o Linux usando uma VM. Mas não sei quais VMs específicas, se as VMs precisam estar em execução no Windows como um host.

Além disso, e as plataformas que estão acima do nível do SO, como o Java? Existe algum suporte para quiesce lá?

    
por leeand00 20.09.2012 / 03:33

1 resposta

8

Quando você faz um instantâneo LVM, os dados pendentes (nos buffers do kernel, não nos aplicativos ') são liberados para o disco e os aplicativos são bloqueados enquanto o instantâneo está em andamento. Você também pode congelar um FS da mesma maneira se estiver fazendo backup do dispositivo de bloco no qual o FS está ligado por algum meio externo (como se o disco fosse virtual e estivesse fazendo o backup no host) usando fsfreeze ou xfs_aio . Sistemas de arquivos que implementam snapshots (como BTRFS, NILFS, ZFS ...) também fazem isso. Em geral, os instantâneos nesses níveis garantem que os dados no instantâneo são um congelamento instantâneo do que foi confirmado no FS em um determinado momento e o FS congelado está em um estado de limpeza consistente.

Como para dizer aos aplicativos para quiesce e liberar seus dados bufferizados para o FS, não há estrutura geral e, na última vez que verifiquei, o consenso geral era de que seria mais provável causar danos ao introduzir complexidade desnecessária e bugs associados que melhoram os problemas, pois os aplicativos devem se concentrar em ter seus dados em formato consistente no disco em caso de falha do sistema / hardware de qualquer maneira.

Alguns aplicativos, como alguns bancos de dados, podem ser informados para fazer quiesce como o FLUSH TABLES WITH READ LOCK do MySQL.

    
por 20.09.2012 / 08:40