Diseño de centro de datos virtualizado

Diseño de centro de datos virtualizado

introducción

Un sistema de información desde el punto de vista del usuario está bien definido en GOST RV 51987: "un sistema automatizado, cuyo resultado es la presentación de información de salida para su uso posterior". Si consideramos la estructura interna, entonces, en esencia, cualquier SI es un sistema de algoritmos interconectados implementados en código. En un sentido amplio de la tesis de Turing-Church, un algoritmo (o IS) transforma un conjunto de datos de entrada en un conjunto de datos de salida.
Incluso se podría decir que la transformación de los datos de entrada es el significado de la existencia de un sistema de información. En consecuencia, el valor del IS y de todo el complejo IS se determina a través del valor de los datos de entrada y salida.
En base a esto, el diseño debe comenzar y estar basado en datos, adaptando la arquitectura y los métodos a la estructura y la importancia de los datos.

Datos almacenados
Una etapa clave en la preparación para el diseño es obtener las características de todos los conjuntos de datos planificados para su procesamiento y almacenamiento. Estas características incluyen:
- Volumen de datos;
— Información sobre el ciclo de vida de los datos (crecimiento de nuevos datos, vida útil, procesamiento de datos obsoletos);
— Clasificación de datos desde el punto de vista. impacto en el negocio principal de la empresa (la tríada de confidencialidad, integridad, disponibilidad) junto con los indicadores financieros (por ejemplo, el costo de la pérdida de datos en la última hora);
— Geografía del procesamiento de datos (ubicación física de los sistemas de procesamiento);
— Requisitos reglamentarios para cada clase de datos (por ejemplo, Ley Federal-152, PCI DSS).

Sistemas de información

Los datos no sólo se almacenan, sino que también se procesan (transforman) mediante sistemas de información. El siguiente paso luego de obtener las características de los datos es el inventario más completo de los sistemas de información, sus características arquitectónicas, interdependencias y requisitos de infraestructura en unidades convencionales para cuatro tipos de recursos:
— potencia informática del procesador;
— Cantidad de RAM;
— requisitos de volumen y rendimiento del sistema de almacenamiento de datos;
— Requisitos para la red de transmisión de datos (canales externos, canales entre componentes IS).
En este caso, debe haber requisitos para cada servicio/microservicio como parte del SI.
Por otra parte, es necesario señalar que, para un diseño correcto, es obligatoria la disponibilidad de datos sobre el impacto del SI en el negocio principal de la empresa en forma de coste del tiempo de inactividad del SI (rublos por hora).

Modelo de amenaza

Debe existir un modelo formal de amenazas del cual se planea proteger los datos/servicios. Además, el modelo de amenazas incluye no sólo aspectos de confidencialidad, sino también de integridad y disponibilidad. Aquellos. Por ejemplo:
— Fallo del servidor físico;
— Fallo del interruptor de la parte superior del bastidor;
— Interrupción del canal de comunicación óptica entre centros de datos;
— Fallo de todo el sistema de almacenamiento operativo.
En algunos casos, los modelos de amenazas se escriben no solo para componentes de infraestructura, sino también para sistemas de información específicos o sus componentes, como por ejemplo una falla del DBMS con destrucción lógica de la estructura de datos.
Todas las decisiones dentro del proyecto para protegerse contra una amenaza no descrita son innecesarias.

Los requisitos reglamentarios

Si los datos que se procesan están sujetos a reglas especiales establecidas por los reguladores, se requiere información sobre los conjuntos de datos y las reglas de procesamiento/almacenamiento.

Objetivos de RPO/RTO

Diseñar cualquier tipo de protección requiere tener indicadores de pérdida de datos objetivo y tiempo de recuperación del servicio objetivo para cada una de las amenazas descritas.
Idealmente, RPO y RTO deberían tener costos asociados de pérdida de datos y tiempo de inactividad por unidad de tiempo.

Diseño de centro de datos virtualizado

División en grupos de recursos

Después de recopilar toda la información de entrada inicial, el primer paso es agrupar conjuntos de datos e IP en grupos basados ​​en modelos de amenazas y requisitos regulatorios. El tipo de división de varios grupos se determina: mediante programación a nivel de software del sistema o físicamente.
Ejemplos:
— el circuito que procesa datos personales está completamente separado físicamente de otros sistemas;
— Las copias de seguridad se almacenan en un sistema de almacenamiento independiente.

En este caso, los grupos pueden ser incompletamente independientes, por ejemplo, se definen dos grupos de recursos informáticos (potencia del procesador + RAM), que utilizan un único grupo de almacenamiento de datos y un único grupo de recursos de transmisión de datos.

Poder de procesamiento

Diseño de centro de datos virtualizado

En resumen, los requisitos de potencia de procesamiento de un centro de datos virtualizado se miden en términos de la cantidad de procesadores virtuales (vCPU) y su índice de consolidación en procesadores físicos (pCPU). En este caso particular, 1 pCPU = 1 núcleo de procesador físico (excluyendo Hyper-Threading). La cantidad de vCPU se suma en todos los grupos de recursos definidos (cada uno de los cuales puede tener su propio factor de consolidación).
El coeficiente de consolidación para sistemas cargados se obtiene empíricamente, basándose en la infraestructura existente, o mediante instalación piloto y pruebas de carga. Para sistemas descargados, se utilizan las “mejores prácticas”. Específicamente, VMware cita la proporción promedio como 8:1.

Memoria operativa

El requisito total de RAM se obtiene mediante una simple suma. No se recomienda el uso de sobresuscripción de RAM.

Recursos de almacenamiento

Los requisitos de almacenamiento se obtienen simplemente sumando todos los pools por capacidad y rendimiento.
Los requisitos de rendimiento se expresan en IOPS combinado con una relación promedio de lectura/escritura y, si es necesario, una latencia de respuesta máxima.
Los requisitos de calidad de servicio (QoS) para grupos o sistemas específicos se deben especificar por separado.

Recursos de red de datos

Los requisitos de la red de datos se obtienen simplemente sumando todos los grupos de ancho de banda.
Los requisitos de calidad de servicio (QoS) y latencia (RTT) para grupos o sistemas específicos deben especificarse por separado.
Como parte de los requisitos para los recursos de la red de datos, también se indican los requisitos para el aislamiento y/o cifrado del tráfico de la red y los mecanismos preferidos (802.1q, IPSec, etc.).

Selección de arquitectura

Esta guía no analiza ninguna otra opción que no sea la arquitectura x86 y la virtualización 100 % del servidor. Por lo tanto, la elección de la arquitectura del subsistema informático se reduce a la elección de la plataforma de virtualización del servidor, el factor de forma del servidor y los requisitos generales de configuración del servidor.

El punto clave de elección es la certeza de utilizar un enfoque clásico con separación de funciones de procesamiento, almacenamiento y transmisión de datos o uno convergente.

arquitectura clásica Implica el uso de subsistemas externos inteligentes para almacenar y transmitir datos, mientras que los servidores aportan sólo potencia de procesamiento y RAM al conjunto común de recursos físicos. En casos extremos, los servidores se vuelven completamente anónimos y no solo tienen sus propios discos, sino que ni siquiera tienen un identificador del sistema. En este caso, el sistema operativo o el hipervisor se carga desde un medio flash integrado o desde un sistema de almacenamiento de datos externo (arranque desde SAN).
En el marco de la arquitectura clásica, la elección entre blades y racks se realiza principalmente basándose en los siguientes principios:
— Rentable (en promedio, los servidores montados en bastidor son más baratos);
— Densidad computacional (mayor para las palas);
— Consumo de energía y disipación de calor (las palas tienen una unidad específica mayor por unidad);
— escalabilidad y controlabilidad (las palas generalmente requieren menos esfuerzo para instalaciones grandes);
- Uso de tarjetas de expansión (opción muy limitada para blades).
Arquitectura convergente (también conocido como hiperconvergente) implica combinar las funciones de procesamiento y almacenamiento de datos, lo que conduce al uso de discos de servidor local y, como consecuencia, al abandono del clásico factor de forma blade. Para sistemas convergentes se utilizan servidores en rack o sistemas en cluster, combinando varios servidores blade y discos locales en un solo caso.

CPU/Memoria

Para calcular correctamente la configuración, es necesario comprender el tipo de carga del entorno o de cada uno de los clústeres independientes.
CPU vinculada – un entorno limitado en rendimiento por la potencia del procesador. Agregar RAM no cambiará nada en términos de rendimiento (número de máquinas virtuales por servidor).
Límite de memoria – entorno limitado por la RAM. Más RAM en el servidor le permite ejecutar más máquinas virtuales en el servidor.
GB / MHz (GB / pCPU): la relación promedio entre el consumo de RAM y la potencia del procesador para esta carga en particular. Se puede utilizar para calcular la cantidad de memoria necesaria para un rendimiento determinado y viceversa.

Cálculo de la configuración del servidor

Diseño de centro de datos virtualizado

Primero, debe determinar todos los tipos de carga y decidir si combinar o dividir diferentes grupos de computación en diferentes clústeres.
A continuación, para cada uno de los clusters definidos, se determina la relación GB/MHz a una carga conocida de antemano. Si no se conoce la carga de antemano, pero se tiene un conocimiento aproximado del nivel de utilización de energía del procesador, puede utilizar proporciones estándar de vCPU:pCPU para convertir los requisitos del grupo en físicos.

Para cada clúster, divida la suma de los requisitos del grupo de vCPU por el coeficiente:
vCPUsum / vCPU:pCPU = pCPUsum: número requerido de unidades físicas. núcleos
pCPUsum / 1.25 = pCPUht – número de núcleos ajustados para Hyper-Threading
Supongamos que es necesario calcular un clúster con 190 núcleos / 3.5 TB de RAM. Al mismo tiempo, aceptamos una carga objetivo del 50% de la potencia del procesador y el 75% de la RAM.

CPU
190
Utilidad de CPU
50%

Souvenirs
3500
utilidad de memoria
75%

Enchufe
Core
Servidor/CPU
Srv Mem
Srv/Mem

2
6
25,3
128
36,5

2
8
19,0
192
24,3

2
10
15,2
256
18,2

2
14
10,9
384
12,2

2
18
8,4
512
9,1

En este caso, siempre utilizamos el redondeo al número entero más cercano (=ROUNDUP(A1;0)).
De la tabla resulta obvio que varias configuraciones de servidor están equilibradas para los indicadores objetivo:
— 26 servidores 2*6c / 192 GB
— 19 servidores 2*10c / 256 GB
— 10 servidores 2*18c / 512 GB

La elección de estas configuraciones debe realizarse en función de factores adicionales, como el paquete térmico y la refrigeración disponible, los servidores ya utilizados o el costo.

Características de elegir una configuración de servidor.

Amplias máquinas virtuales. Si es necesario alojar máquinas virtuales amplias (comparables a 1 nodo NUMA o más), se recomienda, si es posible, seleccionar un servidor con una configuración que permita que dichas máquinas virtuales permanezcan dentro del nodo NUMA. Con una gran cantidad de máquinas virtuales amplias, existe el peligro de fragmentación de los recursos del clúster y, en este caso, se seleccionan servidores que permitan colocar las máquinas virtuales amplias lo más densamente posible.

Tamaño del dominio de error único.

La elección del tamaño del servidor también se basa en el principio de minimizar el dominio de fallo único. Por ejemplo, al elegir entre:
— 3 x 4*10c / 512GB
— 6 x 2*10c / 256GB
En igualdad de condiciones, debe elegir la segunda opción, ya que cuando falla un servidor (o está en mantenimiento), no se pierde el 33% de los recursos del clúster, sino el 17%. Del mismo modo, se reduce a la mitad el número de VM e IS afectados por el accidente.

Cálculo de sistemas de almacenamiento clásicos en función del rendimiento.

Diseño de centro de datos virtualizado

Los sistemas de almacenamiento clásicos siempre se calculan utilizando el peor de los casos, excluyendo la influencia del caché operativo y la optimización de las operaciones.
Como indicadores básicos de rendimiento, tomamos el rendimiento mecánico del disco (IOPSdisk):
– 7.2k – 75 IOPS
– 10k – 125 IOPS
– 15k – 175 IOPS

A continuación, la cantidad de discos en el grupo de discos se calcula mediante la siguiente fórmula: = TotalIOPS * ( RW + (1 –RW) * RAIDPen) / IOPSdisco. Dónde:
- IOPS totales – rendimiento total requerido en IOPS del grupo de discos
- RW – porcentaje de operaciones de lectura
- lápiz RAID – Penalización de RAID para el nivel RAID seleccionado

Lea más sobre Device RAID y la penalización de RAID aquí: Rendimiento del almacenamiento. Parte uno. и Rendimiento del almacenamiento. La segunda parte. и Rendimiento del almacenamiento. Parte tres

En función del número resultante de discos, se calculan las posibles opciones que cumplen con los requisitos de capacidad de almacenamiento, incluidas las opciones con almacenamiento multinivel.
El cálculo de los sistemas que utilizan SSD como capa de almacenamiento se considera por separado.
Características de los sistemas de cálculo con Flash Cache.

Caché flash – un nombre común para todas las tecnologías patentadas que utilizan la memoria flash como caché de segundo nivel. Cuando se utiliza una caché flash, el sistema de almacenamiento generalmente se calcula para proporcionar una carga constante de discos magnéticos, mientras que la caché sirve el pico.
En este caso, es necesario comprender el perfil de carga y el grado de localización del acceso a bloques de volúmenes de almacenamiento. La memoria caché flash es una tecnología para cargas de trabajo con consultas altamente localizadas y es prácticamente inaplicable para volúmenes cargados de manera uniforme (como, por ejemplo, para sistemas de análisis).

Cálculo de sistemas híbridos de gama baja/media.

Los sistemas híbridos de las clases media y baja utilizan almacenamiento de múltiples niveles y los datos se mueven entre niveles según un cronograma. Al mismo tiempo, el tamaño del bloque de almacenamiento de varios niveles para los mejores modelos es de 256 MB. Estas características no nos permiten considerar la tecnología de almacenamiento por niveles como una tecnología para aumentar la productividad, como mucha gente cree erróneamente. El almacenamiento multinivel en sistemas de gama baja y media es una tecnología para optimizar los costes de almacenamiento en sistemas con una marcada desigualdad de carga.

Para el almacenamiento por niveles, el rendimiento del nivel superior se calcula primero, mientras que se considera que el nivel inferior de almacenamiento solo contribuye a la capacidad de almacenamiento faltante. Para un sistema híbrido de varios niveles, es obligatorio utilizar tecnología de caché flash para el grupo de varios niveles a fin de compensar la reducción del rendimiento por datos repentinamente calentados desde el nivel inferior.

Uso de una SSD en un grupo de discos por niveles

Diseño de centro de datos virtualizado

El uso de SSD en un grupo de discos de varios niveles tiene variaciones, dependiendo de la implementación específica de los algoritmos de caché flash por parte de un fabricante determinado.
La práctica general de política de almacenamiento para un grupo de discos con un nivel SSD es SSD primero.
Caché flash de sólo lectura. Para una caché flash de solo lectura, la capa de almacenamiento del SSD viene con una localización significativa de las escrituras, independientemente de la caché.
Lectura/escritura de caché flash. En el caso de la caché flash, el tamaño de la caché de escritura se establece primero en el tamaño máximo de la caché y el nivel de almacenamiento SSD aparece solo cuando el tamaño de la caché es insuficiente para atender toda la carga de trabajo localizada.
Los cálculos de rendimiento de SSD y caché se realizan cada vez según las recomendaciones del fabricante, pero siempre para el peor de los casos.

Fuente: habr.com

Añadir un comentario