Publication:
Implementación de un laboratorio mediante contenedores

Research Projects
Organizational Units
Journal Issue
Abstract
Los laboratorios docentes son una parte esencial de la formación de los estudiantes en las titulaciones de Informática, ya que permiten poner en práctica los conocimientos aprendidos en las clases teóricas. En muchas de las asignaturas de estas titulaciones se requiere el uso de virtualización para poder trabajar en entornos aislados, con el fin de poder probar programas o comandos peligrosos sin poner en riesgo la integridad del laboratorio, así como para poder recrear infraestructuras de red completas. Habitualmente, la virtualización se efectúa a través de máquinas virtuales, lo que supone una gran sobrecarga y un bajo rendimiento durante la realización de las prácticas. Por ello, en este Trabajo Fin de Grado se pretende evaluar la puesta en funcionamiento de un laboratorio docente mediante contenedores. Se realizará un estudio del funcionamiento de los contenedores, así como de las necesidades que poseen los laboratorios docentes, para así diseñar una propuesta, utilizando Docker como programa de gestión de los contenedores, que se adecúe a los requisitos exigidos y que permita realizar las prácticas de forma satisfactoria. Esta propuesta será evaluada en una prueba de concepto consistente en realizar una práctica de la asignatura Redes y Seguridad II del Grado en Ingeniería Informática de la Universidad Complutense de Madrid. Además, se comparará esta propuesta con el despliegue actual para determinar si efectivamente se produce una mejora de rendimiento, y se realizará un análisis de seguridad que verifique que no existen riesgos derivados de la ejecución de contenedores.
Teaching laboratories are an essential part of the education of students in Computer Science degrees, since they allow them to put into practice the knowledge learned in theoretical classes. Many of the subjects of these degrees require the use of virtualization to be able to work in isolated environments, in order to test dangerous programs or commands without compromising the integrity of the laboratory, as well as to be able to recreate complete network infrastructures. Usually, virtualization is done through virtual machines, which means a great overload and a low performance during the realization of the practices. For this reason, the aim of this Final Degree Project is to evaluate the implementation of a teaching laboratory using containers. A study of the functioning of the containers will be carried out, as well as of the needs of the teaching laboratories, in order to design a proposal, using Docker as the container management program, that meets the requirements demanded and that allows to perform the practices in a satisfactory way. This proposal will be evaluated in a proof of concept consisting of carrying out a practice of the subject Computer Networks Security II of the Degree in Computer Science Engineering of the Complutense University of Madrid. In addition, this proposal will be compared with the current deployment to determine if there is indeed a performance improvement, and a security analysis will be performed to verify that there are no risks derived from the execution of containers.
Description
Trabajo de Fin de Grado en Ingeniería Informática, Facultad de Informática UCM, Departamento de Arquitectura de Computadores y Automática, Curso 2021/2022. Acceso al repositorio con el código fuente: https://github.com/MarioRomanDono/labsoncontainers
Unesco subjects
Keywords
Citation