As arquiteturas de data center de uso geral (tais data centers ainda são amplamente usados hoje) já desempenharam bem suas tarefas no passado, mas a maioria delas atingiu recentemente seus limites de escalabilidade, desempenho e eficiência. A arquitetura desses datacenters geralmente usa o princípio da alocação agregada de recursos - processadores, discos rígidos e larguras de canal de rede.
Nesse caso, uma alteração no volume de recursos utilizados (aumento ou diminuição) ocorre nesses datacenters discretamente, com coeficientes predeterminados. Por exemplo, com um coeficiente de 2, podemos obter esta série de configurações:
- 2CPU, 8 GB de RAM, 40 GB de armazenamento;
- 4CPU, 16 GB de RAM, 80 GB de armazenamento;
- 8CPU, 32 GB de RAM, 160 GB de armazenamento;
- ...
No entanto, para muitas tarefas, essas configurações são economicamente ineficazes, geralmente algumas configurações intermediárias são suficientes para os clientes, por exemplo: - 6CPU, 16GB RAM, 100GB de armazenamento. Assim, chegamos ao entendimento de que a abordagem universal acima para alocação de recursos do data center é ineficaz, especialmente quando se trabalha intensivamente com big data (por exemplo, dados rápidos, análises, inteligência artificial, aprendizado de máquina). Os usuários nesses casos desejam ter recursos de controle mais flexíveis dos recursos utilizados, precisam da capacidade de escalar independentemente os processadores, memória e armazenamento de dados, canais de rede. O objetivo final dessa idéia é criar uma infraestrutura de componentes flexível.
Fig. 1. Arquitetura de data center centrada em dados.Em resposta a esses requisitos, vieram os datacenters de infraestrutura hiperconvergente (HCI, Hyper-Converged Infrastructure) que combinam todos os recursos de computação, sistemas de armazenamento e canais de rede em um único sistema virtualizado (Fig. 1). Entretanto, nessa estrutura, para expandir os limites da escalabilidade (adicionando novos sistemas de armazenamento, memória ou canais de rede), são necessários servidores adicionais. Isso predeterminou a aparência de uma abordagem baseada na expansão da infraestrutura HCI com módulos fixos (cada um contendo processadores, memória e armazenamento de dados), o que, em última análise, não fornece o nível de flexibilidade e desempenho previsível tão procurado nos data centers modernos.
O HCI já está sendo substituído por infraestruturas desagregadas por componentes (CDI, infraestruturas desagregadas compostas), projetadas para superar as limitações de soluções de TI convergidas ou hiperconvergentes e fornecer melhor flexibilidade para data centers.
O advento da infraestrutura desagregada por componentesPara superar os problemas associados à arquitetura dos datacenters de uso geral (uma proporção fixa de recursos, subutilização e redundância), uma infraestrutura convergente foi desenvolvida primeiro, consistindo em recursos de hardware pré-configurados em um único sistema. Recursos de computação, sistemas de armazenamento e interações de rede neles são discretos e os volumes de seu consumo são configurados programaticamente. Em seguida, as estruturas convergentes foram transformadas em hiperconvergentes (HCI), onde todos os recursos de hardware são virtualizados, e a alocação das quantidades necessárias de recursos de computação, armazenamento e canais de rede é automatizada no nível do software.
Apesar do HCI integrar todos os recursos em um único sistema virtualizado, essa abordagem também apresenta suas desvantagens. Para adicionar ao cliente, por exemplo, uma quantidade significativamente maior de armazenamento, RAM ou expandir o canal de rede, na arquitetura HCI, isso exigirá o uso de módulos de processador adicionais, mesmo que eles não sejam usados diretamente para operações de computação. Como resultado, temos uma situação em que, ao criar data centers mais flexíveis que as arquiteturas anteriores, eles ainda usam elementos de construção inflexíveis.
De acordo com pesquisas de usuários de TI de data centers corporativos de médio e grande porte, aproximadamente 50% da capacidade total de armazenamento disponível é alocada para uso real, enquanto os aplicativos usam apenas metade do volume de armazenamento alocado, e o tempo da CPU também é usado em aproximadamente 50%. Assim, a abordagem que utiliza sistemas estruturais fixos leva a sua subcarga e não fornece a flexibilidade necessária e o desempenho previsível. Para resolver esses problemas, foi criado um modelo desagregado, fácil de montar a partir de módulos funcionais separados, usando ferramentas de software com uma API aberta.
CDI (Component Disaggregated Infrastructure) é uma arquitetura de data center na qual os recursos físicos - poder de computação, armazenamento e canais de rede - são tratados como serviços. O fornecimento de aplicativos do usuário com todos os recursos necessários para atender à sua carga atual ocorre em tempo real, alcançando assim o desempenho ideal no data center.
Modelo de anticonvergência desagregada por componentes
Servidores virtuais em uma infraestrutura desagregada por componente (Fig. 2) são criados vinculando recursos de conjuntos independentes de sistemas de computação, armazenamento e dispositivos de rede, em contraste com o HCI, onde os recursos físicos estão vinculados aos servidores HCI. Dessa maneira, os servidores CDI podem ser criados e reconfigurados conforme necessário, de acordo com os requisitos de uma carga de trabalho específica. Usando o acesso da API ao software de virtualização, o aplicativo pode solicitar todos os recursos necessários, recebendo reconfiguração instantânea do servidor em tempo real, sem intervenção humana - um passo real em direção a um data center autogerenciado.
Fig. 2: Modelo Hiperconvergente (HCI) e Componente Desagregado (CDI).Uma parte importante da arquitetura CDI é a interface de comunicação interna, que garante a separação (desagregação) dos dispositivos de armazenamento de um servidor específico da sua capacidade de computação e sua provisão para uso por outros aplicativos.
O NVMe-over-Fabrics é usado aqui como o protocolo principal. Ele fornece os menores atrasos de transferência de dados de ponta a ponta entre aplicativos e dispositivos de armazenamento. Como resultado, isso permite que o CDI forneça aos usuários todos os benefícios do armazenamento de conexão direta (baixa latência e alto desempenho), fornecendo capacidade de resposta e flexibilidade através do compartilhamento de recursos.
Fig. 3. A estrutura do NVMe-over-Fabrics.A própria tecnologia NVMe (Non-Volatile Memory Express) é uma interface otimizada, de alto desempenho e baixa latência que usa uma arquitetura e um conjunto de protocolos projetados especificamente para conectar SSDs a servidores via barramento PCI Express. Para CDI, esse padrão foi expandido para NVMe-over-Fabrics - além de servidores locais.
Essa especificação permite que os dispositivos flash se comuniquem pela rede (usando diferentes protocolos de rede e meios de transmissão - veja a Figura 3), proporcionando o mesmo alto desempenho e o menor atraso de transmissão que os dispositivos NVMe locais. Ao mesmo tempo, praticamente não há restrições quanto ao número de servidores que podem compartilhar dispositivos NVMe-over-Fabrics ou ao número desses dispositivos de armazenamento que podem ser acessados por um servidor.
As necessidades dos aplicativos intensivos de big data de hoje superam os recursos das arquiteturas tradicionais de data center, especialmente em termos de escalabilidade, desempenho e eficiência. Com o advento da CDI (infraestrutura desagregada por componentes), arquitetos de data center, provedores de serviços em nuvem, integradores de sistemas, desenvolvedores de software de armazenamento e OEMs podem fornecer serviços de armazenamento e computação com maior relação custo-benefício, flexibilidade, eficiência e facilidade de escalabilidade, fornecendo dinamicamente o SLA necessário para todos cargas de trabalho.