O Moodle é um sistema de gerenciamento de aprendizagem de código aberto que requer acesso ao armazenamento de alta taxa de transferência e baixa latência. Muitas implantações do Moodle exigem escalabilidade fácil para se adaptarem à crescente demanda. Este artigo explica como você pode implantar o Moodle usando os serviços do Azure nos Conjuntos de Escala de Máquina Virtual do Azure e armazenar arquivos de dados de aprendizagem acessíveis pelo usuário nos Arquivos NetApp do Azure. Este artigo descreve uma implantação zonal para alta disponibilidade e replicação entre zonas e também fornece exemplos de uma implantação de zona única.
Arquitetura
Para obter a melhor experiência do usuário, o Moodle requer acesso consistente de baixa latência ao armazenamento compartilhado escalável para atender às demandas dos funcionários do escritório e em casa que usam o serviço. Os pools de capacidade e volumes de capacidade dos Conjuntos de Dimensionamento de Máquina Virtual e Arquivos NetApp do Azure podem ser dimensionados para cima e para baixo à medida que a demanda muda.
Transfira um ficheiro do Visio desta arquitetura.
Além da implantação do Moodle, a arquitetura usa a replicação entre zonas do Azure NetApp Files para replicar os volumes de dados para uma zona secundária. A replicação entre zonas usa zonas de disponibilidade para fornecer alta disponibilidade em uma região e replicação para uma zona diferente na mesma região. Um pool de capacidade que usa o nível de serviço Standard pode hospedar os volumes de dados de destino durante a operação normal.
Usando essa abordagem, você não precisa iniciar alguns componentes da configuração, como computação e serviços auxiliares, durante a operação normal. Como resultado, você não incorrerá em nenhum custo operacional para esses componentes. Você também pode reduzir os conjuntos de escala da máquina virtual ao mínimo.
Somente em um cenário de recuperação de desastres você deve iniciar e dimensionar os componentes necessários para continuar o serviço usando os volumes de dados replicados. Neste momento, você pode atualizar o nível de serviço dos volumes de destino dos Arquivos NetApp do Azure para o nível de serviço Premium ou Ultra, se necessário.
Depois de recuperar a zona primária, a direção da replicação é invertida. A zona primária é atualizada com as alterações aplicadas durante o failover e o serviço pode ser submetido a failover. Os usuários são redirecionados para a zona de failover por meio do Gerenciador de Tráfego do Azure, que opera na camada DNS para direcionar de forma rápida e eficiente as solicitações DNS de entrada com base no método de roteamento de sua escolha.
Fluxo de Trabalho
Os alunos acessam os dados do aplicativo Moodle por meio de um Gateway de Aplicativo do Azure, onde podem usar Conjuntos de Escala de Máquina Virtual para criar uma plataforma de computação escalável que executa o aplicativo Moodle para hospedar usuários. Os Arquivos NetApp do Azure fornecem os dados de conteúdo para o aplicativo Moodle. Use um cache Redis para cache de sessão do usuário, bloqueio e reconhecimento de chaves. Armazene o conteúdo de aprendizagem, o progresso do aluno e os dados internos em um banco de dados MySQL.
Insira conteúdo de aprendizagem por meio de um gateway VPN seguro diretamente do datacenter do cliente.
Os alunos acessam o conteúdo por meio do aplicativo implantado em Conjuntos de Dimensionamento de Máquina Virtual por meio de um gateway de aplicativo seguro.
Você pode dimensionar a solução para cima ou para baixo, dependendo da demanda, adicionando ou removendo máquinas virtuais (VMs) no conjunto de escala e ajustando o nível de serviço de volume dos Arquivos NetApp do Azure.
Componentes
O Moodle é um dos sistemas de gestão de aprendizagem de código aberto gratuitos mais populares e amplamente adotados.
O Banco de Dados do Azure para MySQL é um serviço de banco de dados relacional alimentado pela edição da comunidade MySQL. Você pode usar o Banco de Dados do Azure para MySQL - Servidor Flexível para hospedar um banco de dados MySQL no Azure.
O Cache Redis do Azure é um agente de mensagens e cache de dados seguro que fornece acesso de alta taxa de transferência e baixa latência a dados para aplicativos.
Use os Conjuntos de Escala de Máquina Virtual do Azure para criar e gerenciar um grupo de VMs com balanceamento de carga. Você pode aumentar ou diminuir automaticamente o número de instâncias de VM em resposta à demanda ou a uma agenda definida.
Os Arquivos NetApp do Azure são um serviço do Azure que você pode usar para migrar e executar as cargas de trabalho de arquivos corporativos mais exigentes na nuvem, como compartilhamentos de arquivos SMBv3, NFSv3 e NFSv4.1 nativos, bancos de dados, data warehouses e aplicativos de computação de alto desempenho.
Alternativas
Você pode implantar o serviço Moodle usando qualquer serviço de arquivo compartilhado baseado em NFS que atenda aos seus requisitos de baixa latência, alta entrada ou saída de operações por segundo e taxa de transferência, especialmente para um número maior de usuários simultâneos. Você pode usar um serviço NFS construído sobre um conjunto de VMs Linux, mas essa configuração pode causar desafios de gerenciamento, escalabilidade e desempenho. Os Arquivos NetApp do Azure fornecem a menor latência, melhor desempenho e escalabilidade e acesso seguro ao armazenamento compartilhado NFS.
Implantações alternativas usando arquivos NetApp do Azure
Este diagrama captura um exemplo de uma implantação de região única:
Esta configuração de região única fornece acesso altamente disponível ao aplicativo Moodle e outros componentes da configuração.
Detalhes do cenário
Esta solução aplica-se a implementações do Moodle. As organizações que usam o Moodle abrangem setores como educação, negócios, TI e finanças.
Este artigo descreve uma solução que vai ao encontro das necessidades do Moodle. No núcleo da solução está o Azure NetApp Files, que é um serviço de armazenamento do Azure. Você pode usar esse serviço para migrar e executar as cargas de trabalho de arquivos de escala empresarial mais exigentes na nuvem:
- Compartilhamentos de arquivos SMB (Native Server Message Block) versão 3, NFSv3 e NFSv4.1
- Cargas de trabalho de bases de dados
- Cargas de trabalho do armazém de dados
- Aplicações de computação de alto desempenho
Considerações
Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios orientadores que podem ser usados para melhorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Microsoft Azure Well-Architected Framework.
Fiabilidade
A confiabilidade garante que seu aplicativo possa atender aos compromissos que você assume com seus clientes. Para obter mais informações, consulte Lista de verificação de revisão de design para confiabilidade.
Os Arquivos NetApp do Azure são criados em uma frota bare-metal de hardware redundante de estado sólido. O serviço funciona sem interrupção, mesmo durante as operações de manutenção. Para obter mais informações sobre resiliência, consulte Tolerância a falhas, alta disponibilidade e resiliência em arquivos NetApp do Azure.
Os Arquivos NetApp do Azure fornecem alta disponibilidade para seus dados armazenados. Para obter a garantia de disponibilidade dos Arquivos NetApp do Azure, consulte SLA para Arquivos NetApp do Azure.
Segurança
A segurança oferece garantias contra ataques deliberados e o abuso de seus valiosos dados e sistemas. Para obter mais informações, consulte Lista de verificação de revisão de design para segurança.
Para todas as opções de implantação, você precisa fornecer um par de chaves público-privado RSA válido do protocolo Secure Shell (SSH) protocolo 2 (SSH-2). O comprimento deve ser de pelo menos 2.048 bits. O Azure não suporta outros formatos de chave, como ED25519 e ECDSA. Os Arquivos NetApp do Azure dão suporte a chaves gerenciadas pelo cliente e gerenciadas pela plataforma. Essas soluções fornecem acesso irrestrito aos dados armazenados, atendem aos requisitos de conformidade e melhoram a segurança dos dados. Para obter informações e práticas recomendadas sobre a segurança dos Arquivos NetApp do Azure, consulte Perguntas frequentes de segurança para Arquivos NetApp do Azure.
Otimização de Custos
A Otimização de Custos consiste em procurar formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Lista de verificação de revisão de design para otimização de custos.
Para uma implantação do Moodle de médio a grande porte de aproximadamente 5.000 usuários com uma taxa de simultaneidade de 10%, a taxa de transferência recomendada é de aproximadamente 500 MB/s. Essa implantação pode ser criada em uma infraestrutura de VM Standard_D32s_v4 baseada em Linux que usa 8 TB de um disco gerenciado por P60.
Os Arquivos NetApp do Azure fornecem uma solução mais econômica que usa 4 TiB de capacidade de nível de ultrasserviço. Para aplicativos de maior escala que exigem mais capacidade dos Arquivos NetApp do Azure, os níveis de serviço Premium e Standard fornecem desempenho suficiente. Use o nível de serviço Premium ou Standard para melhorar a relação custo-benefício.
Use a calculadora de preços do Azure para estimar os custos dos recursos do Azure para seus requisitos específicos. Para obter mais informações, consulte Modelo de custo do Azure NetApp Files.
Para obter uma calculadora que calcula o desempenho dos Arquivos NetApp do Azure e o custo total de propriedade (TCO), consulte Calculadora de desempenho dos Arquivos NetApp do Azure. Use esta calculadora para encontrar o equilíbrio ideal entre capacidade, desempenho e custo.
Excelência Operacional
A Excelência Operacional abrange os processos operacionais que implantam um aplicativo e o mantêm em execução na produção. Para obter mais informações, consulte Lista de verificação de revisão de design para excelência operacional.
Eficiência de Desempenho
Eficiência de desempenho é a capacidade de sua carga de trabalho de escalar para atender às demandas colocadas pelos usuários de maneira eficiente. Para obter mais informações, consulte Lista de verificação de revisão de projeto para eficiência de desempenho.
Você pode dimensionar esta solução para cima ou para baixo, conforme necessário:
Os Conjuntos de Dimensionamento de Máquina Virtual fornecem dimensionamento automático de recursos. Para obter mais informações, consulte Visão geral do dimensionamento automático com conjuntos de escala de máquina virtual do Azure.
Você pode dimensionar de forma fácil e não intrusiva os pools de capacidade e volumes dos Arquivos NetApp do Azure para cima e para baixo para atender à demanda. Para obter mais informações, consulte Redimensionar um pool de capacidade ou um volume.
Você pode ajustar o nível de serviço de volume dos Arquivos NetApp do Azure, que pode ser Standard, Premium ou Ultra. O nível escolhido afeta o limite de taxa de transferência de volumes com qualidade de serviço automática. Para obter mais informações, consulte Considerações de desempenho para o Azure NetApp Files.
Implementar este cenário
Para obter um guia de implantação do Moodle em Arquivos NetApp do Azure, consulte Arquivos NetApp do Azure para armazenamento NFS com o Moodle.
Contribuidores
Este artigo é mantido pela Microsoft. Foi originalmente escrito pelos seguintes contribuidores.
Autor principal:
- Arnt de Gier - Brasil | Engenheiro Técnico de Marketing
Próximos passos
- Opção Moodle Cloud
- Direções do Azure Moodle no GitHub
- Moodle docs: armazenamento de cache Redis
- Arquivos NetApp do Azure para armazenamento NFS com o Moodle
- Arquiteturas de solução usando arquivos NetApp do Azure
- Dimensionamento automático com o modo de orquestração flexível de conjuntos de dimensionamento de máquina virtual