Esta página descreve o desempenho médio esperado e as configurações de desempenho recomendadas para o Filestore. Ela também mostra como testar o desempenho das instâncias do Filestore.
Desempenho esperado
Cada nível de serviço do Filestore fornece um nível diferente de desempenho. O desempenho de qualquer instância pode ser diferente do esperado devido a vários fatores, como o uso de armazenamento em cache, a quantidade de VMs, o tipo de máquina das VMs de cliente e a carga de trabalho testada.
Nas tabelas a seguir, você encontra o desempenho esperado das instâncias do Filestore com base no nível de serviço e na capacidade configurada:
Desempenho | Capacidade | IOPS de leitura e gravação | Capacidade de leitura e gravação (MiB/s) |
---|---|---|---|
BASIC_HDD |
De 1 TiB a 10 TiB | 600/1.000 | 100/100 |
BASIC_HDD |
De 10 TiB a 63,9 TiB | 1.000/5.000 | 180/120 |
BASIC_SSD |
De 2,5 TiB a 63,9 TiB | 60.000/25.000 | 1.200/350 |
ZONAL |
1 TiB | 9.200/2.600 | 260/88 |
ZONAL |
9,75 TiB | 89.700/25.350 | 2.535/858 |
ZONAL |
10 TiB | 92.000/26.000 | 2.600/880 |
ZONAL |
100 TiB | 920.000/260.000 | 26.000/8.800 |
REGIONAL |
1 TiB | 12.000/4.000 | 120/100 |
REGIONAL |
9,75 TiB | 117.000/39.000 | 1.170/975 |
REGIONAL |
10 TiB | 92.000/26.000 | 2.600/880 |
REGIONAL |
100 TiB | 920.000/260.000 | 26.000/8.800 |
ENTERPRISE |
1 TiB | 12.000/4.000 | 120/100 |
ENTERPRISE |
10 TiB | 120.000/40.000 | 1.200/1.000 |
A tabela anterior mostra o desempenho esperado nos níveis mínimo e máximo e a capacidade de cada nível de serviço. Entre esses limites, a performance escalona linearmente como as escalas de capacidade. Por exemplo, se você dobrar a instância corporativa de 1 TiB para 2 TiB, o desempenho esperado da instância dobra de 12.000/4.000 IOPS de leitura e gravação para 24.000/8.000 IOPS de leitura e gravação IOPS de armazenamento.
Em cenários com um ou poucos clientes, é preciso aumentar o número de
com o
nconnect
para atingir o desempenho máximo do NFS. Recomendamos especificar até
7
conexões para o nível de serviço zonal e até 2
conexões para os
níveis regional e Enterprise. Em geral, quanto maior a capacidade de compartilhamento
de arquivos e menos VMs de cliente conectadas, mais desempenho você terá
ao especificar outras conexões com nconnect
.
Tipo de máquina de cliente recomendado
Recomendamos um tipo de máquina do Compute Engine, como n2-standard-8
,
que ofereça uma largura de banda de saída de 16 Gbps
. Essa largura de banda de saída permite
atingir aproximadamente 16 Gbps
de largura de banda de leitura para armazenamento em cache
do Google Cloud. Para mais contexto, consulte Largura de banda de rede.
Opções de ativação do cliente Linux
Recomendamos o uso das seguintes opções de montagem de NFS, especialmente hard
mount, async
, e as opções rsize
e wsize
, para conseguir o melhor
em instâncias de VM do cliente Linux. Para mais informações sobre as opções de montagem do NFS, consulte nfs.
Opção padrão | Descrição |
---|---|
hard |
O cliente NFS repete solicitações NFS indefinidamente. |
timeo=600 |
O cliente NFS aguarda 600 segundos (60 segundos) antes de tentar novamente uma solicitação NFS. |
retrans=3 |
O cliente NFS tenta fazer solicitações NFS três vezes antes de realizar outras ações de recuperação. |
rsize=262144 |
O cliente NFS pode receber no máximo 262.144 bytes do servidor NFS por solicitação READ . Observação: para instâncias de nível básico, defina o valor rsize como 1048576 . |
wsize=1048576 |
O cliente NFS pode enviar no máximo 1.048.576 bytes (1 MiB) para o servidor NFS por solicitação WRITE . |
resvport |
O cliente NFS usa uma porta de origem com privilégios ao se comunicar com o servidor NFS para esse ponto de montagem. |
async |
O cliente NFS atrasa o envio de gravações de aplicativos para o servidor NFS até que determinadas condições sejam atendidas. Cuidado: o uso da opção sync reduz significativamente o desempenho. |
Desempenho de VM de cliente único e várias VMs
Os níveis de serviço escalonáveis do Filestore têm desempenho otimizado para várias VMs de cliente, e não apenas uma VM de cliente.
Para instâncias zonais, regionais e corporativas, pelo menos quatro VMs de clientes são necessárias para aproveitar o desempenho total. Isso garante que todas as VMs no cluster subjacente do Filestore sejam totalmente utilizados.
Para mais contexto, o menor cluster escalonável do Filestore tem quatro
ou de várias VMs. Cada VM de cliente se comunica com apenas um cluster do Filestore
VM, independentemente do número de conexões NFS por cliente especificado com o
nconnect
de montagem. Se você estiver usando uma única VM de cliente, as operações de leitura e gravação serão
realizadas apenas em uma única VM de cluster do Filestore.
Melhorar o desempenho nos recursos do Google Cloud
Operações em vários recursos do Google Cloud, como cópia de dados do Cloud Storage para uma instância do Filestore usando o CLI gcloud. Isso pode ser lento. Para ajudar a reduzir os problemas de desempenho, tente o seguinte:
Verifique se o bucket do Cloud Storage, a VM cliente e a instância do Filestore estão na mesma região.
As regiões birregionais oferecem uma com o melhor desempenho possível para dados armazenados no Cloud Storage. Se estiver usando essa opção, os outros recursos devem residir em uma das regiões únicas no local birregional. Por exemplo, se os dados do Cloud Storage está em
us-central1,us-west1
, verifique se a VM do cliente e A instância do Filestore fica emus-central1
.Como ponto de referência, verifique o desempenho de uma VM conectada ao DP e em comparação com o desempenho de uma instância do Filestore.
Se a VM conectada ao DP tiver desempenho semelhante ou mais lento do que instância do Filestore, isso pode indicar um problema de não relacionado ao Filestore. Para melhorar a linha de base de seus recursos que não são do Filestore, ajuste o Propriedades da CLI gcloud associadas a uploads compostos paralelos. Para mais informações, consulte Como as ferramentas e as APIs usam uploads compostos paralelos.
Se a performance da instância do Filestore for consideravelmente mais lenta do que a VM anexada ao PD, tente distribuir a operação em várias VMs.
Isso ajuda a melhorar o desempenho das operações de leitura do Cloud Storage.
Para instâncias zonais, regionais e corporativas, pelo menos quatro VMs de cliente para aproveitar o desempenho total. Isso garante que todos das VMs no cluster subjacente do Filestore estão totalmente utilizadas. Para mais informações, consulte Desempenho de VM de cliente único e várias VMs.
Como testar o desempenho
Se você estiver usando o Linux, use a ferramenta fio para comparar as capacidades de leitura e gravação e a IOPS para instâncias do nível básico. Esse método para comparar o desempenho não é recomendado para regionais e empresariais.
Os exemplos nesta seção mostram comparativos comuns que é possível executar. Para garantir o melhor desempenho, pode ser necessário executar a ferramenta fio de várias instâncias de VM do cliente.
O exemplo a seguir compara a capacidade máxima de gravação:
fio --ioengine=libaio --filesize=32G --ramp_time=2s \ --runtime=5m --numjobs=16 --direct=1 --verify=0 --randrepeat=0 \ --group_reporting --directory=/mnt/nfs \ --name=write --blocksize=1m --iodepth=64 --readwrite=write
O exemplo a seguir compara a IOPS máxima de gravação:
fio --ioengine=libaio --filesize=32G --ramp_time=2s \ --runtime=5m --numjobs=16 --direct=1 --verify=0 --randrepeat=0 \ --group_reporting --directory=/mnt/nfs \ --name=randwrite --blocksize=4k --iodepth=256 --readwrite=randwrite
O exemplo a seguir compara as capacidades máximas de leitura:
fio --ioengine=libaio --filesize=32G --ramp_time=2s \ --runtime=5m --numjobs=16 --direct=1 --verify=0 --randrepeat=0 \ --group_reporting --directory=/mnt/nfs \ --name=read --blocksize=1m --iodepth=64 --readwrite=read
O exemplo a seguir compara a IOPS máxima de leitura:
fio --ioengine=libaio --filesize=32G --ramp_time=2s \ --runtime=5m --numjobs=16 --direct=1 --verify=0 --randrepeat=0 \ --group_reporting --directory=/mnt/nfs \ --name=randread --blocksize=4k --iodepth=256 --readwrite=randread