Estamos testando o SharxBase, uma plataforma de virtualização de software e hardware do fornecedor russo SharxDC

Hoje vou falar sobre a plataforma hiperconvergente SharxBase. Não houve revisão deste complexo em Habré, e foi decidido pôr fim a essa injustiça. Nossa equipe conseguiu testar a solução "em batalha", os resultados estão abaixo.

imagem

PS: Existem muitas tabelas, números reais e outras "carnes" sob o corte. Para aqueles que estão imersos na essência - bem-vindo!

Sobre o produto


A plataforma SharxBase é baseada em servidores fabricados pela Intel e no software de código aberto OpenNebula e StorPool. Ele vem na forma de uma solução in a box, que inclui hardware de servidor com virtualização pré-instalada e software de armazenamento distribuído.

Uma das quatro configurações padrão básicas - Pequena, Média, Grande, Armazenamento - está disponível para pedido, que diferem na quantidade de recursos de computação disponíveis (processadores, RAM) e espaço em disco. Os servidores são projetados como módulos: um chassi 2RU típico, que pode acomodar até quatro servidores, para instalação em um rack de servidor padrão de 19 ". A plataforma suporta o escalonamento horizontal aumentando o número de nós e vertical aumentando a quantidade de RAM nos nós , instalação de unidades adicionais e placas de expansão. Atualmente, oferecemos suporte à instalação de adaptadores de rede, módulos de controle de inicialização e unidades NVMe.

Arquitetura de armazenamento


Para a organização de unidades de armazenamento distribuído tolerantes a falhas (SSD e / ou NVMe), são usadas. O meio usado é Ethernet. Para transferir armazenamento de armazenamento, é necessário o uso de interfaces de rede dedicadas - pelo menos duas interfaces de 25 GbE. Os serviços que fornecem armazenamento distribuído funcionam em cada servidor do cluster e usam parte de seus recursos de computação. A quantidade de recursos depende do número e volume de unidades instaladas, em média, a sobrecarga é de 34 GB de RAM por host. A conexão com o armazenamento distribuído é feita através do protocolo de acesso ao bloco iSCSI. Para garantir a tolerância a falhas, há suporte para o backup de dados duas ou três vezes. Para instalações produtivas, o fabricante recomenda o uso de tripla redundância. Atualmente, nas tecnologias de otimização de armazenamento, apenas o provisionamento thin é suportado. A desduplicação e a compactação de dados usando armazenamento distribuído não são suportadas. Versões futuras suportam codificação de apagamento.

Virtualização


Para iniciar uma máquina virtual (VM), o hipervisor KVM é usado. Todas as funcionalidades básicas para sua criação e gerenciamento são suportadas:

  • criação de uma VM do zero, com a indicação da configuração de hardware necessária (núcleos do processador, tamanho da RAM, número e tamanho de discos virtuais, número de adaptadores de rede, etc.);
  • Clonagem de VM de um existente ou modelo;
  • criando um instantâneo instantâneo (instantâneo), excluindo um instantâneo, revertendo as alterações feitas na VM a partir do momento em que o instantâneo foi obtido;
  • Alterar a configuração de hardware de uma VM criada anteriormente, incluindo conectar ou desconectar um disco virtual ou adaptador de rede para uma VM incluída (hotplug / hot unplug);
  • Migração de VM entre servidores de virtualização
  • monitorar o estado da VM, incluindo o monitoramento da carga de recursos de computação e discos virtuais (tamanho atual, volume de E / S em MB / s ou em IOPS);
  • agendar operações com VMs de acordo com um agendamento (ligar, desligar, criar um instantâneo, etc.);
  • conexão e gerenciamento de VMs via protocolos VNC ou SPICE a partir de um console da web.

imagem
Diagrama de blocos típico (4 nós)

O gerenciamento da plataforma é realizado a partir da interface gráfica ou linha de comando (local ou remotamente ao conectar via SSH), bem como através da API pública.

Entre as limitações da plataforma de virtualização, pode-se notar a ausência de mecanismos para equilibrar automaticamente as VMs entre hosts de cluster.

Além de oferecer suporte à virtualização de servidores, o SharxBase tem a capacidade de criar datacenters configurados por software e infraestruturas de nuvem privada. Como exemplo de tais funções, pode-se notar:

  • gerenciamento de direitos de acesso com base na associação de usuários a grupos e listas de controle de acesso (ACLs): os direitos podem ser atribuídos a diferentes grupos de usuários que restringem o acesso aos componentes da infraestrutura virtual;
  • contabilidade do consumo de recursos (contabilidade): processadores, RAM, recursos de disco;
  • Estimativa do custo de consumo dos recursos de computação (showback) em unidades arbitrárias com base nos recursos consumidos e seus preços;
  • recursos básicos do IPAM (Gerenciamento de Endereço IP): atribuição automática de endereços IP para interfaces de rede VM a partir de um intervalo predeterminado;
  • recursos básicos do SDN: criando um roteador virtual para transferir tráfego entre redes virtuais.

Usando o módulo de segurança da informação desenvolvido, o SharxBase implementa medidas adicionais para garantir a segurança da informação do sistema de gerenciamento da plataforma: requisitos personalizáveis ​​para senhas de contas de usuários (complexidade, duração, duração do uso, repetibilidade etc.), bloqueio de usuários, gerenciamento de sessões de acesso atuais ao console de gerenciamento, registro eventos e outros.O software é registrado no registro do software russo (número 4445). Foi recebida uma conclusão positiva do laboratório de testes nos testes de certificação concluídos com sucesso do software SharxBase no sistema de certificação FSTEC RF para o nível 4 de monitoramento da ausência de NDV e também para conformidade com as especificações técnicas (cumprindo os requisitos para proteger ambientes de virtualização) até o nível de segurança GIS classe 1 / ISPD inclusive. A obtenção de um certificado de conformidade com os requisitos do sistema de certificação para segurança da informação significa o No.ROSS RU.0001.01BI00 (FSTEC da Federação Russa) em dezembro de 2018.

Uma descrição detalhada da funcionalidade é fornecida na tabela abaixo.

Monitoramento


O SharxBase Monitoring fornece acesso a informações avançadas de status da plataforma, configurações de alerta e análises de status da plataforma.
O subsistema de monitoramento é um sistema distribuído instalado em cada um dos nós do cluster e fornece dados sobre o estado da plataforma ao sistema de gerenciamento de virtualização.

O subsistema de monitoramento em tempo real coleta informações sobre os recursos da plataforma, como:

Nós do servidorFontes de alimentaçãoSwitchesMáquinas virtuaisArmazém de dados distribuídos
- Número de série da unidade
- Número de série do nó e da placa-mãe
- Unidade e temperatura da unidade
- Modelo e carga da CPU
- Números de slot, frequência, tamanho e disponibilidade de RAM
- Nó e endereço de armazenamento
- A velocidade de rotação dos ventiladores de refrigeração
- Status do adaptador de rede
- Número de série do adaptador de rede
- O status do disco e suas informações do sistema
- Número de série da fonte de alimentação
- As condições da fonte de alimentação e sua carga
- Switch Model
- Status do switch e suas portas
- A velocidade de rotação dos ventiladores de refrigeração
- Status dos ventiladores de refrigeração
- Exibir lista de VLAN
- carga da CPU
- carga de RAM
- carga de rede
- Status da máquina virtual
- Velocidade de gravação / leitura de disco
- Velocidade de conexão de entrada / saída
- Exibição de espaço livre / ocupado
- Status do disco
- Espaço em disco usado
- Erros no drive

Subtotais


As vantagens da solução incluem:

  • a possibilidade de entrega às organizações nas listas de sanções;
  • A solução é baseada no projeto OpenNebula, que se desenvolve ativamente há muito tempo;
  • suporte para todas as funções necessárias em relação à virtualização de servidores, suficientes para instalações pequenas e médias (até 128 hosts);
  • a presença de um módulo de segurança da informação que garanta a implementação de requisitos regulatórios no campo da segurança da informação.

As desvantagens da solução incluem:

  • funcionalidade inferior em comparação com outras soluções HCI no mercado (por exemplo, Dell VxRail, Nutanix);
  • suporte limitado de sistemas de backup (atualmente o suporte do Veritas NetBackup foi anunciado);
  • algumas das tarefas administrativas são executadas no console e não são acessíveis pela web.

Funcionalidade


imagem
imagem
imagem
imagem

Ao expandir o portfólio de soluções hiperconvergentes, realizamos testes de desempenho e tolerância a falhas em conjunto com o fornecedor.

Teste de desempenho


O banco de testes foi um cluster de 4 nós dos servidores Intel HNS2600TP. A configuração de todos os servidores era idêntica. Os servidores tinham as seguintes características de hardware:

  • modelo de servidor - Intel HNS2600TP;
  • dois processadores Intel Xeon E5-2650 v4 (12 núcleos com freqüência de 2,2 GHz e suporte para Hyper Threading);
  • 256 GB de RAM (224 GB de memória está disponível para executar a VM);
  • adaptador de rede com 2 portas QSFP + com uma taxa de transferência de dados de 40 Gb / s;
  • um controlador RAID LSI SAS3008;
  • 6 unidades SSD SATA Intel DC S3700 com capacidade de 800 GB cada;
  • duas fontes de alimentação com potência nominal de 1600 W cada.
  • O software de virtualização SharxBase v1.5 está instalado nos servidores.

Todos os servidores conectados ao comutador de rede Mellanox. O diagrama de conexão é mostrado na figura.

imagem
Diagrama de conexão dos servidores em uma bancada de testes

Todas as funcionalidades descritas anteriormente foram confirmadas como resultado dos testes funcionais.

O teste do subsistema de disco foi realizado usando o software Vdbench versão 5.04.06. Em cada servidor físico, uma VM foi criada com o SO Linux com 8 vCPU, 16 GB de RAM. Para teste em cada VM, foram criados 8 discos virtuais de 100 GB cada.

Durante os testes, os seguintes tipos de cargas foram verificados:

  • (Backup) 0% aleatório, 100% de leitura, tamanho de bloco de 64 KB, 1 IO excelente;
  • (Restauração) 0% aleatório, 100% gravação, tamanho do bloco de 64 KB, 1 IO excelente;
  • (Típico) 100% aleatório, 70% de leitura, tamanho de bloco de 4 KB, 4 IO pendentes;
  • (VDI) 100% aleatório, 20% de leitura, tamanho de bloco de 4 KB, 8 IO pendentes;
  • (OLTP) 100% aleatório, 70% de leitura, tamanho de bloco de 8 KB, 4 E / S excelentes.

Os resultados dos testes desses tipos são apresentados na tabela:

imagem
imagem
imagem
O armazenamento fornece indicadores de desempenho particularmente alto em operações sequenciais de leitura e gravação de 8295,71 MB e 2966,16 MB, respectivamente. O desempenho do armazenamento em uma carga típica (E / S aleatória com blocos de 4KB com 70% de leitura) atinge 133977,94 IOPS com um atraso médio de E / S de 1,91 ms e diminui com o aumento da proporção de operações de gravação para operações de leitura.

Teste de tolerância a falhas


Esses testes tornaram possível verificar se uma falha de um dos componentes do sistema não leva ao desligamento de todo o sistema.
TesteDetalhes do testeComentários
Falha no disco no pool de armazenamento14:00 - o sistema está funcionando normalmente;
14:11 - desativando o primeiro SSD no servidor 1;
14:12 - Falha no SSD é exibida no console de gerenciamento da plataforma;
14:21 - desabilite o primeiro SSD no servidor 2;
14:35 - a falha de dois SSDs é exibida no console de gerenciamento da plataforma;
14:38 - retorne as unidades aos servidores 1 e 2. Os indicadores LED no SSD não são exibidos;
14:40 - o engenheiro através da CLI executou a adição de SSD ao repositório;
14:50 - no console de gerenciamento da plataforma são exibidos como funcionando;
15:00 - A sincronização dos componentes da VM está concluída;
O sistema funcionou normalmente. O indicador de tolerância a falhas é o indicado.
Falha na rede15:02 - o sistema está funcionando normalmente;
15:17 - desabilite uma das duas portas do Servidor 1;
15:17 - perda de uma solicitação de eco no endereço IP do console da web (o servidor isolado atuava como líder), a VM em execução no servidor é acessível pela rede;
15:18 - desabilitando a segunda porta no Servidor 1, a VM e o console de gerenciamento do servidor ficaram indisponíveis;
15:20 - A VM foi reiniciada no nó Servidor 3;
15:26 - As interfaces de rede do servidor 1 são conectadas, o servidor retornado ao cluster;
15:35 - a sincronização dos componentes dos discos da VM é concluída;
O sistema funcionou normalmente.
Falha de um servidor físico15:35 - o sistema está funcionando normalmente;
15:36 - desligando o servidor 3 através do comando poweroff na interface IPMI;
15:38 - a VM de teste foi reinicializada no Servidor 1;
15:40 - inclusão do servidor 3;
15:43 - operação do servidor restaurada;
15:47 - a sincronização está concluída.
O sistema funcionou normalmente.

Resultados do teste


A plataforma SharxBase fornece um alto nível de disponibilidade e tolerância a falhas em caso de falha de qualquer componente principal de hardware. Devido à tripla redundância para o subsistema de disco, a plataforma garante a disponibilidade e a segurança dos dados em caso de falha dupla.

As desvantagens da plataforma incluem altos requisitos de espaço em disco causados ​​pela necessidade de armazenar e sincronizar três cópias completas de dados e a falta de mecanismos para uma utilização mais eficiente do espaço em disco, como codificação de deduplicação, compactação ou apagamento.

Com base nos resultados de todos os testes realizados, podemos concluir que a plataforma hiperconvergente SharxBase é capaz de fornecer um alto nível de disponibilidade e desempenho para vários tipos de cargas, incluindo sistemas OLTP, VDI e serviços de infraestrutura.

Ilya Kuykin,
Engenheiro líder de projeto de sistemas de computador,
Jet Infosystems

Source: https://habr.com/ru/post/pt429042/


All Articles