Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O Azure Blob Storage suporta agora o protocolo Network File System (NFS) 3.0. Este suporte proporciona compatibilidade com sistemas de ficheiros Linux em escala e preços de armazenamento de objetos e permite que clientes Linux montem um contentor em Blob Storage a partir de uma máquina virtual Azure (VM) ou de um computador local.
É um desafio executar cargas de trabalho legadas em grande escala, como computação de alto desempenho (HPC), na cloud. Uma das razões é que as aplicações frequentemente utilizam protocolos tradicionais de ficheiros, como o NFS, para aceder a dados. Além disso, os serviços nativos de armazenamento na nuvem focados no armazenamento de objetos têm um espaço de nomes plano e metadados extensos, em vez de sistemas de ficheiros que fornecem um namespace hierárquico e operações eficientes de metadados.
O Blob Storage agora suporta um namespace hierárquico. Quando combinado com o suporte ao protocolo NFS 3.0, o Azure facilita muito a execução de aplicações legadas sobre armazenamento de objetos na cloud em grande escala.
Aplicações e cargas de trabalho adequadas para usar o NFS 3.0 com Blob Storage
A funcionalidade do protocolo NFS 3.0 está otimizada para cargas de trabalho de alta produtividade, grande escala e leitura intensiva, com I/O sequencial. É ideal para cenários que envolvem múltiplos leitores e vários threads onde o throughput é mais crítico do que a baixa latência. Exemplos comuns incluem:
Computação de alto desempenho: Os trabalhos HPC envolvem frequentemente milhares de núcleos a ler simultaneamente os mesmos grandes conjuntos de dados. A funcionalidade do protocolo NFS 3.0 utiliza a largura de banda de armazenamento em objetos para eliminar os gargalos tradicionais dos servidores de ficheiros. Eis alguns exemplos:
- Sequenciação genómica: Processamento de grandes conjuntos de dados de ADN.
- Modelação de risco financeiro: Utilização de simulações de Monte Carlo em dados históricos.
- Análise sísmica: Análise de dados geológicos para exploração de petróleo e gás.
- Previsão meteorológica: Modelação de dados atmosféricos para o clima e a previsão de tempestades.
Big Data e Análise de Dados (data lakes): Muitas ferramentas de análise requerem diretórios hierárquicos. O BlobNFS (via Azure Data Lake Storage Gen2) fornece esta estrutura enquanto suporta protocolos padrão de ficheiros. Eis alguns exemplos:
- Aprendizagem automática: Alimentar dados de treino para clusters de GPU usando I/O padrão de ficheiros.
- Análise de registos: Agregação de registos de milhares de fontes.
Sistemas Avançados de Assistência ao Condutor (ADAS): Os fluxos de trabalho ADAS produzem petabytes de dados sequenciais de sensores, como nuvens de pontos LiDAR e feeds de câmaras de alta resolução. Os dados devem ser ingeridos de forma eficiente e analisados em larga escala para simulação e treino de modelos. Um exemplo é armazenar varreduras LiDAR brutas e fluxos de vídeo multi-câmara de veículos de teste autónomos usando o NFS 3.0 e depois executar simulações de repetição em grande escala em milhares de nós de computação para validar algoritmos de perceção.
Media e entretenimento: As farms de renderização precisam de acesso eficiente a grandes bibliotecas de recursos. O NFS 3.0 over blob fornece uma interface de ficheiros para ferramentas de renderização legadas que esperam caminhos de ficheiros. Eis alguns exemplos:
- Renderização de vídeo: Leitura de recursos fonte com nós distribuídos.
- Transcodificação: Conversão de grandes ficheiros de vídeo raw em formatos de streaming.
Backup de base de dados: Um destino NFS 3.0 de custo-benefício e alto rendimento, sem necessidade de conectores complexos ou snapshots dispendiosos. O Oracle RMAN pode escrever grandes backups diretamente para arquivamento a longo prazo e permitir a restauração direta a partir de qualquer VM Linux montada em NFS.
Quando não usar o NFS 3.0 com Blob Storage
Evite a utilização de partilhas de ficheiros de uso geral ou cargas de trabalho transacionais devido às características de armazenamento de objetos:
| Tipo de carga de trabalho | Justificação | Alternativa melhor |
|---|---|---|
| Bases de dados transacionais | Requer bloqueio granular, latência submilissegundo e escritas aleatórias frequentes. | Managed Disks ou Azure NetApp Files ou Azure Files |
| Edição de ficheiros no local | Editar ficheiros força reescritas completas em blocos, o que torna as operações ineficientes. | Ficheiros do Azure |
NFS 3.0 e o espaço de nomes hierárquico
O suporte ao protocolo NFS 3.0 requer que os blobs sejam organizados em um namespace hierárquico. Você pode habilitar um namespace hierárquico ao criar uma conta de armazenamento.
O Azure Data Lake Storage introduziu a capacidade de usar um namespace hierárquico. Ele organiza objetos (arquivos) em uma hierarquia de diretórios e subdiretórios da mesma forma que o sistema de arquivos em seu computador é organizado. O namespace hierárquico é dimensionado linearmente e não degrada a capacidade ou o desempenho dos dados. Protocolos diferentes se estendem do namespace hierárquico. O protocolo NFS 3.0 é um dos protocolos disponíveis.
Dados armazenados como blobs de bloco
Quando a sua aplicação faz um pedido utilizando o protocolo NFS 3.0, esse pedido é traduzido em uma combinação de operações de blobs de blocos. Por exemplo, as solicitações de Chamada de Procedimento Remoto (RPC) de leitura do NFS 3.0 são traduzidas em operações de Get Blob. As solicitações RPC de gravação do NFS 3.0 são convertidas em uma combinação de Get Block List, Put Block e Put Block List.
Os blobs de bloco são otimizados para processar com eficiência grandes quantidades de dados de leitura pesada. As bolhas de bloco são compostas por blocos. Um ID de bloco identifica cada bloco. Um blob de bloco pode incluir até 50.000 blocos. Cada bloco em um bloco de dados pode ter um tamanho diferente, até ao tamanho máximo permitido para a versão de serviço que a sua conta está a utilizar.
| NFSv3 RPC | Operação da API REST |
|---|---|
| Metadados & atributos | |
Nfs3GetAttr |
Get Blob Properties |
Nfs3SetAttr |
Set Blob Properties (Se o tamanho do ficheiro for definido, Nfs3Write é invocado.) |
Nfs3Lookup |
Get Blob Properties |
Nfs3Access |
Get Blob Properties |
Nfs3Readlink |
Get Blob Properties |
Nfs3FsStat |
Get Blob Properties |
Nfs3Fsinfo |
Get Blob Properties |
Nfs3Pathconf |
Get Blob Properties |
| Enumeração de diretórios | |
Nfs3ReadDir |
List Blobs |
Nfs3ReadDirPlus |
List Blobs |
| Operações de leitura | |
Nfs3Read |
Get Blob |
Nfs3ReadLink |
Get Blob Properties
+
Get Blob do ficheiro subjacente. |
| Operações de gravação | |
NFs3Write |
Get Block List (1) + Put Block (x) + Put Block List (1) |
Nfs3Commit |
Nenhuma operação em curso. |
| Ciclo de vida do ficheiro | |
Nfs3Create |
Put Blob + Get Blob Properties |
Nfs3Remove |
Delete Blob |
Nfs3Rename |
Não é suportado (sem mapeamento um para um). |
Nfs3Link |
Não suportado. |
| Gestão de diretórios | |
Nfs3MkDir |
Put Blob + Get Blob Properties |
Nfs3RmDir |
Put Blob |
| Outras | |
Nfs3SymLink |
Put Blob + Get Blob Properties |
Nfs3MkNod |
Não suportado. |
Nfs3Null |
Nenhuma operação. |
Resultados de acertos ou falhas de cache podem desencadear outras Get Blob Properties solicitações para obter atributos de pré-operação e pós-operação. Várias variáveis influenciam a contagem de transações do Blob Storage para operações de ponta a ponta (por exemplo, leitura ou escrita de ficheiros) e podem diferir entre iterações. Para estimar o número de transações para cargas de trabalho representativas, use os registos Blob Storage para cenários de exemplo.
Fluxo de trabalho geral: Montar um contentor de conta de armazenamento
Os seus clientes Linux podem montar um contentor no Blob Storage a partir de uma VM Azure ou de um computador on-premises. Para montar um contentor de conta de armazenamento, execute estas tarefas:
- Crie uma rede virtual do Azure.
- Configure a segurança da rede.
- Crie e configure uma conta de armazenamento que aceite tráfego apenas da rede virtual.
- Crie um contêiner na conta de armazenamento.
- Monte o recipiente.
Para orientações passo a passo, consulte Mount Blob Storage usando o protocolo Network File System (NFS) 3.0.
Segurança da rede
O tráfego deve originar-se numa rede virtual. Uma rede virtual permite que os clientes se liguem de forma segura à sua conta de armazenamento. A única forma de proteger os dados na sua conta é usando uma rede virtual e outras definições de segurança de rede. Qualquer outra ferramenta usada para proteger dados, incluindo autorização de chaves de conta, segurança Microsoft Entra e listas de controlo de acesso (ACLs), não pode ser usada para autorizar um pedido NFS 3.0.
Para saber mais, consulte as recomendações de segurança de rede para Armazenamento Blob.
Observação
Não é suportado filtragem de IP pública para aceder à sua conta de armazenamento.
Conexões de rede suportadas
Os clientes podem ligar-se através de um endpoint público ou privado se a ligação tiver origem em qualquer uma das seguintes localizações de rede:
A rede virtual que configura para a sua conta de armazenamento.
Neste artigo, referimo-nos a essa rede virtual como a principal rede virtual. Para saber mais, consulte Conceder acesso a partir de uma rede virtual.
Uma rede virtual emparelhada situada na mesma região que a rede virtual principal.
Tem de configurar a sua conta de armazenamento para permitir o acesso a esta rede virtual pareada. Para saber mais, consulte Conceder acesso a partir de uma rede virtual.
Uma rede local que está ligada à sua rede virtual principal usando o Azure VPN Gateway ou um gateway Azure ExpressRoute.
Para saber mais, consulte Configurar acesso a partir de redes locais.
Uma rede local interna ligada a uma rede interligada.
Pode usar um gateway VPN ou um gateway ExpressRoute juntamente com o trânsito do gateway.
Importante
O protocolo NFS 3.0 usa as portas 111 e 2048. Se se ligar a partir de uma rede local, certifique-se de que o seu cliente permite a comunicação de saída através dessas portas. Se concedeu acesso a redes virtuais específicas, certifique-se de que quaisquer grupos de segurança de rede associados a essas redes virtuais não contenham regras de segurança que bloqueiem a comunicação de entrada através dessas portas.
Problemas e limitações conhecidos
Para uma lista completa de problemas e limitações com a versão atual do suporte ao NFS 3.0, consulte Problemas conhecidos.
Preços
Para custos de armazenamento e transação de dados, consulte a página de preços do Azure Blob Storage .