Nesta página, descrevemos como ajustar clientes NFS do Linux que montam exportações de NetApp Volumes. Para muitas cargas de trabalho, não é necessário fazer ajustes. A menos que você precise de maior capacidade de processamento, mais IOPS, menor carga de metadados no volume ou um comportamento de armazenamento em cache específico, use o comando de montagem do consoleGoogle Cloud .
Para mais informações sobre etapas de conexão, configuração de política de exportação e comandos de montagem, consulte Conectar clientes NFS.
Configurar clientes
Configure as configurações do NFS do Linux na seguinte ordem:
Simultaneidade do kernel: antes de montar o sistema de arquivos, defina o número de slots de solicitação do NFS (entradas da tabela de slots para NFSv3 ou slots de sessão para NFSv4.1). Se você mudar as configurações, será necessário remontar o sistema de arquivos. Para mais informações, consulte Simultaneidade do NFS no Linux.
Opções de montagem: escolha a versão do protocolo, o tamanho de E/S, a contagem de conexões TCP, o bloqueio e as opções relacionadas ao cache no momento da montagem. Para mais informações, consulte Opções de montagem do NFS no Linux.
Read-ahead: ajusta a pré-busca de leitura sequencial por ponto de montagem depois que o volume é montado. Para mais informações, consulte Read-ahead do NFS do Linux.
A tabela a seguir resume essas etapas de configuração:
| Etapa | Quando | O que ele controla | Onde configurar | Guia |
|---|---|---|---|---|
| 1 | Antes da primeira montagem ou da remontagem | Operações RPC pendentes por conexão TCP; comandos NFSv4.1 por sessão | /etc/sysctl.conf,/etc/modprobe.d/ |
Simultaneidade do NFS no Linux |
| 2 | Na montagem | Protocolo, tamanho da transferência de E/S, número de conexões, bloqueio e cache de atributos | mount -o, /etc/fstab |
Opções de montagem do NFS no Linux |
| 3 | Após a montagem | Pré-busca de leitura sequencial | /sys/class/bdi/.../read_ahead_kb, regras udev |
Pré-leitura do NFS do Linux |
Como as configurações funcionam juntas
O kernel do Linux define a simultaneidade por conexão (etapa 1 na tabela anterior). A opção de montagem nconnect (etapa 2 na tabela anterior) permite
abrir várias conexões TCP de um cliente para o mesmo endereço IP de volume.
A simultaneidade aproximada para um cliente é calculada da seguinte forma:
(slots per connection) x (nconnect value)
Cada conexão TCP com um endpoint NFS do NetApp Volumes é compatível com até 128 operações pendentes por conexão para NFSv3. O NFSv4.1 também negocia limites no nível da sessão. Uma única conexão TCP pode limitar a simultaneidade efetiva abaixo do máximo da sessão. Para mais informações, consulte Simultaneidade do NFS no Linux.
Se vários clientes montarem o mesmo endereço IP de volume, use um limite menor de slots por cliente para que o total de operações pendentes em toda a frota de clientes permaneça dentro dos limites recomendados.
Você configura o pré-leitura por ponto de montagem (etapa 3 na tabela anterior). Isso depende da opção de montagem rsize e dos padrões de distribuição do Linux. Algumas distribuições usam uma pré-leitura fixa de 128 KiB, independente de rsize, o que pode reduzir o desempenho de leitura sequencial até que você ajuste.
As opções de montagem e as configurações do kernel não mudam as políticas de exportação, a configuração do Kerberos, os requisitos de firewall nem os limites de capacidade de processamento e IOPS no nível do serviço de volume.
Pontos de partida da carga de trabalho
A tabela a seguir oferece pontos de partida. Valide as configurações com seu aplicativo, distribuição do Linux e caminho de rede.
| Carga de trabalho | Simultaneidade do kernel | Opções de ativação | Leitura antecipada |
|---|---|---|---|
| Uso geral | Padrão do sistema operacional | Use as instruções de montagem do console do Google Cloud . | Padrão do sistema operacional |
| VM única, alta capacidade de processamento/IOPS |
|
|
Ajuste se as cargas de trabalho estiverem vinculadas à leitura sequencial |
| Muitos clientes (EDA/HPC/farm de renderização) |
|
|
Geralmente maior para conjuntos de dados grandes e estáticos |
| Kerberos NFSv4.1 |
|
|
Conforme necessário para leituras sequenciais |
| NFSv3 sem bloqueios consultivos | Padrão do sistema operacional |
|
Conforme necessário |
Medir e validar o ajuste
Depois de atualizar as configurações do cliente, siga estas etapas:
Execute
nfsiostat,mountstatsenfsstatno cliente. Para mais informações, consulte Monitorar a performance.Compare seus resultados com comparativos de performance. Eles usaram
nconnect=16,rsize=65536ewsize=65536em alguns testes do NFSv3 no Red Hat Enterprise Linux 9.
Ajustar o cliente melhora a eficiência do uso do caminho de rede para o volume de uma máquina virtual (VM). A capacidade do volume, o nível de serviço, os limites do pool de armazenamento e o tamanho da VM do Compute Engine ainda podem limitar os resultados.
A seguir
Ajuste a simultaneidade: simultaneidade do NFS do Linux.
Ajuste as opções de montagem: Opções de montagem do NFS do Linux.
Ajuste as leituras sequenciais: leitura antecipada do NFS do Linux.