Avamar — como definir o tamanho dos caches do Avamar Client para evitar que estouros de cache causem problemas de desempenho do backup
Summary: Este artigo explica como definir o cache do Avamar Client para evitar estouro de cache que pode levar a desempenho lento do backup.
Instructions
Verifique se o cache do client precisa de ajuste.
Não altere o arquivo de cache se ele estiver devidamente dimensionado. Não haverá nenhum efeito benéfico sobre o desempenho.
Regras para ajustar os tamanhos máximos de cache
Certifique-se de que os caches fiquem tão grandes que o client acabe trocando porque não tem RAM física suficiente para lidar com todos os processos. Swapping é o movimento de páginas de memória entre a RAM e o disco.
Práticas recomendadas para ajustar os tamanhos máximos de cache:
- Nunca permita que os tamanhos totais de cache combinados excedam um quarto do total de RAM física disponível.
- Defina os tamanhos máximos de arquivo e cache de hash para uma fração do total de RAM física disponível. Especifique os tamanhos do arquivo e do cache de hash usando inteiros negativos.
- Limite os tamanhos totais do cache para aproximadamente um quarto da RAM física.
- Defina um dos caches como -5 (isso equivale a 20% da RAM do client) e defina o outro cache como -32 (3% da RAM do client).
- Por exemplo, para um client de banco de dados grande, use as seguintes configurações:
--filecachemax=-32
--hashcachemax=-5 - Se estiver usando algo diferente dos tamanhos de cache padrão, inclua as configurações máximas personalizadas de cache no arquivo avtar.cmd no client.
- Às vezes, a única opção pode ser aumentar a quantidade de RAM física no client. Você também pode fazer backup do client usando vários conjuntos de dados menores.
- Se necessário, limite os tamanhos dos caches abaixo dos valores ideais:
- Para um servidor de arquivos típico, primeiro aloque a RAM necessária para o cache de arquivos.
- Para um client de banco de dados típico, primeiro aloque a RAM necessária para o cache de hash.
Ajustando o cache de arquivos
Se o cache de arquivos for excluído, não utilizado ou subdimensionado, todos os arquivos que não forem atingidos no cache de arquivos deverão ser processados. O processamento envolve leitura, fragmentação, compactação e hash do conteúdo do arquivo.
Isso ocorre antes que o processo do Avamar possa verificar se os hashes foram enviados anteriormente ao Avamar Server.
Se existir um arquivo no cache de arquivos, ele não precisará ser lido pelo avtar.
Isso economiza tempo e processamento significativos e minimiza a duração do backup.
Por padrão, o cache de arquivos pode consumir até um oitavo da RAM física no Avamar Client.
Por exemplo, se o client tiver 4 GB de RAM, o cache do arquivo será limitado a 4 GB divididos por 8 ou 512 MB no máximo.
O cache de arquivos dobra de tamanho sempre que precisa aumentar.
Os tamanhos de cache do arquivo podem ser (em Megabytes): 5,5 MB, 11 MB, 22 MB, 44 MB, 88 MB, 176 MB, 352 MB, 704 MB e 1.408 MB.
Como o programa avtar é um aplicativo de 32 bits, o tamanho máximo de cache de arquivo que o avtar pode usar é limitado a menos de 2 GB.
Em um exemplo em que um cliente tem 4 GB de RAM, o tamanho máximo do cache do arquivo é 352 MB.
Cada entrada em um cache de arquivos consiste em um cabeçalho de 4 bytes mais dois hashes SHA-1 de 20 bytes (total de 44 bytes):
- Entrada de hash SHA-1 dos atributos do arquivo.
Os atributos de arquivo incluem: Nome do arquivo, caminho do arquivo, hora de modificação, tamanho do arquivo, proprietário, grupo e permissões. - Entrada de hash SHA-1 para o hash do conteúdo real do arquivo, independente dos atributos do arquivo.
Regra de cache de arquivos
Se o client consistir em N milhões de arquivos, o cache de arquivos deverá ser de pelo menos N milhões de arquivos x 44 milhões de bytes/milhão de arquivos. Isso significa que o cache de arquivos deve ser pelo menos N x 44 MB, em que N é o número de milhões de arquivos no backup.
Exemplo — cache de arquivos
Quando um cliente tem 4 milhões de arquivos, o cache do arquivo deve ter pelo menos 176 MB (4 x 44 MB). O cache de arquivos deve ter permissão para aumentar para 176 MB para acomodar todos os arquivos.
Prática recomendada:
O cache de arquivos deve ser de no mínimo N x 44 MB, em que N é o número de milhões de arquivos no backup. O cache de arquivos dobra de tamanho cada vez que cresce. Para dimensionar adequadamente o cache de arquivos:
- Defina o valor --filecachemax da seguinte maneira:
--filecachemax = 2 x N x 44
Em que N é o número de milhões de arquivos no backup. - Defina o --hashcachemax para um valor pequeno, como:
--hashcachemax=30
Ajustando o cache de hash
Se o processo avtar descobrir que um hash de um fragmento não está contido no cache de hash, ele consultará o servidor Avamar para verificar a presença do hash.
Por padrão, o cache de hash pode consumir até um décimo sexto da RAM física no Avamar Client.
Usando o mesmo client com 4 GB de RAM descrito em "Ajustando o cache de arquivos", o cache de hash é limitado a 4 GB/16 ou 256 MB no máximo.
O cache de hash também dobra de tamanho cada vez que precisa aumentar.
Os tamanhos atuais do cache de hash estão em megabytes: 24 MB, 48 MB, 96 MB, 192 MB, 384 MB, 768 MB e assim por diante. Neste exemplo, em que um client tem 4 GB de RAM, o tamanho máximo do cache de hash é 192 MB.
Cada entrada em um cache de hash consiste em um cabeçalho de 4 bytes mais um hash SHA-1 por fragmento ou composto, que é o hash do conteúdo do fragmento ou composto.
Regra de cache de hash
Se o client consistir em Y GB de dados de banco de dados, o cache de hash deverá ter pelo menos YGB/tamanho médio do fragmento x 24 milhões de bytes/milhão de fragmentos.
Use 24 KB como o tamanho médio do fragmento para todos os backups.
O cache de hash deve ser de pelo menos Y MB, em que Y é o número de GB de dados do banco de dados no backup.
Exemplo — cache de hash
Quando um client de banco de dados tem 500 GB de dados de banco de dados, o cache de hash deve ter permissão para aumentar para pelo menos 500 MB.
O cache de hash deve ter permissão para aumentar para o próximo tamanho incremental (768 MB) para acomodar os hashes de todos os fragmentos em um backup de banco de dados.
Prática recomendada
O cache de hash deve ser de no mínimo Y MB, em que Y é o tamanho do banco de dados que está sendo submetido a backup em GB.
O cache de hash dobra de tamanho cada vez que cresce.
Para dimensionar adequadamente o cache de hash, defina o valor --hashcachemax da seguinte maneira:
--hashcachemax = 2 x Y
Em que Y é o tamanho do banco de dados a ser submetido a backup em GB.