Computaci´on de alto rendimiento sobre un entorno de
virtualizaci´on basado en contenedores
Daniel Dom´ınguez San Segundo
C´atedra UAM-IBM
Escuela Polit´ecnica Superior,
Universidad Aut´onoma de Madrid,
Calle Francisco Tom´as y Valiente, 11, 28049 Madrid, Espa˜na
[email protected]
http://www.catedrauamibm.com
Resumen: El rendimiento de un sistema es un aspecto cr´ıtico en la clusterizaci´on y
especialmente en el ´ambito de HPC (High Performance Computing – Computaci´on
de Alto Rendimiento). Por otra parte, la virtualizaci´on es una tecnolog´ıa que cada
d´ıa est´a ganando presencia en importantes escenarios tradicionalmente ligados a
HPC. Entre estos escenarios se encuentran la alta disponibilidad de recursos pro-
porcionados por servidores, o la oferta de infraestructuras, plataformas y software
como servicios en la nube.
En este estudio se ha comprobado por medio del benchmark de referencia HPL
(High Performance Linpack ) las diferencias de rendimiento que hay al utilizar una
misma infraestructura f´ısica para un cl´uster que se utilice de forma nativa, o como
infraestructura f´ısica para conformar un cl´uster virtual equivalente en recursos to-
tales.
Aunque la virtualizaci´on supone una sobrecarga en el sistema que perjudica el
rendimiento obtenido, bien es cierto que dicha sobrecarga se puede reducir eligiendo
el tipo de virtualizaci´on, en particular el uso contenedores. Esta penalizaci´on en el
rendimiento es un aspecto a reducir as´ı como el objetivo principal de este estudio.
Asimismo se ha comprobado que la configuraci´on de ciertos aspectos del cl´uster
no es trivial. Tanto o m´as relevante que el tipo de virtualizaci´on pueden ser otros
par´ametros, como son los relativos a la comunicaci´on de los procesos dentro del
cl´uster, la configuraci´on de la topolog´ıa de procesos o el m´etodo de difusi´on de
resultados parciales entre dichos procesos.
En cuanto al uso de la virtualizaci´on, como resultado a destacar, se ha encontrado
una excepci´on a la penalizaci´on previsible debido a la virtualizaci´on. Cuando se
utiliza un cl´uster virtual que imita lo m´aximo posible a la infraestructura f´ısica se
llegan a obtener rendimientos en torno al 110-120% a los obtenidos con el entorno
nativo. Esta ventaja no se da siempre, solo se ha detectado cuando el problema a
resolver no llegue a utilizar el 50% de la memoria total del cl´uster. Aunque sea en
unos casos determinados, esto supone una ventaja significativa.
Palabras Clave: Computaci´on de Alto Rendimiento, High Performance Comput-
ing, HPC, Supercomputaci´on, Clustering, Virtualizaci´on, Contenedores, Containers,
High Performance Linpack
Tabla de Contenidos
1 Introducci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 Motivaci´on y Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 Panor´amica general de las tecnolog´ıas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1 Virtualizaci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Clusterizaci´on y HPC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Rocks Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 Trabajo Relacionado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 Pruebas Experimentales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1 Descripci´on del entorno experimental . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Configuraci´on: Interconexi´on de red, alojamiento de procesos, selecci´on de
bibliotecas y m´etodo difusi´on de panel HPL.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3 Prueba en Cl´uster Real 1 (R1): Capacidad del Entorno Nativo . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4 Pruebas Entorno F´ısico Vs. Virtual
5.4.1 Prueba en Cl´uster Virtual 1 (V1): Tama˜no Est´andar . . . . . . . . . . . . . . . . . . . .
5.4.2 Prueba en Cl´uster Virtual 2 (V2): Tama˜nos Grandes . . . . . . . . . . . . . . . . . . . .
5.4.3 Prueba en Cl´uster Virtual 3 (V3): Tama˜no Est´andar Por Distribuci´on en
3
4
5
5
6
7
8
9
9
14
16
18
18
19
M´aquinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
5.4.4 Prueba en Cl´uster Virtual 4 (V4): Carga Constante Por Distribuci´on en
M´aquinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1 Resultados Pruebas Configuraci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2 Resultado Prueba R1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3 Resultado Prueba V1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4 Resultado Prueba V2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.5 Resultado Prueba V3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.6 Resultado Prueba V4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8 Trabajo Futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9 Bibliografia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A HPL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
B Script de instalaci´on de HPL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C Ejemplo de HPL.dat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
D Rocks Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
E Datos relativos a la prueba R1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
F Datos relativos a la prueba V1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
G Datos relativos a la prueba V2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
H Datos relativos a la prueba V3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
23
23
24
26
29
33
34
37
39
40
41
46
47
48
53
54
55
60
62
Computaci´on de alto rendimiento sobre un entorno de virtualizaci´on basado en contenedores
3
1
Introducci´on
Un campo de la inform´atica con gran relevancia es el llamado HPC (High Performance
Computing - Computaci´on de Alto Rendimiento), el cual consiste en la m´axima explotaci´on
de los recursos de un sistema inform´atico compuesto por una o por varias m´aquinas con el fin
de obtener una ventaja. Esta ventaja puede consistir en la resoluci´on de grandes problemas
inasumibles por una sola m´aquina, aumento en la velocidad de resoluci´on de los mismos, alta
disponibilidad de recursos, o combinaci´on de varias de estas ventajas. Los m´etodos de intro-
ducirse en HPC son m´ultiples. Hist´oricamente hablando, y es su escenario natural, la HPC est´a
ligada al uso de grandes m´aquinas y sistemas de altas capacidades.
Pero HPC no es algo exclusivo de grandes sistemas, ya que con medios m´as modestos se
pueden conseguir entornos HPC aceptables y suficientes para muchas situaciones que van del
´ambito acad´emico al empresarial. Desde hace unos veinte a˜nos va ganando en popularidad la
creaci´on de cl´usters por medio de ordenadores conectados a trav´es de una red de comunicaciones
utilizando componentes convencionales.
Esta clusterizaci´on por medio de m´aquinas convencionales es interesante desde varios puntos
de vista, aunque predomina la disponibilidad y el factor econ´omico. Otra ventaja importante
que aporta la clusterizaci´on tipo beowulf es la facilidad en cuanto a la escalabilidad y/o susti-
tuci´on de elementos que componen el cl´uster, tanto para actualizar componentes como para
una reestructuraci´on horizontal o vertical del cl´uster. Esta filosof´ıa de acceso a la HPC es ac-
tualmente la predominante en escenarios de toda ´ındole desde peque˜nos proyectos hasta los
superordenadores m´as potentes del mundo como los que conforman el Top500 1.
La virtualizaci´on es una tecnolog´ıa que cuenta con una larga trayectoria en grandes sistemas,
como mainframes y servidores, con casi 50 a˜nos de historia, no obstante desde hace unos a˜nos
se est´a consolidando en el mundo de los ordenadores personales y ´ambitos m´as modestos gracias
principalmente al soporte hardware en los microprocesadores de PCs (Intel-VT y AMD-V ).
La virtualizaci´on permite desacoplar los recursos f´ısicos del sistema de su sistema operativo
nativo de forma que puede proporcion´arselo a otros sistemas operativos. Esto proporciona
ventajas m´as alla de la cohabitaci´on de varios si
Comentarios de: Computación de alto rendimiento sobre un entorno de virtualización basado en contenedores (0)
No hay comentarios