Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Implementación de una nube privada en la red
corporativa de ETECSA en Villa Clara
Autor: Claudia Gómez Martí
Tutor: MSc. Idileisy Torres Rodríguez
MSc. Yunier Valdés Pérez
Santa Clara 2018
Año 60 del Triunfo de la Revolución
Copyright©UCLV
Implementación de una nube privada en la red
corporativa de ETECSA en Villa Clara
Autor: Claudia Gómez Martí
E-mail: [email protected]
Tutor: MSc. Idileisy Torres Rodríguez
E-mail: [email protected]
MSc. Yunier Valdés Pérez
E-mail: [email protected]
Santa Clara 2018
Año 60 del Triunfo de la Revolución
Copyright©UCLV
Hago constar que el presente trabajo de diploma fue realizado en la Universidad Central
“Marta Abreu” de Las Villas como parte de la culminación de estudios de la especialidad
de Ingeniería en Telecomunicaciones y Electrónica, autorizando a que el mismo sea
utilizado por la Institución, para los fines que estime conveniente, tanto de forma parcial
como total y que además no podrá ser presentado en eventos, ni publicados sin autorización
de la Universidad.
Firma del Autor
Los abajo firmantes certificamos que el presente trabajo ha sido realizado según acuerdo de
la dirección de nuestro centro y el mismo cumple con los requisitos que debe tener un
trabajo de esta envergadura referido a la temática señalada.
Firma del Tutor
Firma del Jefe de Departamento
donde se defiende el trabajo
Firma del Responsable de
Información Científico-Técnica
i
PENSAMIENTO
“El verdadero progreso es el que pone la tecnología
al alcance de todos.”
Henry Ford
ii
DEDICATORIA
A mis padres que lo han dado todo por mí día a día, y que son la más fuerte motivación para
todos mis esfuerzos. Espero hacerlos sentir orgullosos de este logro que considero hemos alcanzado
todos juntos.
A Yunier que ha sido mi faro, mi guía todos estos años, por su incansable lucha a mi lado
ayudándome a alcanzar metas como estas.
iii
AGRADECIMIENTOS
Primeramente a mi titi por tantos años de esfuerzo a mi lado, mi vida este logro también es tuyo.
A mi tutora MSc. Idileisy Torres Rodríguez por su apoyo incondicional y su disposición desde
el primer momento.
A mi tutor MSc. Yunier Valdés Pérez, por su entera disposición y paciencia. Su ayuda
imprescindible en la realización de este trabajo.
A mi grupo, mis amigos que durante todos estos años de la carrera, demostramos que en la unión
esta la fuerza. Y formamos una pequeña familia que estoy segura perdurará.
A mis compañeras de trabajo Yoselin, Daimit, Anita, Maybelis, y muchas otras que fueron
incondicionales, merecen mi amistad infinita y eterno agradecimiento.
A todos los profesores de la FIE que de una forma u otra contribuyeron a mi formación como
profesional.
A todos “Muchas Gracias”
iv
TAREA TÉCNICA
1. Análisis actualizado de las tecnologías de cómputo en la nube.
2. Selección de los servicios y aplicaciones que demandan los usuarios de la red
corporativa de ETECSA en Villa Clara.
3. Caracterización de las principales plataformas que permiten la creación de nubes
privadas en código abierto, para determinar la más apropiada en el entorno de
ETECSA.
4. Estudio de los requerimientos de hardware y software para la implementación del
sistema de computación en la nube.
5. Instalación y configuración de la plataforma de nube privada en la red corporativa
de ETECSA en Villa Clara.
6. Implementación de las aplicaciones que van a brindar servicios a los usuarios de
dicha red.
7. Análisis de tráfico para medir los recursos de red.
8. Realización de presentaciones como guía de usuario.
9. Confección y presentación del informe final.
Firma del Autor Firma del Tutor
v
RESUMEN
La computación en la nube, o cloud computing, es una tecnología que ha tenido un rápido
crecimiento en los últimos años, convirtiéndose en un gran atractivo a nivel global. La
Empresa de Telecomunicaciones de Cuba (ETECSA) se encuentra implementando un
proceso de migración a código abierto, por lo que está llamada a sustituir todo tipo de
software privativo.
En este trabajo se crea una nube privada en la red corporativa de ETECSA en Villa Clara
del tipo SaaS (Software como Servicio), utilizando la plataforma libre Nextcloud. A través
de esta herramienta y mediante un navegador web los usuarios pueden resguardar sus datos
de manera segura, compartir información, editar documentos en línea, realizar
videoconferencias, entre otras funcionalidades. Para comprobar los recursos de red se
realizó un análisis de tráfico, permitiendo corroborar la suficiencia del ancho de banda
disponible.
Con la puesta en práctica de estos servicios, los usuarios de la red corporativa de ETECSA
en Villa Clara se ven directamente beneficiados, ya que pueden realizar trabajo
colaborativo y optimizar los recursos de sus computadoras. Los resultados de este proyecto
presentan un positivo impacto social y económico, sin implicar costos adicionales por
equipamiento y licencias de software.
Palabras Claves: Computación en la nube, nube privada, ETECSA, Nextcloud.
vi
TABLA DE CONTENIDOS
PENSAMIENTO................................................................................................................. i
DEDICATORIA ................................................................................................................ ii
AGRADECIMIENTOS ..................................................................................................... iii
TAREA TÉCNICA ........................................................................................................... iv
RESUMEN ........................................................................................................................ v
INTRODUCCIÓN. ............................................................................................................ 1
CAPÍTULO 1. Introducción a la computación en la nube ............................................... 4
1.1 Introducción al capítulo .................................................................................... 4
1.2 Definición de computación en la nube .............................................................. 4
1.3 Características principales ................................................................................. 5
1.3.1 Acceso en red de banda ancha ....................................................................... 5
1.3.2 Servicio medido ............................................................................................ 5
1.3.3 Multiarrendamiento ....................................................................................... 6
1.3.4 Autoservicio a voluntad ................................................................................. 6
1.3.5 Elasticidad y redimensionamiento acelerados ................................................ 6
1.3.6 Combinación de recursos .............................................................................. 6
1.4 Funciones y actividades de la computación en la nube ...................................... 6
1.5 Tipos de capacidades en la nube ....................................................................... 7
TABLA DE CONTENIDOS vii
1.6 Categorías del servicio que ofrece la nube ......................................................... 7
1.7 Modelos de implantación en la nube ................................................................. 8
1.7.1 Nubes públicas .............................................................................................. 8
1.7.2 Nubes privadas .............................................................................................. 9
1.7.3 Nubes comunitarias ....................................................................................... 9
1.7.4 Nubes híbridas .............................................................................................. 9
1.8 Antecedentes .................................................................................................. 10
1.9 Almacenamiento en la nube ............................................................................ 11
1.9.1 Nubes de código abierto .............................................................................. 11
1.10 Solución para nube privada en la red corporativa de ETECSA ........................ 13
1.11 Conclusiones del Capítulo .............................................................................. 14
CAPÍTULO 2. Componentes de la nube privada .......................................................... 15
2.1 Introducción al capítulo .................................................................................. 15
2.2 Servidor Web Apache ..................................................................................... 17
2.2.1 Protocolo seguro HTTPS ............................................................................. 17
2.3 Gestor de base de datos MySQL ..................................................................... 18
2.3.1 Ventajas que ofrece MySQL ....................................................................... 18
2.4 Interprete PHP ................................................................................................ 19
2.4.1 PHP frente a otros lenguajes ........................................................................ 20
2.5 Docker ............................................................................................................ 20
2.6 Collabora como suite ofimática ....................................................................... 21
2.7 Red de área de Almacenamiento (SAN) .......................................................... 22
2.7.1 MSA 2040 SAN .......................................................................................... 23
2.7.2 Configuración MSA 2040 SAN en la DTVC ............................................... 23
TABLA DE CONTENIDOS viii
CAPÍTULO 3. Implementación de Nextcloud en la DTVC .......................................... 25
3.1 Primeros pasos en Nextcloud .......................................................................... 25
3.2 Aplicaciones ................................................................................................... 27
3.2.1 Archivos ..................................................................................................... 28
3.2.2 Calendario ................................................................................................... 31
3.2.3 CODE ......................................................................................................... 32
3.2.4 Videoconferencia ........................................................................................ 33
3.3 Análisis de tráfico en la interfaz del servidor ................................................... 34
3.4 Guía de usuario para ETECSA ........................................................................ 35
CONCLUSIONES Y RECOMENDACIONES ................................................................ 37
Conclusiones ................................................................................................................ 37
Recomendaciones ......................................................................................................... 38
REFERENCIAS BIBLIOGRÁFICAS .............................................................................. 39
ANEXOS ......................................................................................................................... 42
1
INTRODUCCIÓN.
La computación en la nube representa uno de los avances más importantes en la historia de
la computación [1] [2] [3] [4]. Esta tecnología admite algunos atributos claves importantes,
como la dinámica, la abstracción, el intercambio de recursos y la escalabilidad virtualmente
infinita[5]. El incremento de la conectividad, las velocidades de intercambio de la
información y su seguridad son elementos que fortalecen la tendencia al uso de los
servicios en la red[6]. Desde el punto de vista empresarial, la computación en la nube
constituye un modelo tecnológico muy importante que permite abordar algunos de los
desafíos fundamentales a los que se enfrentan las empresas y en términos de transformación
digital[4].
La División Territorial de ETECSA en Villa Clara (DTVC), se encuentra inmersa en un
proceso de migración a código abierto. Esto conlleva que cada paso dado en este sentido
debe ser compatible con todo tipo de plataformas. Actualmente los servicios de la red
corporativa se brindan por separado y en ocasiones requieren la instalación de varios
programas para acceder a ellos. Hoy es una necesidad poder almacenar y compartir
información de manera sencilla desde cualquier lugar del país sin la intervención de un
administrador. Por otra parte el servicio de videoconferencia que se brinda se realiza
mediante una variante privativa, por lo que sería de gran utilidad implementarlo en código
abierto. También se encuentran en funcionamiento varias plataformas de usuario y
diferentes tipos de ficheros office, teniéndose que instalar más de un paquete de oficina.
Por todo lo anteriormente expuesto es necesario contar con una herramienta que unifique
todos los servicios, facilite el trabajo en equipo y la tarea de la migración a software libre.
Precisamente la computación en la nube es una solución atractiva y actualizada a todas
INTRODUCCIÓN
2
estas problemáticas, ya que permite una integración probada de todos los servicios sin la
necesidad de grandes inversiones.
En este trabajo se propone la creación de una nube privada mediante el software Nextcloud,
que permitirá principalmente el alojamiento y sincronización de archivos. Además de la
edición de documentos en línea, compartir información, entre otras funcionalidades para el
uso interno de los empleados. Para ello se realiza un análisis de las herramientas de código
abierto disponibles para la creación de nubes privadas de almacenamiento y trabajo
colaborativo.
De acuerdo a los elementos expuestos anteriormente podemos definir el problema científico
de este trabajo:
¿Cómo crear una nube privada en la red corporativa de ETECSA en Villa Clara
implementando una de las plataformas desarrolladas para este propósito?
El objetivo general propuesto es:
Implementar una nube privada en la red corporativa de ETECSA en Villa Clara, que
permita la interacción entre usuarios y contribuya a la migración a código abierto.
A partir del objetivo general se plantean los siguientes objetivos específicos:
Definir aspectos fundamentales en la tecnología de computación en la nube.
Realizar un análisis del estado actual de la tecnología en computación en la nube.
Proponer la plataforma más apropiada para implementar una nube privada en el
entorno de ETECSA.
Instalar y configurar el conjunto de aplicaciones requeridas para brindar servicios de
cómputo en la nube en la DTVC.
Durante el desarrollo de la investigación se dan respuesta a las siguientes interrogantes
científicas:
¿Cuál es el estado actual de la tecnología en computación en la nube?
¿Cuáles son los requerimientos (hardware y software) que debe cumplir un servidor para la
implementación de una nube privada en el entorno de ETECSA en Villa Clara?
INTRODUCCIÓN
3
¿Cómo instalar y configurar una nube privada en código abierto, que satisfaga los servicios
demandados por los usuarios de la red corporativa de ETECSA en Villa Clara?
El informe está estructurado de la siguiente forma: introducción, capitulario, conclusiones,
recomendaciones, referencias bibliográficas, y anexos. A continuación se resume
brevemente el contenido de los capítulos.
Capítulo 1: Introducción a la computación en la nube.
Se dedica al estudio de los aspectos fundamentales de la computación en la nube y contiene
un resumen de los antecedentes o hechos trascendentales en la historia de dicha tecnología.
Se hace una comparación de las herramientas de código abierto más populares para la
creación de nubes privadas y se selecciona la más adecuada de acuerdo a las necesidades de
la entidad.
Capítulo 2: Componentes de la nube privada.
Comprende el diseño de una plataforma para la implementación de los servicios de
computación en una nube privada.
Capítulo 3: Implementación de Nextcloud en la DTVC.
Se dedicará a la instalación y configuración de un conjunto de aplicaciones para la edición
de documentos en línea, alojamiento, sincronización de archivos y realización de
videoconferencias, además se mostrarán los resultados de pruebas de tráfico realizadas para
comprobar la ocupación del canal.
Este trabajo presenta un positivo impacto económico y social, pues se brindan soluciones
novedosas a problemáticas vinculadas con las tecnologías de la información. Los resultados
repercutirán de forma directa en una mejora del servicio a los usuarios de la Empresa.
Además se contará con una útil herramienta que ofrece la posibilidad de agregar nuevas
funcionalidades. Los resultados del proyecto poseen una aplicación práctica y teórica para
los especialistas vinculados a las tecnologías de la información. Este proyecto es factible
debido a que no ofrece costo alguno por pago de licencias de software y equipamiento
adicional de hardware a utilizar.
4
CAPÍTULO 1. Introducción a la computación en la nube
1.1 Introducción al capítulo
El presente capítulo estará dedicado a la descripción de los fundamentos teóricos necesarios
para el desarrollo del trabajo, basado en la revisión de la literatura sobre el tema.
Primeramente será descrito la definición de la computación en la nube, así como un
conjunto de términos y definiciones relacionados con la misma. Luego se describen los
antecedentes de la computación en la nube, así como la temática relacionada con el
almacenamiento en la nube, sus características y las principales ventajas de utilizar el
código abierto para la implementación de nubes privadas. Finalmente se establece una
comparación entre 2 de las más populares nubes de código abierto en la actualidad
(Owncloud y Nextcloud), seleccionando la más adecuada para implementar en ETECSA.
1.2 Definición de computación en la nube
En los últimos años numerosas han sido las ideas expuestas acerca de lo que significa
computación en la nube o cloud computing, autores y organizaciones diversas han tratado
de formular definiciones oficiales. Una de las definiciones más ampliamente aceptada es la
de National Institute of Standards and Technology (NIST), una agencia federal que
promueve la innovación y la competencia industrial mediante avances en metrología,
normas y tecnología [7] [8] [9] [10] [11] [12].
Según NIST [13] la computación en nube es un modelo que permite, convenientemente, el
acceso bajo demanda a redes ubicuas para compartir un conjunto configurable de recursos
de computación (por ejemplo, redes, servidores, almacenamiento, aplicaciones y servicios)
que se pueden proveer y liberar rápidamente con un mínimo esfuerzo de administración o
interacción del proveedor del servicio.
CAPÍTULO 1. Introducción a la computación en la nube.
5
Entre los principales esfuerzos de estandarización de la computación en la nube se
encuentran los realizados por la UIT (Unión Internacional de Telecomunicaciones ó ITU
por sus siglas en inglés). Por otra parte, la ITU-T también ha hecho esfuerzos conjuntos con
la ISO (International Standards Organization) y la IEC (International Electrotechnical
Commission), y han desarrollado algunas recomendaciones conjuntas.
Según la Recomendación ITU-T Y.3500[14] y la ISO/IEC 17788[15], la computación en la
nube es un paradigma que permite el acceso en red a un conjunto redimensionable y
elástico de recursos físicos o virtuales compartibles con capacidad de autoconfiguración del
servicio y administración a voluntad.
Este modelo consta de las características principales, las funciones y las actividades, tipos
de capacidades, las categorías del servicio y los modelos de despliegue en la nube.
1.3 Características principales
Las características fundamentales de la computación en la nube son las siguientes:
1. Acceso en red de banda ancha
2. Servicio medido
3. Multiarrendamiento
4. Autoservicio a voluntad
5. Elasticidad y redimensionamiento acelerados
6. Combinación de recursos
1.3.1 Acceso en red de banda ancha
Las capacidades están disponibles en la red y se acceden a través de mecanismos estándares
que promueven el uso heterogéneo de plataformas de cliente ligeras o pesadas (por
ejemplo, teléfonos móviles, tabletas, computadoras portátiles y estaciones de trabajo)[14]
[15].
1.3.2 Servicio medido
Los sistemas en nube controlan y optimizan sus recursos dotándose de capacidades de
medición en un nivel de abstracción apropiado al tipo de servicio (almacenamiento,
CAPÍTULO 1. Introducción a la computación en la nube.
6
procesamiento, ancho de banda y cuentas activas de usuario). El uso de recursos puede ser
monitorizado, controlado e informado, proporcionando transparencia para el proveedor y
para el usuario[14] [15].
1.3.3 Multiarrendamiento
Los recursos físicos o virtuales están atribuidos de manera que los diversos arrendatarios y
sus cálculos y datos están aislados y son inaccesibles para los demás[14] [15].
1.3.4 Autoservicio a voluntad
El cliente de servicios en la nube puede configurar las capacidades de computación, en
función de sus necesidades, de manera automática o con mínima interacción con el
proveedor de servicios en la nube[14] [15].
1.3.5 Elasticidad y redimensionamiento acelerados
Los recursos físicos o virtuales pueden ajustarse rápida y elásticamente, en algunos casos
de manera automática, para aumentar o disminuir dichos recursos. Sus características de
aprovisionamiento dan la sensación de que pueden adquirirse en cualquier cantidad o
momento[14] [15].
1.3.6 Combinación de recursos
Los recursos físicos o virtuales del proveedor de servicios en la nube se pueden combinar
para dar servicio a uno o varios clientes de servicios en la nube. Todo lo que el cliente sabe
es que el servicio funciona, aunque generalmente no tenga el control ni sepa cómo se
suministran los recursos o dónde están situados[14] [15].
1.4 Funciones y actividades de la computación en la nube
Todas las actividades relacionadas con la computación en la nube se pueden clasificar en 3
grupos principales: actividades que utilizan servicios, actividades que proporcionan
servicios y actividades que dan soporte a servicios[14] [15].
CAPÍTULO 1. Introducción a la computación en la nube.
7
Cliente de servicios en la nube: mantiene una relación comercial a los efectos de
utilizar servicios en la nube. La relación comercial es con un proveedor de servicios
en la nube o un asociado de servicio en la nube.
Proveedor de servicio en la nube: pone a disposición los servicios en la nube, se
concentra en las actividades necesarias para proporcionarlos y las actividades
necesarias para garantizar su suministro al cliente y el mantenimiento del servicio.
Asociado de servicio en la nube: da soporte, o es auxiliar a, las actividades de un
proveedor de servicios en la nube o de un cliente, o de ambos.
1.5 Tipos de capacidades en la nube
Es una clasificación de la funcionalidad que el servicio en la nube ofrece al cliente en
función de los recursos utilizados. Hay 3 tipos diferentes de capacidades en la nube: de
aplicación, de infraestructura y de plataforma[14] [15].
Capacidades de tipo aplicación: el cliente de servicios en la nube puede utilizar
las aplicaciones del proveedor de servicios en la nube.
Capacidades de tipo infraestructura: el cliente de servicios en la nube puede
configurar y utilizar recursos de procesamiento, almacenamiento e interconexión.
Capacidades de tipo plataforma: el cliente de servicios en la nube puede
desplegar, gestionar y ejecutar aplicaciones compradas o creadas por el cliente
utilizando uno o varios lenguajes de programación y uno o varios entornos de
ejecución admitidos por el proveedor de servicios.
1.6 Categorías del servicio que ofrece la nube
Relaciona un grupo de servicios que posee un conjunto de cualidades comunes y puede
incluir uno o varios tipos de capacidades en la nube. Según[14] [15], las categorías del
servicio en la nube representativas son las siguientes:
Comunicación como servicio (CaaS): ofrece al cliente de servicios en la nube
capacidad de interacción y colaboración en tiempo real.
CAPÍTULO 1. Introducción a la computación en la nube.
8
Cálculo como servicio (CompaaS): ofrece al cliente de servicios en la nube
capacidades de configuración y utilización de recursos de procesamiento necesarios
para desplegar y ejecutar software.
Almacenamiento de datos como servicio (DSaaS): ofrece al cliente de servicios
en la nube capacidades de configuración y utilización de almacenamiento de datos y
sus capacidades relacionadas.
Infraestructura como servicio (IaaS): ofrece al cliente de servicios en la nube
capacidades de tipo infraestructura.
Red como servicio (NaaS): ofrece al cliente de servicios en la nube conectividad de
transporte y sus correspondientes capacidades de red.
Plataforma como servicio (PaaS): ofrece al cliente de servicios en la nube
capacidades de tipo plataforma.
Software como servicio (SaaS): ofrece al cliente de servicios en la nube
capacidades de tipo aplicación.
1.7 Modelos de implantación en la nube
Se refiere a cómo se organiza la computación en la nube en función del control y la
compartición de recursos físicos o virtuales en 4 categorías:
1. Nube pública
2. Nube privada
3. Nube comunitaria
4. Nube híbrida
1.7.1 Nubes públicas
Los servicios en la nube están potencialmente disponibles para cualquier cliente y los
recursos son controlados por el proveedor de la nube. La nube pública es propiedad,
gestionada y explotada por una organización privada, académica o gubernamental, o una
combinación de las mismas[13] [14] [15].
CAPÍTULO 1. Introducción a la computación en la nube.
9
1.7.2 Nubes privadas
Son utilizados exclusivamente por un solo cliente y los recursos son controlados por dicho
cliente. La nube privada es propiedad, gestionada y explotada por la propia organización o
por un tercero y puede estar situada dentro o fuera de sus instalaciones[13] [14] [15].
1.7.3 Nubes comunitarias
Están compartidos y destinados exclusivamente a un conjunto específico de clientes que
tienen necesidades comunes y están relacionados entre sí, y cuyos recursos están
controlados por al menos un miembro de ese grupo. Las nubes comunitarias son menos
abiertas que las nubes públicas, pero más que las nubes privadas[13] [14] [15].
1.7.4 Nubes híbridas
Es una combinación de al menos dos tipos diferentes de modelos de implantación en la
nube. Cada despliegue sigue siendo una entidad única aunque esté vinculado con otro
mediante una tecnología adecuada que permita la interoperabilidad, la portabilidad de los
datos y la portabilidad de aplicaciones[13] [14] [15].
La figura 1.1 muestra de manera gráfica los aspectos fundamentales de computación en la
nube según la recomendación de la UIT.
Figura 1.1. Modelo de computación en la nube (Elaboración propia en base a la UIT).
CAPÍTULO 1. Introducción a la computación en la nube.
10
1.8 Antecedentes
La computación en nube ha recorrido un largo camino desde que fue marcada por primera
vez como una perspectiva de futuro por parte de algunos investigadores. Su concepto
básico se le atribuye al profesor del MIT (Instituto Tecnológico de Massachusetts), John
McCarthy[1] [16] [17] [18]. En 1961, fue el primero en sugerir públicamente que la
tecnología de tiempo compartido de las computadoras podría conducir a un futuro donde el
poder del cómputo y las aplicaciones específicas podrían venderse como un servicio.
Esta idea era muy popular en la década de 1960, pero se desvaneció a mediados de los años
70 debido a que el hardware, software y las tecnologías de comunicación simplemente no
estaban preparados[1] [16]. Uno de los precursores en la computación en nube fue
Salesforce.com, que en 1999 introdujo el concepto de entrega de aplicaciones empresariales
a través de una sencilla página web[19]. Sin embargo, Amazon fue el primero en venderla
como un servicio[3], lanzando en el 2002 Amazon Web Services y en el 2006, Amazon
EC2 y S3[20].
Posteriormente varios de los principales proveedores lanzaron soluciones en la nube,
ejemplo: Google, IBM, Sun, HP, Microsoft, Forces.com, Yahoo entre otros. A partir del
2007 el número de empresas que cubren productos y servicios de computación en la nube
ha aumentado a un ritmo casi exponencial[16].
En la actualidad son varios los proyectos de código abierto que han ido aparecido
gradualmente, un ejemplo de ello son las plataformas para nubes CloudStack, Eucalypyus,
Nimbus, OpenStack y OpenNebula[5].
La pionera en el empleo de las tecnologías de la computación en la nube sobre software
libre en Cuba fue la Red de Universidades (RedUniv) .En el nodo nacional de la red de
datos del sistema de centros docentes del Ministerio de Educación Superior, se construyó
una nube de servidores, buscando la optimización de los equipos disponibles y del consumo
energético. Como resultado de ello se logró poner en servicio el portal de la Editorial
Universitaria y la versión 2.0 de la Biblioteca Virtual de la EcuRed[21].
En el proceso de informatización del Sistema Nacional de Salud en Cuba, desde su
concepción inicial está presente la semilla de la computación en la nube. La plataforma de
CAPÍTULO 1. Introducción a la computación en la nube.
11
servicios SISalud, soporta y garantiza de una forma sencilla y eficiente el acceso a
servicios, sistemas y aplicaciones centralizadas en Infomed[6].
La Empresa de Informática y Automatización para la Construcción (Aicros), a través de
una tecnología de computación en la nube, se enfoca en la automatización del sector
constructivo, que permitiría la interconexión de más de 300 empresas y 220 000
empleados[22].
1.9 Almacenamiento en la nube
El almacenamiento en la nube o es un modelo de almacenamiento en red y en línea donde
los datos se almacenan en varios servidores virtuales, por lo general organizados por
terceros, en lugar de ser alojados en servidores dedicados. Los operadores de los centros de
datos virtualizan los recursos de acuerdo a los requerimientos del cliente y permiten que los
clientes puedan utilizar este servicio para almacenar archivos u objetos de datos.
Las características fundamentales del almacenamiento en la nube incluyen el acceso a la
red con mayor frecuencia a través de un navegador, aprovisionamiento según demanda,
control del usuario y cumplimiento de estándares abiertos para que este sea neutral en el
sistema operativo y de archivos. Estas características, tomadas en conjunto, definen una
oferta que se describe mejor como un modelo de Infraestructura como Servicio. Sin
embargo, la mayoría de los usuarios no aprovisionan almacenamiento bajo IaaS. En su
lugar, interactúan con el almacenamiento en la nube mediante copia de seguridad,
sincronización, archivo, almacenamiento en caché o algún otro tipo de software. La adición
de un paquete de software sobre un volumen de almacenamiento en la nube hace que la
mayoría de las ofertas se ajusten a un modelo de SaaS[19].
1.9.1 Nubes de código abierto
Cuando se utilizan nubes públicas de almacenamiento como Microsoft One Drive, Google
Drive y Dropbox, los usuarios aceptan el acuerdo de licencia, pero como factor limitante se
puede considerar la pérdida de privacidad y la amenaza a la seguridad de la información.
Una solución acertada podría ser una nube de almacenamiento privada como una
alternativa [23]. Otros conceptos tecnológicos a considerar en el crecimiento e implantación
CAPÍTULO 1. Introducción a la computación en la nube.
12
de computación en la nube residen en el uso de código abierto o software libre, y los
estándares abiertos[24].
En la actualidad el código abierto se utiliza para definir un movimiento nuevo de software
(Iniciativa Open Source), diferente al movimiento del software libre, incompatible con este
último desde el punto de vista filosófico. Sin embargo, son equivalentes desde el punto de
vista práctico, de hecho, ambos movimientos trabajan juntos en el desarrollo de proyectos.
La idea bajo el concepto de código abierto es sencilla: cuando los programadores pueden
leer, modificar y redistribuir el código fuente de un programa, éste evoluciona, se desarrolla
y mejora. Los usuarios lo adaptan a sus necesidades, corrigen sus errores a una velocidad
impresionante, mayor a la aplicada en el desarrollo de software convencional o cerrado,
dando como resultado una producción mejorada.
Por otro lado el uso del software propietario exige depositar una confianza absoluta en su
proveedor, pues los usuarios no tienen forma de saber qué efectos puede tener el nuevo
programa sobre el sistema a que se aplique. Además lleva implícito otro peligro: la
dependencia, siempre existe el inconveniente de que la empresa deje de ofrecer soporte
técnico para sus sistemas, ejemplo de ello, los habituales anuncios de Microsoft, que
descontinuará sus programas más viejos para forzar la compra de nuevas versiones[25].
Existen también opciones de almacenamiento en la nube de código abierto que permiten
adaptar la tecnología de almacenamiento en la nube a las distintas necesidades de los
usuarios.
La alternativa de uso de almacenamiento en la nube de código abierto haciendo uso de un
servidor propio, proporciona gran versatilidad. Brinda adaptación a los usuarios y a las
empresas, ya que pueden adaptar el software creado bajo esta licencia a las necesidades
propias, así como garantizar la localización de sus datos. Esta alternativa necesitará la
inversión en infraestructura por parte de la empresa que permita su despliegue.
Las API (Application Programming Interface) encaminadas a adaptar los servicios de la
computación en la nube llevan tiempo adecuando las herramientas para adaptarlas al mayor
número de usuarios, ya que en estos momentos casi es más un sistema de almacenaje. Al
elegir un servicio en la nube para el despliegue de una nube privada, es importante analizar
las características del software en función de las necesidades de la empresa y los usuarios.
CAPÍTULO 1. Introducción a la computación en la nube.
13
1.10 Solución para nube privada en la red corporativa de ETECSA
A continuación se realiza una comparación entre las principales herramientas de software
libre para implementar una nube privada, que permita el almacenamiento e intercambio de
información. Para esta comparación se han tomado 4 de las más populares soluciones de
software para nubes privadas utilizadas en la actualidad: OwnCloud, Nextcloud, Pydio y
SeaFile.
En la figura 1.2 se muestra un gráfico de Google Trends, que indica con cuánta frecuencia
se realiza una búsqueda de un término particular en varias regiones del mundo y en varios
idiomas. Evidentemente las dos plataformas que han alcanzado mayor popularidad son
OwnCloud y Nextcloud, la fecha fijada es desde la salida de este último al mercado, en
Junio del 2016 hasta la actualidad.
Figura 1.2. Gráfico de Google Trends.
OwnCloud es un software libre multiplataforma que permite el almacenamiento de archivos
en línea, y ofrece una serie de funcionalidades. Sin embargo aun siendo software libre de
código abierto, ofrece servicios de soporte y funcionalidades extras de pago. Estas
funcionalidades son de código cerrado y no están presentes en la versión gratuita[26].
Nextcloud es un sistema de almacenamiento de archivos de código abierto, basado en el
software llamado OwnCloud. Fue creado por Frank Karlitschek, uno de los fundadores de
CAPÍTULO 1. Introducción a la computación en la nube.
14
OwnCloud e incorpora diversas mejoras[27]. La arquitectura abierta de Nextcloud es
extensible a través de un sencillo pero potente API para aplicaciones y plugins. Funciona
con cualquier almacenamiento. Al contrario de su antecesor los desarrolladores de
Nextcloud se comprometieron a mantener todas la funcionalidades como software de
código abierto.
Nextcloud ofrece funciones de videoconferencia, llamadas de audio y la posibilidad de
compartir pantalla que no están presentes en OwnCloud. Además de la sincronización y
compartición de ficheros, también incorpora soporte total para Spreed.ME, una plataforma
de comunicación de última generación basada en WebRTC para realizar conferencias y
chats de texto. El producto incorpora muchas funcionalidades como integración con LDAP
(Lightweight Directory Access Protocol), contraseñas integradas, cuotas de usuario,
etcétera. También contiene aplicaciones de calendario y contactos para enriquecer la
experiencia del usuario en otras áreas[28].
Todo lo anterior lo identifica como una solución acertada para la implementación de una
nube privada en la red corporativa de ETECSA.
1.11 Conclusiones del capítulo
En el presente capítulo se describieron los fundamentos necesarios para el trabajo.
Primeramente se definió el concepto de computación en la nube, sus características
fundamentales, así como sus funciones, capacidades, categorías de servicio y sus modelos
de implantación en la nube. Posteriormente se describieron los antecedentes de la
computación en la nube y se pudo observar la actualidad e importancia del tema, tanto en
Cuba como a nivel global. Luego se describió la tecnología de almacenamiento en la nube y
se abordó acerca de la ventaja de utilizar las nubes privadas de código abierto sobre las de
software privativo.
Finalmente se realizó una comparación de las plataformas de código abierto Owncloud y
Nextcloud, resultando esta última como más adecuada para implementar en el entorno de
ETECSA en Villa Clara.
15
CAPÍTULO 2. Componentes de la nube privada
2.1 Introducción al capítulo
El presente capítulo estará dedicado a la descripción de los componentes básicos para la
implementación de la nube privada Nextcloud en la DTVC. Para este propósito y mediante
el diagrama en bloques de la figura 2.1, se define la plataforma de virtualización en la cual
será instalada, así como los recursos asignados. Seguidamente se abordarán por separados
todos los módulos correspondientes a la figura 2.1. Estos contienen como base una
infraestructura llamada LAMP, conformada por: un sistema operativo Linux, un servidor
web Apache, un gestor de base de datos MySQL y un intérprete PHP. A continuación se
describe la base para la instalación de una suite ofimática en Nextcloud, a través de Docker
y Collabora. Finalmente se estudia la tecnología HP modelo MSA 2040 utilizada para el
almacenamiento del sistema, y se asigna la capacidad para la implementación del mismo.
2.2 Diagrama en bloques generales del sistema.
El centro de datos de la división territorial de ETECSA en Villa Clara se encuentra
virtualizado sobre VMware ESXi 6.x. Se creó un servidor virtual que utiliza como base el
sistema operativo CentOS 7, basado en la distribución Red Hat Enterprise Linux. Al mismo
se le asignó 8GB de memoria RAM.
Para decidir la capacidad total de almacenamiento del sistema se tuvo en cuenta el número
de usuarios de ETECSA en Villa Clara, cifra que asciende a 850 trabajadores. Se decide
conceder a cada uno un total de 10GB. Lo cual indica que se requiere como mínimo un
total de 8,5TB de almacenamiento. Para implementar el sistema se utilizó un
almacenamiento profesional HP MSA 2040.
CAPÍTULO 2. Componentes de la nube privada
16
El almacenamiento utiliza tecnología LVM (Logical Volume Manager), permitiendo el
redimensionamiento de volúmenes y grupos lógicos. Dicha tecnología proporciona una
vista de alto nivel sobre el almacenamiento, en vez de la tradicional vista de discos y
particiones. Los volúmenes de almacenamiento bajo el control de LVM pueden ser
redimensionados y movidos a voluntad, facilitando también la administración en grupos
definidos por el usuario.
Cuando un nuevo disco se añade al sistema, no es necesario mover los datos de los
usuarios. Simplemente se añade el nuevo disco al grupo lógico correspondiente y se
expanden los volúmenes lógicos todo lo que se considere adecuado. También se pueden
migrar los datos de discos antiguos a otros nuevos, de forma totalmente transparente al
usuario[29].
Para una mayor comprensión del sistema, en la figura 2.1 se ilustra un esquema general que
agrupa los elementos más importantes del mismo.
Figura 2.1. Diagrama general de componentes del sistema.
CAPÍTULO 2. Componentes de la nube privada
17
En la figura 2.1 se observan los módulos necesarios para el correcto funcionamiento de
Nextcloud. A continuación se abordaran los aspectos fundamentales de cada uno de ellos.
2.3 Servidor web Apache
El proyecto Apache surgió como un esfuerzo cooperativo entre un grupo de webmasters
que quisieron construir una implementación de grado robusto y comercial del protocolo
HTTP (Hypertext Transfer Protocol). Actualmente este producto es lo suficientemente
poderoso para responsabilizarse por las necesidades de casi cualquier empresa. Es también
lo suficientemente simple de configurar que la mayoría de administradores lo pueden
obtener e implementarlo en pocos minutos[1]. Se caracteriza por ser estable,
multiplataforma y modular, lo cual significa que se puede adaptar para satisfacer diferentes
necesidades. Apache registra los diferentes eventos que ocurren cuando está en servicio a
través de archivos log, de esta manera facilita la obtención de estadísticas que son usadas
para la toma de decisiones por parte del administrador. Además, dispone de componentes
de seguridad, los cuales pueden ser aprovechados para fortalecer las condiciones de acceso
a recursos web disponibles para ser recuperados a través de solicitudes HTTP realizadas
por un navegador[30].
El HTTP Apache Server Project [31] sigue siendo un esfuerzo de desarrollo de software
colaborativo a grado comercial, una implementación de amplio espectro, libremente
disponible (con código de fuente) de un servidor HTTP. El proyecto está conjuntamente
bajo la dirección de un grupo de voluntarios localizados alrededor del mundo, que usan la
web para comunicar, pensar, y diseñar el servidor y su documentación relacionada [1].
2.3.1 Protocolo seguro HTTPS
En el entorno de la nube el control de acceso resulta de vital importancia, ya que los datos
son accesibles para todos los usuarios a través de un navegador web. En el sistema se
utilizó LDAP Territorial de ETECSA como base de datos para la autenticación, logrando
un acceso al servicio de directorio.
CAPÍTULO 2. Componentes de la nube privada
18
Debido a que datos sensibles o contraseñas viajan por la red, se configuró Apache para
recibir conexiones seguras mediante el protocolo HTTPS (Hypertext Transfer Protocol
Secure), es decir HTTP sobre SSL (Secure Socket Layer).
Para que el servidor web acepte estas conexiones HTTPS, es necesario crear un certificado
de clave pública para este [32]. No está al alcance de la provincia comprar un certificado
firmado por una autoridad de certificación internacional, por lo que se optó por crear
certificados auto firmados de 2048 bits. Para todo ello se utilizó la herramienta de código
abierto OpenSSL.
2.4 Gestor de base de datos MySQL
MySQL es un sistema de base de datos multiusuario distribuido bajo Licencia Pública
General (GNU, por sus siglas en inglés), que ha alcanzado a ser el gestor de base de datos
de código abierto más popular del mundo[1] [33]. Su continua evolución se debe al gran
número de desarrolladores que trabajan para mejorar el código y mantenerlo actualizado.
2.4.1 Ventajas que ofrece MySQL
Escalabilidad y flexibilidad
Es capaz de manejar bases de datos empotradas ocupando solamente 1MB. La flexibilidad
de plataforma es una característica clásica de MySQL, soporta distintas versiones de Linux,
UNIX y Windows.
Alto rendimiento
Una arquitectura única de motores de bases de datos permite configurar el servidor MySQL
para aplicaciones específicas, dando como resultado un rendimiento elevado.
Robusto soporte transaccional
Ofrece uno de los motores de bases de datos más potentes de código abierto. Las
características incluyen un soporte completo de ACID (atómica, consistente, aislada,
duradera), bloqueo a nivel de filas, posibilidad de transacciones distribuidas, y soporte de
transacciones con múltiples versiones donde los lectores no bloquean a los escritores y
viceversa.
CAPÍTULO 2. Componentes de la nube privada
19
Fortaleza en web
Es el estándar para sitios web de gran tráfico por su motor de consultas de alto rendimiento,
su posibilidad de insertar datos a gran velocidad, y un buen soporte para funciones web
especializadas, como las búsquedas de texto completo.
Fuerte protección de datos
Proteger los datos es el trabajo principal de los profesionales de bases de datos, MySQL
ofrece características de seguridad que aseguran la protección de los datos. En cuanto a
autenticación, ofrece potentes mecanismos para asegurar que solamente los usuarios
autorizados tienen acceso al servidor. También se ofrece soporte SSH y SSL para asegurar
conexiones seguras. Existe una estructura de privilegios que posibilita que los usuarios
accedan sólo a los datos que se les permitan, así como potentes funciones de cifrado y
descifrado para asegurar que los datos están protegidos. Finalmente, se ofrecen utilidades
de respaldo y de recuperación por parte de MySQL y terceros, que permiten copias
completas, tanto lógicas como físicas.
Facilidades de gestión
Posibilita la instalación y puesta a punto en un tiempo corto, sin importar que la plataforma
sea Windows, Linux o UNIX. MySQL también ofrece una completa colección de
herramientas gráficas de gestión que permiten controlar y resolver problemas en varios
servidores desde una misma estación de trabajo[34].
2.5 Interprete PHP
PHP es un acrónimo recursivo para "PHP: Hypertext Preprocessor" originalmente Personal
Home Page. Figura entre los primeros lenguajes posibles para la inserción en documentos
HTML, dispensando en muchos casos el uso de archivos externos para eventuales
procesamientos de datos. El código es interpretado en el lado del servidor por el módulo
PHP, que también genera la página web para ser visualizada en el lado del cliente. Se trata
de un lenguaje extremadamente modularizado, que lo hace ideal para la instalación y uso de
servidores web[35].
CAPÍTULO 2. Componentes de la nube privada
20
2.5.1 PHP frente a otros lenguajes
Para seleccionar un lenguaje de script, los 5 grandes requisitos que deben valorarse son:
Velocidad: no solo la velocidad de ejecución, sino además la de crear demoras en la
máquina. Por esta razón no debe requerir demasiados recursos de sistema. PHP se
integra muy bien con otros softwares, especialmente bajo ambientes Unix.
Estabilidad: la velocidad no sirve de mucho si el sistema colapsa cada cierta
cantidad de ejecuciones. Ninguna aplicación es 100% libre de errores de software,
pero cuenta con una de comunidad de programadores y usuarios de respaldo. PHP
utiliza su propio sistema de administración de recursos y dispone de un sofisticado
método de manejo de variables, conformando un sistema robusto y estable.
Seguridad: el sistema debe poseer protecciones contra ataques. PHP provee
diferentes niveles de seguridad, estos pueden ser configurados desde al archivo
php.ini.
Simplicidad: permite a los programadores generar código productivamente en el
menor tiempo posible. Usuarios con experiencia en C y C++ pueden utilizar PHP
rápidamente.
Conectividad: PHP dispone de una amplia gama de librerías, y agregarle
extensiones es muy fácil. Permitiéndole ser utilizado en áreas diferentes, tales como
encriptado, gráficos, XML y otros.
PHP es de código abierto, lo cual significa que el usuario no depende de una compañía
específica para arreglar las cosas que no funcionan, además no está forzado a pagar
actualizaciones para tener una versión funcional[34].
Como fue explicado anteriormente, los usuarios de Nextcloud se autentican con el servicio
de directorio territorial. Para que esto sea posible es necesario la instalación del módulo
“php-ldap” en el servidor CentOs.
2.6 Docker
Docker es un proyecto de código abierto que automatiza el despliegue de aplicaciones
dentro de contenedores de software[36]. Esta tecnología llamada contenedores de Linux
tiene un enfoque diferente a la virtualización; puede llamarse una virtualización a nivel de
CAPÍTULO 2. Componentes de la nube privada
21
sistema operativo. Puede ejecutar el sistema operativo host directamente en el hardware o
puede ejecutarse en una máquina virtual. Cada contenedor se ejecuta como un sistema
operativo completamente aislado[37]. Se basa en las características del kernel de Linux,
como espacios de nombres y grupos de control, para aislar contenedores independientes
que se ejecutan en la misma instancia de Linux. Un contenedor Docker encapsula una
aplicación, así como sus dependencias de software; se puede ejecutar en diferentes
máquinas Linux con el motor Docker[38].
Entre los principales beneficios en contextos de trabajo reales encontramos:
Reemplaza las máquinas virtuales (VMS)
Debido a que la tendencia actual en la virtualización es de emplear una máquina virtual
para cada servicio, en muchas situaciones se puede usar contenedores de Docker para
reemplazarlas. Su empleo requiere de menos recursos que una máquina virtual, y los
cambios en él son más fáciles y rápidos de compartir.
Software de empaquetado
Debido a que una imagen Docker no tiene dependencias, constituye una manera muy eficaz
de empaquetar software. Se puede construir una imagen con la garantía de que se ejecutará
en cualquier máquina Linux moderna.
Habilitar una arquitectura de micro servicios
Facilita la descomposición de un sistema complejo en una serie de partes más manejables y
conectables sin afectar el todo.
Reduciendo debugging overhead.
Dado el aislamiento que existe entre las imágenes de Docker, se puede depurar un
problema de manera más rápida en un sistema que usa este tipo de empaquetamiento de
software. Lo cual contribuye a una mejora en la disponibilidad del servicio[39].
2.7 Collabora como suite ofimática
Collabora es una compañía privada que ha estado a la vanguardia de la tecnología de
código abierto, proporcionando consultoría, formación y productos para las empresas. Una
CAPÍTULO 2. Componentes de la nube privada
22
de las más famosas tecnologías ofimáticas libres para Gnu/Linux, es LibreOffice, del cual
Collabora es uno de sus principales desarrolladores.
Uno de los principales reclamos de los usuarios, se refiere a la imposibilidad de realizar
trabajo colaborativo en línea, por lo que gran parte de los esfuerzos han sido encaminados
en esta dirección.
Collabora Office es considerado como la versión corporativa de LibreOffice, el cual no está
pensado para el entorno empresarial. Esta suite ofimática añade una serie de funciones y
servicios que no estaban disponibles, como el trabajo colaborativo y la posibilidad de
acceder a los documentos a través de Internet.
Collabora Online es una a poderosa herramienta de gestión de documentos basada en
LibreOffice, que soporta la mayor parte de formatos de documentos de texto, hojas de
cálculo y presentaciones, y que puede ser integrada en tu propia infraestructura. Las
principales funcionalidades son la edición colaborativa y el excelente soporte de los
archivos en formato office.
A partir de este paquete fue creada una nueva serie llamada CODE (Collabora Online
Development Edition). Esta es una versión algo más conservadora, pero aún, una edición de
desarrollo, de LibreOffice Online, y se basa en el núcleo de Collabora Office. Esta
herramienta, a su vez, se puede integrar mediante una imagen Docker, con las tecnologías
de nubes más populares, como NextCloud, OwnCloud y Pydio[40].
2.8 Red de área de Almacenamiento (SAN)
La red de área de almacenamiento (SAN, por sus siglas en inglés) se centra en el
almacenaje de datos utilizando una topología de red flexible. Además, con conexiones de
fibra óptica que permiten alta velocidad en la transferencia de datos. Sin duda, SAN es otro
enfoque de almacenamiento compartido que a menudo se usa en la nube. En SAN, la
gestión del almacenamiento de datos se encuentra relativamente independiente a la red de
área local, con el fin de lograr el máximo grado de intercambio de datos, así como la
extensión del sistema[41].
CAPÍTULO 2. Componentes de la nube privada
23
2.8.1 MSA 2040 SAN
Los modelos HP MSA son soluciones de almacenamiento de alto rendimiento que
combinan un rendimiento excelente con un alto nivel de fiabilidad, disponibilidad,
flexibilidad y facilidad de administración. Los modelos del receptáculo MSA 2040 están
diseñados para cumplir las especificaciones NEBS de nivel 3, MIL-STD-810G (requisitos
de almacenamiento) y de telecomunicaciones europeas.
Los receptáculos MSA 2040 admiten chasis de 2U de factor de forma grande (LFF de 12
discos) o factor de forma pequeña (SFF de 24 discos), con suministros de alimentación de
corriente alterna o bien de corriente directa.
Los modelos MSA 2040 SAN utilizan tecnología de controlador de red convergente, lo que
permite seleccionar los protocolos de interfaz de host disponibles: canal de fibra (FC) o
Internet iSCSI (iSCSI) admitidos por el sistema. Puede usar la interfaz de línea de
comandos (CLI, por sus siglas en inglés) para configurar todos los puertos de host del
módulo de controlador y usar uno de estos protocolos de interfaz de host:
FC de 16 GB
FC de 8 GB
FC de 4 GB
iSCSI de 10 GbE
iSCSI de 1 GbE
De forma alternativa, puede utilizar las interfaces de administración para definir los puertos
del controlador de red convergente y admitir una combinación de protocolos de interfaz de
host[42].
2.8.2 Configuración MSA 2040 SAN en la DTVC
Para el almacenamiento principal se utilizó una SAN de HP modelo MSA 2040 SFF, con
discos de 2,5 pulgadas hasta un máximo de 24, con la opción de montaje o sustitución en
caliente, permitiendo el reemplazo en caso de error o inactividad. Fueron utilizados 5
discos de 2 TB, y tecnología iSCSI de 1 Gb que viene integrada en este modelo.
CAPÍTULO 2. Componentes de la nube privada
24
La cabina posee, un puerto de administración, el cual se conectó para poder realizar la
primera configuración y que quedó conectado a través de Ethernet al servidor, para
posteriores configuraciones o posibles cambios a realizar.
Los receptáculos de controlador MSA 2040 SAN admiten 2 módulos de controlador que
utilicen el protocolo de interfaz iSCSI para la conexión con el puerto de host. Cada módulo
del controlador ofrece 4 puertos de host iSCSI. Fueron configurados 2 controladores o sea 8
conexiones de puertos iSCSI con un conector SFP RJ-45 que admiten velocidades de
transferencia de datos de hasta 1 Gbit/s. Las cuales utilizan CHAP (Challenge Handshake
Authentication Protocol) unidireccional o mutuo.
La figura 2.2 muestra la cabina MSA 2040 descrita anteriormente.
Figura 2.2. Cabina de Hardware MSA 2040.
2.9 Conclusiones del capítulo
En el presente capítulo se crearon las bases necesarias para la implementación de
Nextcloud. A través del software de virtualización VMware ESXi, se creó un servidor
virtual, donde fue instalado el sistema operativo Centos 7. Seguidamente fue configurado el
servidor web Apache, para recibir conexiones seguras mediante el protocolo HTTPS. Para
ello fue necesario crear certificados auto firmados de 2048 bits con la herramienta
OpenSSL, al no estar alcance la compra de un certificado firmado por una autoridad de
certificación internacional. También fue instalado el mundialmente conocido gestor de base
de datos MySQL, para la interacción con Nextcloud y el lenguaje de programación PHP.
Por otra parte se profundizó en la plataforma necesaria para la instalación de un paquete de
oficina, mediante una imagen de CODE y a través un contenedor Docker. Por último se
detalló la tecnología de almacenamiento profesional MSA 2040 SAN, donde fueron
utilizados5 discos de 2 TB, y tecnología iSCSI de 1 Gb.
25
CAPÍTULO 3. Implementación de Nextcloud en la DTVC
3.1 Introducción al capítulo
El presente capítulo estará dedicado a ilustrar y describir los resultados del trabajo.
Primeramente se describirá como dar los primeros pasos en Nextcloud, a través de su
ventana inicial. Posteriormente se ilustrarán las aplicaciones más importantes que fueron
implementadas en la DTVC, para satisfacer las necesidades de los usuarios. Finalmente se
realizarán mediciones de tráfico en el servidor para verificar el comportamiento del ancho
de banda, en aras de aumentarlo en caso de ser necesario.
3.2 Primeros pasos en Nextcloud
Tecleando la dirección https://documentos.vcl.etecsa.cu/index.php/login o dando clic a un
acceso rápido en la página del portal de ETECSA en Villa Clara
http://www.dtvc.etecsa.cu/portal/index.php?sel=inicio se accede a la página de inicio del
Nextcloud (figura 3.1).
Figura 3.1. Interfaz de inicial de Nextcloud.
CAPÍTULO 3. Implementación de Nextcloud en la DTVC.
26
Para que la nube se desempeñe de manera esperada, deben realizarse algunas
configuraciones básicas. Una de ellas es la integración de la autenticación con LDAP
territorial. Para habilitar esta función fue necesario crear un usuario en el servicio de
directorio y otorgarle los permisos de consulta, que usará Nextcloud para garantizar que los
usuarios de ETECSA se conecten empleando sus credenciales. En el Anexo 1 se muestra
una imagen de la ventana de configuración.
Ingresando el usuario y contraseña se inicia una sesión y de forma predeterminada, la
interfaz web de Nextcloud se abre en su página de archivos. Una vez dentro se pueden
agregar, eliminar, compartir archivos, y hacer cambios basados en los privilegios de acceso
establecidos.
En la figura 3.2 se muestra la interfaz de usuario de Nextcloud, la cual contiene los
siguientes campos y funciones:
Figura 3.2. Ventana por defecto al iniciar Nextcloud.
• Menú de selección de aplicaciones (1): ubicado en la esquina superior izquierda, se
encuentran todas las aplicaciones disponibles en la instancia de Nextcloud. Al hacer clic en
el ícono de una aplicación, se redirigirá a la aplicación.
• Campo de información de aplicaciones (2): ubicado en la barra lateral izquierda,
proporciona filtros y tareas asociadas a la aplicación seleccionada.
CAPÍTULO 3. Implementación de Nextcloud en la DTVC.
27
• Vista de aplicación (3): el campo central principal en la interfaz de usuario de Nextcloud.
Este campo muestra los contenidos o las funciones de usuario de la aplicación seleccionada.
• Barra de navegación (4): ubicada sobre la ventana de visualización principal (la vista de
aplicación), esta barra proporciona un tipo de navegación que permite migrar a niveles
superiores de la jerarquía de carpetas hasta el nivel de raíz.
• Nuevo botón (5): ubicado en la barra de navegación, el botón Nuevo permite crear
nuevos archivos, nuevas carpetas o cargar archivos.
• Campo de búsqueda (6): haciendo clic en la lupa de la esquina superior derecha se
puede buscar un archivo específico.
• Menú de contactos (7): brinda una descripción general de los contactos y usuarios en el
servidor. Dependiendo de los detalles y las aplicaciones disponibles, puede iniciar
directamente una videollamada o enviar correos electrónicos.
• Menú de configuraciones personales (8): haciendo clic en el ícono de ajustes o en la
imagen de perfil, ubicada a la derecha del campo de búsqueda, se despliega un menú de
configuraciones personales.
• Botón de galería (9): formado como 4 pequeños cuadrados, y lo lleva directamente a su
galería de imágenes.
3.3 Aplicaciones
Como ya se mencionó Nextcloud tiene la posibilidad de integrar aplicaciones, algunas se
encuentran instaladas por defecto y otras están disponibles en la dirección
https://apps.nextcloud.com/. Las aplicaciones que fueron implementadas en este proyecto
para los usuarios de ETECSA son:
Archivos
Calendario
CODE
Videoconferencia
A continuación se profundizará un poco más en cada una de ellas y su aplicación en la
DTVC.
CAPÍTULO 3. Implementación de Nextcloud en la DTVC.
28
3.3.1 Archivos
Una vez que el usuario se autentica, la pantalla de bienvenida es la aplicación de Archivos,
en ella se encuentran varios íconos que pueden ser personalizados. En la figura 3.2 se
muestra el ambiente de trabajo típico de Nextcloud, donde se observan los detalles de cada
archivo así como la posibilidad de compartirlo.
En la Empresa será utilizada principalmente para el respaldo de los datos de los usuarios y
para crear aéreas de intercambio entre usuarios de uno o de varios departamentos, según
funcionalidades.
Para el resguardo de los datos se otorgó una cuota de 10 GB a cada usuario (figura 3.3),
teniendo en cuenta las necesidades de los mismos y la capacidad de almacenamiento
disponible.
Figura 3.3. Asignación de cuotas de 10GB a cada usuario de la DTVC.
Hay usuarios, como los encargados de dar soporte a las tecnologías de la información, que
necesitan subir a la nube imágenes ISO, lo cual es un archivos relativamente grande. Por
este motivo se adoptó conceder un tamaño máximo de subida de archivos de 5GB, como
muestra la figura 3.4.
Figura 3.4. Configuración del tamaño máximo de subida de ficheros.
CAPÍTULO 3. Implementación de Nextcloud en la DTVC.
29
Carpetas de grupos.
En la DTVC los usuarios se agrupan por departamentos y en ocasiones no basta con una
asignación de 10 GB por cada uno. Una solución a este problema es crear un área común de
intercambio de información, donde un grupo de trabajadores pueda subir y bajar
información. Esto trae como ventaja que los usuarios dispongan de una capacidad adicional
de almacenamiento y se elimine información redundante dentro de la red.
Mediante la aplicación de Carpetas de grupos fueron creadas varias carpetas desde el menú
de administración, donde se puede dar acceso a uno o más grupos, controlar sus permisos
de escritura, uso compartido y asignar una cuota.
Un ejemplo de ello se puede observar en la figura 3.5, donde se asignaron capacidades de
acuerdo a la demanda y función que realiza el grupo específico. Como puede verse la
carpeta Soporte-DTVC tiene una cuota de 200 GB, lo cual puede ser modificado en
dependencia de la dinámica del trabajo.
Figura 3.5. Asignación de cuotas a grupos de usuarios en la DTVC.
CAPÍTULO 3. Implementación de Nextcloud en la DTVC.
30
Dentro de estas carpetas, cada miembro del grupo puede compartir información con
cualquier otro usuario de Nextcloud (figura 3.6).
Figura 3.6. Compartiendo una carpeta con otro usuario.
Una ves que se comparte algun archivo con cualquier ususario, el sistema envia un correo
automaticamente notificando la acción ejecutada. Para facilitarlo, se utilizó un servidor de
reenvío de correos SMTP (Simple Mail Transfer Protocol). En el Anexo 2 se presenta el
menú de configuración de este servicio.
Sincronización de archivos
Los archivos pueden ser sincronizados entre el servidor de Nextcloud y una ubicación local
de una computadora personal mediante el uso de clientes de escritorio. Una vez instalado el
cliente, se pueden configurar varios directorios de sincronización, ya sea desde una carpeta
vacía de nueva creación o a través de una existente con archivos.
A modo de ejemplo, en la figura 3.7 se muestra una sincronización de la carpeta local Mis
Datos con la carpeta Fórum en el servidor. Una vez terminada la configuración todo cambio
realizado en el servidor se sincronizará automáticamente al equipo y viceversa.
CAPÍTULO 3. Implementación de Nextcloud en la DTVC.
31
Figura 3.7. Sincronización de carpeta local con el servidor de Nextcloud.
3.3.2 Calendario
A través de la aplicación Calendario se despliega un ambiente el cual resulta de gran
utilidad para programar tareas y planes de trabajo. Este plugin permite la notificación de
eventos y es capaz de compartir información con otros usuarios, lo que contribuye al
trabajo colaborativo. También puede integrarse con otras herramientas utilizadas en
ETECSA para estos fines, como son Thunderbird y Outlook. En la figura 3.8 se puede ver
confeccionado un plan de trabajo mensual del mes de Marzo del 2018.
Figura 3.8. Plan de trabajo en la aplicación Calendario.
CAPÍTULO 3. Implementación de Nextcloud en la DTVC.
32
3.3.3 CODE
Una de las posibilidades de Nextcloud es que permite instalar un editor de ficheros office en
línea, por lo que se integró a Docker la herramienta CODE de Collabora. Para su descarga
del repositorio fue necesaria la creación de una red privada virtual (VPN, por sus siglas en
inglés Virtal Private Network), ya que no se encuentra disponible para Cuba.
Es importante señalar que esta aplicación está diseñada para trabajar en línea con un
servidor de Collabora en internet. En el caso de la DTVC por una cuestión de seguridad de
la información y restricciones en la conectividad, fue necesario integrar el servidor de
Collabora en el servidor de Nextcloud. Con esta configuración todos los usuarios pueden
editar documentos de manera colaborativa, sin violar las políticas de la empresa en materia
de seguridad.
Para la instalación de la herramienta Collabora Online, se siguieron los pasos a
continuación:
Descarga del contenedor Docker y una imagen de Collabora Online (CODE).
Instalación de Docker.
Importar la imagen de Collabora a Docker.
Inicio y personalización de Collabora al dominio de ETECSA.
Instalación de un certificado auto firmado para la comunicación entre Apache y
Collabora.
Creación de un proxy reverso en Apache.
Instalación y configuración del plugin Collabora Online en Nextcloud.
En figura 3.9 se muestra una imagen de la aplicación de Collabora Online personalizada al
servidor de Nextcloud.
Figura 3.9. Aplicación Collabora Online en el servidor de Nextcloud en ETECSA.
CAPÍTULO 3. Implementación de Nextcloud en la DTVC.
33
En el Anexo 3 se puede ver más detalladamente esta configuración, mostrando los
fragmentos más importantes del código utilizado.
Un ejemplo de la edición de documentos con esta nueva herramienta se muestra en la figura
3.10, donde se revisa una versión de este trabajo de diploma.
Figura 3.10. Edición de un documento con la herramienta CODE en Nextcloud.
3.3.4 Videoconferencia
Una de las bondades de Nextcloud es que permite la realización de videoconferencias
mediante la aplicación Nextcloud Talk. En el Centro Multiservicios “La Salud”, ubicado a
3Km aproximadamente del local de los servidores, se realizó una prueba de concurrencia
para probar el funcionamiento de esta aplicación. Para esta prueba se utilizó la cámara web
Logitech HD Webcam C615, la cual fue configurada con una alta calidad de video y con 20
fotogramas por segundos. Para ver los detalles de la configuración ver Anexo 4.
Se conectaron de manera simultánea 8 personas por un tiempo de 2 horas, obteniéndose
resultados satisfactorios. En la figura 3.11 se observa una vista de la interfaz de esta
aplicación, la cual dispone de un chat para los participantes y pueden configurarse hasta 2
moderadores.
CAPÍTULO 3. Implementación de Nextcloud en la DTVC.
34
Figura 3.11 .Vista principal de una videoconferencia en Nextcloud.
3.4 Análisis de tráfico en la interfaz del servidor
Para evaluar el comportamiento del ancho de banda en la interfaz de red del servidor se
realizaron mediciones de tráfico. La primera corresponde a la videoconferencia descrita
anteriormente, mientras que la segunda es referida a la descarga simultánea de archivos
desde una ubicación lejana.
Medición de tráfico durante la videoconferencia
La videollamada descrita en el subepígrafe anterior fue realizada desde las 15:00 hasta las
17:00 horas. El tráfico generando por la misma fue obtenido empleando el sistema de
gestión de red OpManager y graficado en la figura 3.12.
Como se puede observar en la figura 3.12 el valor máximo de entrada es de 7,8 Mbps,
además de picos oscilantes que no sobrepasan los 5 Mbps y un promedio de 303 Kbps.
Figura 3.12. Tráfico generado por una prueba de videoconferencia en la DTVC.
CAPÍTULO 3. Implementación de Nextcloud en la DTVC.
35
El servidor de Nextcloud tiene disponible una interfaz Ethernet que proporciona una
velocidad de 1Gbps. Si analizamos los datos de la figura 3.12, se demuestra que no es
necesario agregar una tarjeta de red adicional, ya que apenas se supera el 1% de la
capacidad del canal.
Medición de tráfico durante descarga de archivos.
Como en el caso anterior, desde el Centro Multiservicios “La Salud”, se realizó una prueba
de descarga de archivos. Por un tiempo aproximado de 2 horas, se mantuvieron 15
estaciones de red para medir la capacidad de respuesta del servidor, lográndose la descarga
ininterrumpida de varios ficheros.
Figura 3.13. Tráfico generado por la descarga simultánea de un fichero.
Los resultados de esta prueba se pueden ver en la gráfica de la figura 3.13, pudiéndose
observar que el tráfico máximo de entrada es de 122,4 Mbps y el promedio de 42,3 Mbps.
Teniendo en cuenta que la interfaz de red es de 1Gb, se concluye que no se necesita un
hardware adicional para aumentar la capacidad del canal, ocupándose solo el 12,24 % del
mismo.
3.5 Guía de usuario para ETECSA
Con el fin de facilitar el empleo del sistema por parte de los usuarios de ETECSA, se
realizaron tutoriales en forma de diapositivas. En ellos se describen las principales
bondades del sistema y la forma de empleo de algunas de las aplicaciones implementadas.
Estas presentaciones están disponibles en una carpeta que se anexa al presente trabajo.
CAPÍTULO 3. Implementación de Nextcloud en la DTVC.
36
2.10 Conclusiones del capítulo
En el presente capítulo se expusieron los resultados del trabajo. Primeramente se describió
la interfaz inicial de Nextcloud, explicando sus características principales. Posteriormente
se ilustraron varias aplicaciones, las cuales fueron personalizadas de acuerdo a los intereses
de la Empresa En la aplicación de Archivos fueron asignados a cada usuario un total de 10
GB, además de la creación de carpetas de grupos según sus funciones específicas,
permitiendo compartir y sincronizar archivos y carpetas. Además se configuró el plugin de
Calendario, el cual permite la sincronización con otros formatos utilizados en ETECSA
para la realización de planes de trabajo. Posteriormente se instaló la suite ofimática CODE
utilizando contenedores de Docker. En este caso se configuró a Collabora Online en el
dominio de ETECSA y se creó un proxy reverso en Apache, garantizando así la edición de
ficheros office en el servidor local de Nextcloud. También se instaló una videoconferencia,
la cual podrá ser utilizada por los usuarios de manera sencilla para la comunicación a
distancia. Para evaluar el ancho de banda de la interfaz del servidor, se realizaron
mediciones de tráfico en la videoconferencia y descarga de archivos, dando como resultado
que la interfaz de red a 1Gb existente satisface la demanda actual. Finalmente se crearon
presentaciones como guías de usuario, para capacitar al personal.
37
CONCLUSIONES Y RECOMENDACIONES
Conclusiones
1. Según el análisis realizado, la computación en la nube o cloud computing es un
paradigma tecnológico en continuo avance y cada vez son más las empresas que se
suman a su contratación. Pueden ser públicas, privadas o una combinación de
ambas. Además, es posible optar por una plataforma, infraestructura o software
como servicio, e incluye otras categorías presentes en la nube como la
comunicación, cálculo, red y almacenamiento.
2. Dado que Nextcloud es una herramienta de código abierto, y ofrece aplicaciones de
alto interés para los usuarios de ETECSA, constituye una solución acertada para la
implementación una nube privada en la DTVC. Esto permitió una interoperabilidad
con otros componentes, de código abierto con los cuales se conformó dicha nube.
3. La aplicación de Archivos de Nextcloud además de ofrecer una moderna alternativa
para el respaldo de los datos, constituye una herramienta muy poderosa para la
compartición de ficheros entre los usuarios. Esta funcionalidad es intensamente
aprovechada por los especialistas de ETECSA en su trabajo diario.
4. Las pruebas realizadas mediante la aplicación de Videoconferencia de Nextcloud,
arrojan resultados positivos en cuanto a calidad de imagen. Esto permite la
participación a distancia de los directivos municipales de ETECSA en los consejos
de dirección, y a su vez implica un ahorro significativo en los portadores
energéticos.
CONCLUSIONES Y RECOMENDACIONES
38
5. Teniendo en cuenta los resultados de las mediciones de tráfico realizadas, se
determina que una conexión de 1Gbps para el servidor de Nextcloud, es suficiente
para brindar los servicios de videoconferencias y compartición de archivos en el
entorno de la red corporativa de ETECSA en Villa Clara.
Recomendaciones
1. Gestionar con la Dirección Nacional de Tecnología de la información la posibilidad
de habilitar un puerto que permita la conexión a Nextcloud desde la red datos
móviles, lo cual permitiría a los usuarios acceder a su espacio en la nube desde
cualquier ubicación.
2. Estudiar nuevos plugins de Nextcloud que puedan ser de interés para los usuarios de
ETECSA en Villa Clara para su futura implementación.
39
REFERENCIAS BIBLIOGRÁFICAS
[1] J. W. Rittinghouse y J. F. Ransome, Cloud Computing: Implementation, Management,
and Security. CRC Press, 2010.
[2] M. Helfert, F. Desprez, D. Ferguson, F. Leymann, y V. M. Munoz, Cloud Computing
and Services Sciences: International Conference in Cloud Computing and Services
Sciences, CLOSER 2014 Barcelona Spain, April 3–5, 2014 Revised Selected Papers.
Springer, 2016.
[3] V. Kale, Guide to Cloud Computing for Business and Technology Managers: From
Distributed Computing to Cloudware Applications. CRC Press, 2015.
[4] Comisión de Estudio 1 del UIT-D, «Acceso a la computación en la nube: retos y
oportunidades para los países en desarrollo.», UIT, Ginebra, 2017.
[5] R. Kumar, S. Jain, Anamika, y S. Jangir, «A Comparative Study for Cloud Computing
Platform on Open Source Software», 2014, vol. 1.
[6] A. R. Díaz, M. J. V. Ledo, A. D. Ramos, y B. D. M. González, «Computación en la
nube, una visión para la salud en Cuba», Rev. Inf. Científica Para Dir. En Salud
INFODIR, vol. 0, n.o 26, pp. 49-58, ene. 2018.
[7] S. Gallagher, VMware Private Cloud Computing with vCloud Director. John Wiley &
Sons, 2013.
[8] V. Josyula, M. Orr, y G. Page, Cloud Computing: Automating the Virtualized Data
Center. Cisco Press, 2012.
[9] J. Bloomberg, The Agile Architecture Revolution: How Cloud Computing, REST-
Based SOA, and Mobile Computing Are Changing Enterprise IT. John Wiley & Sons,
2013.
[10] K. Walkowiak, Modeling and Optimization of Cloud-Ready and Content-Oriented
Networks. Springer, 2016.
[11] R. Hill, L. Hirsch, P. Lake, y S. Moshiri, Guide to Cloud Computing: Principles and
Practice. Springer Science & Business Media, 2012.
[12] M. Yousif y L. Schubert, Cloud Computing: Third International Conference,
CloudComp 2012, Vienna, Austria, September 24-26, 2012, Revised Selected Papers.
Springer, 2013.
REFERENCIAS BIBLIOGRÁFICAS
40
[13] A. P. Mell y A. T. Grance, «SP 800-145, The NIST Definition of Cloud Computing».
[En línea]. Disponible en: https://csrc.nist.gov/publications/detail/sp/800-145/final.
[Accedido: 10-mar-2018].
[14] «Y.3500 : Tecnología de la información - Computación en nube - Visión general y
vocabulario». [En línea]. Disponible en: https://www.itu.int/rec/T-REC-Y.3500-
201408-I/es. [Accedido: 27-may-2018].
[15] «ISO/IEC 17788:2014 - Information technology -- Cloud computing -- Overview and
vocabulary». [En línea]. Disponible en: https://www.iso.org/standard/60544.html.
[Accedido: 14-jun-2018].
[16] F. Magoules, F. Teng, y J. Pan, Cloud computing: data intensive computing and
scheduling. Boca Raton: CRC Press, 2013.
[17] B. Halpert, Auditing Cloud Computing: A Security and Privacy Guide. John Wiley &
Sons, 2011.
[18] R. L. Krutz y R. D. Vines, Cloud Security: A Comprehensive Guide to Secure Cloud
Computing. John Wiley & Sons, 2010.
[19] B. Sosinsky, Cloud Computing Bible. John Wiley & Sons, 2010.
[20] «Amazon Web Services (AWS) - Cloud Computing Services», Amazon Web Services,
Inc. [En línea]. Disponible en: https://aws.amazon.com/. [Accedido: 13-may-2018].
[21] J. L. L. Presmanes, F. Lee-Tenorio, y R. G. Torricella-Morales, «Aplicación de la
computación en nube en la gestión de la Biblioteca Virtual de la EcuRed ver. 2.0»,
Cienc. Inf., vol. 42, n.o 3, pp. 65-72, ene. 2012.
[22] «Cuba se empina en la cumbre», 25-feb-2018. [En línea]. Disponible en:
http://www.juventudrebelde.cu/suplementos/informatica/2016-02-24/cuba-se-empina-
en-la-cumbre. [Accedido: 25-feb-2018].
[23] M. Vásquez-Bermúdez et al., «Nube privada basada en código abierto Owncloud.
Caso de estudio Escuela de Computación e Informática de la Universidad Agraria del
Ecuador», Rev. Espac., vol. 39, n.o 15, abr. 2018.
[24] Luis Joyanes Aguilar, «Computación en la Nube e innovaciones tecnológicas», El
Agora de Latinoamérica, 25-jul-2011. [En línea]. Disponible en:
https://gissic.wordpress.com/2011/07/25/computacion-en-la-nube-e-innovaciones-
tecnologicas/. [Accedido: 10-mar-2018].
[25] R. de la Osa, Mitos y realidades de las Tecnologías de la Información. Cuba:
Academia, 2015.
[26] «ownCloud - The last cloud collaboration platform you’ll ever need.», ownCloud, 27-
nov-2017. .
[27] S. M. Kerner, «Nextcloud Improves Security, Adds Enterprise Support», eWeek, pp.
1-1, jul. 2016.
[28] «The most popular self-hosted file share and collaboration platform», Nextcloud. [En
línea]. Disponible en: http://nextcloud.com. [Accedido: 10-jun-2018].
[29] M. Hasenstein, «The logical volume manager (LVM)», White Pap., 2001.
REFERENCIAS BIBLIOGRÁFICAS
41
[30] C. E. Gómez, C. A. Candela, y L. E. Sepúlveda, «Seguridad en la configuración del
Servidor Web Apache», INGE CUC, vol. 9, n.o 2, pp. 31–38, Diciembre 2013.
[31] «Welcome! - The Apache HTTP Server Project», 30-abr-2018. [En línea]. Disponible
en: http://httpd.apache.org/. [Accedido: 30-abr-2018].
[32] T. Velte, A. Velte, y R. C. Elsenpeter, Cloud Computing, A Practical Approach.
McGraw Hill Professional, 2010.
[33] C. X. Mavromoustakis, G. Mastorakis, y C. Dobre, Advances in Mobile Cloud
Computing and Big Data in the 5G Era. Springer, 2017.
[34] L. Rivero Ramírez, «Propuesta de herramienta de administración remota usando la
IVR de Asterisk.», Tesis para obtener el título de Ingeniero en Telecomunicaciones y
Electrónica, Universidad Central «Marta Abreu» de Las Villas, Santa Clara, 2013.
[35] M. Á. Arias, Aprende Programación Web con PHP y MySQL: 2a Edición. IT Campus
Academy, 2017.
[36] J. Turnbull, The Docker Book. Lulu.com, 2014.
[37] N. Sabharwal y Bibin W, Docker Hands on: Deploy, Administer Docker Platform,
Kindle Edition. 2015.
[38] F. D. Paoli, S. Schulte, y E. B. Johnsen, Service-Oriented and Cloud Computing: 6th
IFIP WG 2.14 European Conference, ESOCC 2017, Oslo, Norway, September 27-29,
2017, Proceedings. Springer, 2017.
[39] I. Miell y A. H. Sayers, Docker in Practice. Manning Publications, 2018.
[40] «Collabora - the world’s leading LibreOffice services company», Collabora
Productivity. [En línea]. Disponible en: https://www.collaboraoffice.com/. [Accedido:
13-jun-2018].
[41] Salvador E. Vázquez-Moctezuma, «Tecnologías de almacenamiento de información
en el ambiente digital», E-Cienc. Inf., vol. 5, n.o 2, pp. 1-18, jun. 2015.
[42] Hewlett-Packard Development Company, L.P, «Guía de usuario HP MSA 2040». sep-
2014.
42
ANEXOS
Anexo 1. Integración con LDAP territorial.
ANEXOS
43
Anexo 2. Servidor de reenvio de correos
Anexo 3. Código utilizado para la instalación y configuración de Collabora Online.
Mediante las siguientes líneas de comando se procede a instalar Docker:
yum install libseccomp
rpm -i docker-engine-selinux-17.05.0.ce-1.el7.centos.noarch.rpm
rpm -i docker-engine-17.05.0.ce-1.el7.centos.x86_64.rpm
systemctl enable docker
systemctl restart docker
Una vez instalado se importa la imagen de Collabora mediante:
docker load < collabora.tar
Para luego iniciarla y personalizarla al dominio de ETECSA en Villa Clara:
docker run -t -d -p 127.0.0.1:9980:9980 -e "domain=nextcloud\\.vcl\\.etecsa\\.cu" -e
"username=root" -e "password=**********" --restart always --cap-add MKNOD
collabora/code
Seguidamente se instala un certificado auto firmado y se procede a la creación de un proxy
reverso en Nextcloud como se muestra en el siguiente código:
ANEXOS
44
nano /etc/httpd/conf.d/ssl.conf # añadir al final
# Encoded slashes need to be allowed
AllowEncodedSlashes NoDecode
# Container uses a unique non-signed certificate
SSLProxyEngine On
SSLProxyVerify None
SSLProxyCheckPeerCN Off
SSLProxyCheckPeerName Off
# keep the host
ProxyPreserveHost On
# static html, js, images, etc. served from loolwsd
# loleaflet is the client part of LibreOffice Online
ProxyPass /loleaflet https://127.0.0.1:9980/loleaflet retry=0
ProxyPassReverse /loleaflet https://127.0.0.1:9980/loleaflet
# WOPI discovery URL
ProxyPass /hosting/discovery https://127.0.0.1:9980/hosting/discovery retry=0
ProxyPassReverse /hosting/discovery https://127.0.0.1:9980/hosting/discovery
# Main websocket
ProxyPassMatch "/lool/(.*)/ws$" wss://127.0.0.1:9980/lool/$1/ws nocanon
# Admin Console websocket
ProxyPass /lool/adminws wss://127.0.0.1:9980/lool/adminws
# Download as, Fullscreen presentation and Image upload operations
ProxyPass /lool https://127.0.0.1:9980/lool
ProxyPassReverse /lool https://127.0.0.1:9980/lool
ANEXOS
45
Anexo 4. Configuración de la videoconferencia.