Sistema de almacenamento ruso AERODISK: proba de carga. Eliminamos IOPS

Sistema de almacenamento ruso AERODISK: proba de carga. Eliminamos IOPS

Ola a todos! Como prometemos, publicamos os resultados dunha proba de carga dun sistema de almacenamento de datos de fabricación rusa: AERODISK ENGINE N2.

No artigo anterior, rompemos o sistema de almacenamento (é dicir, realizamos probas de choque) e os resultados da proba de choque foron positivos (é dicir, non rompemos o sistema de almacenamento). Podes ver os resultados da proba de choque AQUÍ.

Nos comentarios do artigo anterior, solicitáronse probas de choque adicionais e máis sofisticadas. Gravámolos todos e definitivamente implementarémolos nalgún dos seguintes artigos. Ao mesmo tempo, pode visitar o noso laboratorio en Moscova en calquera momento (ven a pé ou facelo de forma remota a través de Internet) e realizar estas probas vostede mesmo (mesmo pode facer probas para un proxecto específico :-)). Escríbenos, consideraremos todos os escenarios!

Ademais, se non estás en Moscova, aínda podes familiarizarte co noso sistema de almacenamento asistindo a un evento de formación gratuíto nun centro de competencias da cidade máis próxima a ti.

A continuación móstrase unha lista dos próximos eventos e datas de funcionamento dos centros de competencia.

  • Ekaterimburgo. 16 de maio de 2019. Seminario de formación. Podes rexistrarte a través da ligazón: https://aerodisk.promo/ekb/
  • Ekaterimburgo. Do 20 de maio ao 21 de xuño de 2019. Centro de Competencias. Asiste a unha demostración en directo do sistema de almacenamento AERODISK ENGINE N2 en calquera momento de traballo. O enderezo exacto e a ligazón de rexistro facilitaranse máis adiante. Siga a información.
  • Novosibirsk SEGA A INFORMACIÓN NO NOSO SITIO ou HUBRA.
    Outubro 2019
  • Kazán. SEGA A INFORMACIÓN NO NOSO SITIO ou HUBRA.
    Outubro 2019
  • Krasnoyarsk SEGA A INFORMACIÓN NO NOSO SITIO ou HUBRA.
    novembro 2019

Tamén queremos compartir unha boa nova máis: por fin temos a nosa YouTube unha canle onde podes ver vídeos de eventos pasados. Alí publicamos regularmente os nosos vídeos de formación.

Banco de probas

Entón, volvemos ás probas. Actualizamos o noso sistema de almacenamento de laboratorio ENGINE N2 instalando unidades SSD SAS adicionais, así como adaptadores de canle de fibra frontal 16G. De forma simétrica, actualizamos o servidor desde o que executaremos a carga engadindo adaptadores FC 16G.

Como resultado, no noso laboratorio temos un sistema de almacenamento de 2 controladores con 24 discos SSD SAS de 1,6 TB, 3 discos DWPD, que se conecta mediante switches SAN a un servidor físico Linux mediante FC 16G.
O diagrama do banco de probas móstrase na seguinte figura.

Sistema de almacenamento ruso AERODISK: proba de carga. Eliminamos IOPS

Metodoloxía da proba

Para obter o mellor rendemento no acceso en bloque, utilizaremos as agrupacións DDP (Dynamic Disk Pool), que no seu día creamos especificamente para sistemas ALL-FLASH.
Para probar, creamos dous LUN cunha capacidade de 1 TB cada un con nivel de protección RAID-10. "Difundiremos" cada LUN en 12 discos (24 en total) para aproveitar ao máximo o potencial de cada un dos discos instalados no sistema de almacenamento.

Presentamos os LUN ao servidor a través de diferentes controladores para utilizar o máximo posible os recursos de almacenamento.

Cada unha das probas durará unha hora, e as probas serán realizadas polo programa Flexible IO (FIO); os datos FIO cargaranse automaticamente en Excel, no que xa están construídos gráficos para claridade.

Cargar perfís

En total, realizaremos tres probas, dunha hora cada unha, excluíndo o tempo de quecemento, para o que destinaremos 15 minutos (isto é exactamente o que se necesita para quentar unha matriz de 24 unidades SSD). Estas probas emulan os perfís de carga que se atopan con máis frecuencia, en particular estes son certos DBMS, sistemas de videovixilancia, emisións de contido multimedia e copias de seguridade.

Ademais, en todas as probas, desactivamos deliberadamente a capacidade de almacenar na memoria caché na RAM no sistema de almacenamento e no host. Por suposto, isto empeorará os resultados, pero, na nosa opinión, en tales condicións a proba será máis xusta.

Resultados da proba

Proba número 1. Carga aleatoria en pequenos bloques. Emulación dun DBMS transaccional de alta carga.

  • Tamaño do bloque = 4k
  • Lectura/Escritura = 70%/30%
  • Número de obras = 16
  • Profundidade da cola = 32
  • Cargar carácter = Aleatorio completo

Sistema de almacenamento ruso AERODISK: proba de carga. Eliminamos IOPS

Sistema de almacenamento ruso AERODISK: proba de carga. Eliminamos IOPS

Resultados da proba:

Sistema de almacenamento ruso AERODISK: proba de carga. Eliminamos IOPS

En total, co sistema junior de gama media Engine N2 recibimos 438k IOPS cunha latencia de 2,6 milisegundos. Tendo en conta a clase do sistema, na nosa opinión, o resultado é bastante decente. Para entender se este é o límite para o sistema, analizaremos a utilización dos recursos dos controladores de almacenamento.

Interésanos principalmente a CPU, xa que, como se dixo anteriormente, desactivamos deliberadamente a caché RAM para non distorsionar os resultados da proba.

Nos dous controladores de almacenamento vemos aproximadamente a mesma imaxe.

Sistema de almacenamento ruso AERODISK: proba de carga. Eliminamos IOPS

É dicir, a carga da CPU é do 50%. Isto suxire que isto está lonxe do límite deste sistema de almacenamento e aínda se pode escalar facilmente. Avancemos un pouco: todas as seguintes probas tamén mostraron que a carga dos procesadores dos controladores rondaba o 50%, polo que non os volveremos a enumerar.

Segundo as nosas probas de laboratorio, o límite cómodo do sistema AERODISK Engine N2, se contamos IOPS aleatorios en bloques de 4k, é de ~700 IOPS. Se isto non é suficiente e tes que esforzarte por un millón, entón temos o modelo antigo ENGINE N000.

É dicir, a historia sobre millóns de IOPS é ENGINE N4, e se un millón é demasiado para ti, usa con calma N2.

Volvemos ás probas.

Proba no 2. Gravación secuencial en grandes bloques. Emulación de sistemas de videovixilancia, carga de datos nun DBMS analítico ou gravación de copias de seguridade.

Nesta proba xa non nos interesan as IOPS, xa que cando se cargan secuencialmente en grandes bloques non teñen ningún sentido. Interésanos principalmente: o fluxo de escritura (megabytes por segundo) e os atrasos, que, por suposto, serán maiores con bloques grandes que con pequenos.

  • Tamaño do bloque = 128k
  • Lectura/Escritura = 0%/100%
  • Número de obras = 16
  • Profundidade da cola = 32
  • Cargar carácter - Secuencial

Sistema de almacenamento ruso AERODISK: proba de carga. Eliminamos IOPS

Sistema de almacenamento ruso AERODISK: proba de carga. Eliminamos IOPS

Sistema de almacenamento ruso AERODISK: proba de carga. Eliminamos IOPS

Total: temos unha gravación de cinco gigabytes e medio por segundo con atrasos de once milisegundos. Cando se compara cos seus competidores estranxeiros máis próximos, o resultado, na nosa opinión, é excelente e tampouco é o límite do sistema ENGINE N2.

Proba no 3. Lectura secuencial en grandes bloques. Emulación de contido multimedia de difusión, xeración de informes a partir dun DBMS analítico ou restauración de datos a partir de copias de seguridade.

Como na proba anterior, interésanos o fluxo e os atrasos.

  • Tamaño do bloque = 128k
  • Lectura/Escritura = 100%/0%
  • Número de obras = 16
  • Profundidade da cola = 32
  • Cargar carácter - Secuencial

Sistema de almacenamento ruso AERODISK: proba de carga. Eliminamos IOPS

Sistema de almacenamento ruso AERODISK: proba de carga. Eliminamos IOPS

Sistema de almacenamento ruso AERODISK: proba de carga. Eliminamos IOPS

O rendemento de lectura en streaming é previsiblemente lixeiramente mellor que o rendemento de escritura en streaming.

Curiosamente, o indicador de latencia é idéntico durante toda a proba (liña recta). Non se trata dun erro; ao ler secuencialmente en bloques grandes, no noso caso é unha situación habitual.

Por suposto, se deixamos o sistema desta forma durante un par de semanas, finalmente veremos saltos periódicos nos gráficos, que estarán asociados a factores externos. Pero, en xeral, non afectarán á imaxe.

Descubrimentos

Desde o sistema AERODISK ENGINE N2 de controlador dual, puidemos conseguir resultados bastante serios (~ 438 IOPS e ~ 000-5 gigabytes por segundo). As probas de carga demostraron que definitivamente non nos avergoñamos do noso sistema de almacenamento. Pola contra, os indicadores son moi decentes e corresponden a un bo sistema de almacenamento.

Aínda que, como escribimos anteriormente, Engine N2 é un modelo junior e, ademais, os resultados que se mostran neste artigo non son o seu límite. Máis tarde publicaremos unha proba similar do noso sistema ENGINE N4 máis antigo.

Por suposto, non podemos cubrir todas as probas posibles no marco dun artigo, polo que instamos de novo aos lectores a que compartan os seus desexos de probas futuras nos comentarios; definitivamente teremos en conta en próximas publicacións.

Ademais, lembrámosvos que este ano participamos activamente na formación, polo que vos convidamos aos nosos centros de competencia, nos que podedes realizar formación sobre sistemas de almacenamento AERODISK, e ao mesmo tempo pasar un rato interesante e divertido.

Duplico información sobre próximos eventos de formación.

  • Ekaterimburgo. 16 de maio de 2019. Seminario de formación. Podes rexistrarte a través da ligazón: https://aerodisk.promo/ekb/
  • Ekaterimburgo. Do 20 de maio ao 21 de xuño de 2019. Centro de Competencias. Asiste a unha demostración en directo do sistema de almacenamento AERODISK ENGINE N2 en calquera momento de traballo. O enderezo exacto e a ligazón de rexistro facilitaranse máis adiante. Siga a información.
  • Novosibirsk SEGA A INFORMACIÓN NO NOSO SITIO ou HUBRA.
    Outubro 2019
  • Kazán. SEGA A INFORMACIÓN NO NOSO SITIO ou HUBRA.
    Outubro 2019
  • Krasnoyarsk SEGA A INFORMACIÓN NO NOSO SITIO ou HUBRA.
    novembro 2019

Fonte: www.habr.com

Engadir un comentario