Resumo
Neste módulo, discutimos os principais fatores envolvidos na escolha do armazenamento de HPC no Azure. Agora é hora de combinar as informações e criar uma ferramenta que você pode usar para avaliar as várias opções de armazenamento do Azure.
Vamos criar uma lista de verificação que encapsula as principais considerações sobre armazenamento. Você pode se perguntar por que uma lista de verificação é necessária, especialmente se gerencia seu ambiente de armazenamento atual há muito tempo. A meta é consolidar informações para outros stakeholders, incluindo parceiros e membros da equipe do Azure com quem você pode estar trabalhando. A lista de verificação ajuda a simplificar o processo de decisão e a minimizar qualquer mal-entendido em relação aos recursos (ou à falta de recursos) de uma solução de armazenamento específica.
Crie a sua lista de verificação com base na lista de considerações a seguir.
Distribuição do tráfego de carga de trabalho
Leve em consideração os tipos de tráfego que seu ambiente de HPC gera e processa. Essa etapa é especialmente importante se você planeja executar vários tipos de cargas de trabalho e planeja usar o armazenamento para outras finalidades.
Por exemplo, a carga de trabalho de HPC pode ler dados sequenciais de um arquivo grande (como um ativo de mídia de um trabalho de renderização ou um arquivo de sequência de genoma) em muitos computadores de HPC. Ao mesmo tempo, pode ser necessário operar um banco de dados (por exemplo, para trabalhar com o agendador de HPC). Os tipos de tráfego são diferentes e podem precisar ser implantados em soluções de armazenamento diferentes.
As soluções de armazenamento podem ser projetadas para otimizar coisas diferentes. Um arquivista do NAS criado no Ubuntu executando discos NVMe locais seria excelente em atividades de fluxo único, como um cliente copiando dados do NAS para o disco local. Mas ele pode não estar escalado para acesso simultâneo por um grande número de clientes.
Além disso, você pode precisar de uma solução que otimize muitos arquivos pequenos. Uma solução de NAS tradicional, como o Azure NetApp Files, fornece um desempenho ideal para tal tráfego. Mas você também pode precisar processar e armazenar arquivos grandes e minimizar o custo de fazer isso. O Armazenamento de Blobs do Azure com camadas fornece flexibilidade nesses casos, mas pode não fornecer um ótimo desempenho para uma operação de cópia de fluxo único.
Registre os seguintes tipos de tráfego na lista de verificação:
- Tráfego de fluxo único versus de vários fluxos
- Proporção entre tráfego de leitura e tráfego de gravação
- Médias de tamanhos e contagens de arquivos
- Padrões de acesso aleatórios versus sequenciais
Por exemplo, a lista de verificação pode refletir:
- Tráfego de vários fluxos.
- Leitura intensiva (75% versus 25%).
- Média de tamanho do arquivo entre 10 e 200 GB. Cerca de 50.000 arquivos.
- Altamente sequencial (80% versus 20%).
Você também deve considerar as principais cargas de trabalho que planeja executar na arquitetura. Se houver mais de um ou dois, verifique se não há uma divergência significativa nos requisitos.
Localidade dos dados
A próxima categoria considera a localização dos dados. Você precisa manter os dados no local? Há alguma preocupação com modificações de dados enquanto você está executa a carga de trabalho de HPC? Você planeja realizar modificações de dados somente no local, somente no Azure ou em ambos?
Aqui estão alguns itens de localidade para sua lista de verificação:
- Dados de origem no local, no Azure ou ambos?
- Dados de resultado no local, no Azure ou ambos?
- As cargas de trabalho de HPC no Azure devem ser coordenadas com os cronogramas de modificação dos dados de origem?
- As linhas do tempo ajudam a indicar o risco de dados obsoletos.
- Dados confidenciais/HIPAA?
- A confidencialidade dos dados ajuda a indicar os níveis de autenticação e criptografia necessários.
A ciência da localidade ajuda a determinar se você pode usar a cópia, o cache ou a sincronização como estratégia de movimentação de dados.
Requisitos de desempenho
Seus requisitos de desempenho devem ser semelhantes a estes:
- Taxa de transferência de fluxo único (em GBps)
- Taxa de transferência de vários fluxos (em GBps)
- IOPS máxima esperada
- Latência média (ms)
Cada aspecto afeta o desempenho, de modo que esses números representam um guia do que uma solução específica deve atingir. Por exemplo, você pode ter uma carga de trabalho de HPC que executa muitas operações de criação e exclusão de arquivos como parte do fluxo de trabalho. Essas operações podem afetar a taxa de transferência geral.
Mecanismos de acesso
Considere o protocolo de acesso de cliente necessário. Conforme discutimos, há diferentes versões do NFS (e do SMB, o protocolo de cliente do Windows). Se você planeja usar o NFSv4, saiba exatamente quais aspectos do protocolo são necessários (por exemplo, ACLs).
Aqui estão alguns itens para sua lista de verificação:
- Versões do NFS necessárias
- Para a v4, comportamentos de protocolo esperados (ACLs, criptografia)
- Solução de sistema de arquivos paralelo
Requisito de capacidade total
A capacidade de armazenamento no Azure é a próxima consideração. Ela ajuda a informar o custo geral da solução. Se você planeja armazenar uma grande quantidade de dados por muito tempo, talvez queira considerar a disposição em camadas como parte da solução de armazenamento. A disposição em camadas fornece opções de armazenamento de custo mais baixo combinadas com armazenamento de alto custo, mas desempenho mais alto, em uma camada quente.
Alguns itens para a lista:
- Capacidade total necessária
- Capacidade total de camada quente necessária
- Capacidade total de camada quente necessária
- Capacidade total de camada fria necessária
Uma observação sobre a capacidade de camada fria: as camadas de arquivos oferecem custos mais baixo para armazenar dados com custos de transações mais altos para recuperar os dados. Além disso, as camadas de arquivos têm tempos de recuperação longos para os dados. Elas não devem ser consideradas parte de suas camadas de acesso frequente/quente.
Método de autenticação/autorização
Adicione seus requisitos de autenticação/autorização à lista de verificação. No mínimo, adicioná-los garante que você inclua os sistemas de suporte apropriados, como um servidor LDAP ou um ambiente do Active Directory, à sua arquitetura. Mas se você precisa dar suporte a recursos como o mapeamento de UID/GID para usuários do Active Directory, é necessário confirmar se a solução de armazenamento dá suporte a essa funcionalidade.
Para sua lista:
- Local (UID/GID somente no servidor de arquivos)
- Diretório (LDAP, Active Directory)
- Mapeamento de UID/GID para usuários do Active Directory?
Leitura adicional
RFCs da IETC sobre o NFS:
- RFC 1813: Especificação do Protocolo NFS Versão 3
- RFC 2203: Especificação do Protocolo RPCSEC_GSS
- RFC 3530: Protocolo NFS (Network File System) Versão 4
- RFC 5661: Protocolo NFS (Network File System) Versão 4, Versão Secundária 1
- RFC 5331: RPC: Especificação do Protocolo de Chamada de Procedimento Remoto Versão 2