scieee Science in your language
[sp] (orig)

Despliegue de infraestructura y servicios de red en la residencia universitaria “ALBERTO JIMÉNEZ FRAUD”: despliegue de infraestructura, virtualización en contenedores y desarrollo del frontend de la aplicación de gestión "panel de residente"

Abstract

En la Residencia Universitaria “Alberto Jiménez Fraud”, se tratará la renovación de la instalación de internet por cable y el diseño y configuración de una instalación inalámbrica (WiFi), que facilite la conexión a internet de los residentes, con la adición de nuevos servicios para los mismos y, además, de mejorar la administración de la red. Aprovechando algunos servicios existentes, que se fueron añadiendo sobre la marcha, y otros nuevos, fruto de este trabajo y del trabajo complementario a este, se realizará un despliegue de servicios virtualizados de fácil administración. De entre los nuevos servicios, destacamos el “Panel del residente” que permitirá gestionar y centralizar los servicios actuales y los nuevos por venir, para uso de los residentes. La aplicación de la nueva infraestructura de red está dando buenos resultados entre los residentes. Para los administradores de la red, la gestión y monitorización de todo el equipamiento se ha simplificado usando un solo panel de administración. Los servicios virtualizados han sido simplificados de cara al mantenimiento, actualización y mejora de éstos, de tal manera que son más ágiles realizar cambios en ellos sin tener que realizar grandes cortes en el despliegue final.

Read accessible full text

Despliegue de infraestructura y servicios de red en la residencia universitaria “ALBERTO JIMÉNEZ FRAUD”: despliegue de infraestructura, virtualización en contenedores y desarrollo del frontend de la aplicación de gestión "panel de residente"

Author: Garau Madrigal, Melchor Alejo
Year: 2018
Source: https://riuma.uma.es/xmlui/bitstream/10630/17062/2/Garau%20Madrigal%20Melchor%20AlejoMemoria.pdf
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA
GRADO EN INGENIERÍA DEL SOFTWARE
DESPLIEGUE DE INFRAESTRUCTURA Y SERVICIOS DE RED EN LA RESIDENCIA
UNIVERSITARIA “ALBERTO JIMÉNEZ FRAUD”: DESPLIEGUE DE
INFRAESTRUCTURA, VIRTUALIZACIÓN EN CONTENEDORES Y DESARROLLO DEL
FRONTEND DE LA APLICACIÓN DE GESTIÓN “PANEL DEL RESIDENTE”
NETWORK INFRASTRUCTURE AND SERVICES DEPLOYMENT AT THE MÁLAGA
UNIVERSITY’S DORMITORY “ALBERTO JIMÉNEZ FRAUD”: NETWORK
INFRASTRUCTURE DEPLOYMENT, CONTAINER VIRTUALIZATION AND FRONTEND
DEVELOPMENT OF THE MANAGEMENT APPLICATION “PANEL DEL RESIDENTE”
Realizado po
MELCHOR ALEJO GARAU MADRIGAL
Tu o izado po
PEDRO MERINO GOMEZ
ALMUDENA DIAZ ZAYAS
VICTORIANO FRANCISCO GIRALT GARCÍA
Depa amen o
TECNOLOGIA ELECTRONICA
UNIVERSIDAD DE MÁLAGA
MÁLAGA, SEPTIEMBRE 2018
Fecha de de ensa:
El sec e a io del T ibunal!
3
4
Resumen:
En la Residencia Uni e si a ia “Albe o Jiménez F aud”, se a a á la eno ación de
la ins alación de in e ne po cable y el diseño y con igu ación de una ins alación
inalámb ica (WiFi), que acili e la conexión a in e ne de los esiden es, con la
adición de nue os se icios pa a los mismos y, además, de mejo a la
adminis ación de la ed. Ap o echando algunos se icios exis en es, que se ue on
añadiendo sob e la ma cha, y o os nue os, u o de es e abajo y del abajo
complemen a io a es e, se ealiza á un despliegue de se icios i ualizados de ácil
adminis ación. De en e los nue os se icios, des acamos el “Panel del esiden e”
que pe mi i á ges iona y cen aliza los se icios ac uales y los nue os po eni ,
pa a uso de los esiden es."
La aplicación de la nue a in aes uc u a de ed es á dando buenos esul ados en e
los esiden es. Pa a los adminis ado es de la ed, la ges ión y moni o ización de
odo el equipamien o se ha simpli icado usando un solo panel de adminis ación.
Los se icios i ualizados han sido simpli icados de ca a al man enimien o,
ac ualización y mejo a de és os, de al mane a que son más ágiles ealiza cambios
en ellos sin ene que ealiza g andes co es en el despliegue inal."
Palab as cla e:
Despliegue de ed, edes inalámb icas, WiFi, despliegue de se icios, con enedo es,
docke , aplicación web, esidencia, uni i"
Abs ac :
In he Uni e si y’s Residence “Albe o Jiménez F aud”, we will make no only an
upg ade o he wi e ne wo k in as uc u e, bu also a design and con igu a ion o a
b and new wi eless ne wo k in as uc u e (WiFi) in which esiden s will be able o
use in e ne easily. New se ices will be added o he esiden s, and he ne wo k
adminis a ion will be imp o ed oo. Wi h ha new ne wo k in as uc u e and
bene i ing om some al eady exis ing se ices, ones c ea ed o e he days and
o he s being new, as a esul o his p ojec and he complemen a y p ojec , a
deploymen o i ualised se ices will be done, and will be easily adminis able.
5

Be ween he new se ices, “Panel del esiden e” is he mos ema kable which will
allow o manage and cen alise he cu en se ices and he new ones ye o come,
whose a ge use s a e he esiden s."
The esul s o applying he new ne wo k in as uc u e a e being eally posi i e
among he esiden s. Fo he ne wo k adminis a o s, he new in as uc u e can now
be managed om one dashboa d which allow hem o simpli y he asks o
moni o ing and con igu ing all he equipmen . The main enance, upda e and
imp o emen o he se ices ha e been simpli ied inally, allowing mo e agile
changes in he se ices and a oiding big ou ages o he se ices in he p oduc ion
en i onmen ."
Keywo ds: "
Ne wo k deploymen , wi eless ne wo ks, WiFi, se ices deploymen , con aine s,
docke , web applica ion, esidence, uni i"
6
1. In oducción#9"
Con ex o#9"
Mo i ación y obje i os#10"
Es ado del a e#11"
Tecnologías#12"
2. Diseño, con igu ación y despliegue de la in aes uc u a de ed#13"
Desc ipción del es ado inicial de la ed#13"
Ob ención de equisi os de la nue a ins alación#19"
Toma de decisiones en base a los equisi os#20"
Diseño y con igu ación de la ed ija#23"
Diseño de la ed WiFi#25"
Despliegue de nue o cableado pa a el WiFi#29"
Con igu ación de la ed WiFi#30"
3. Requisi os del sis ema so wa e de ges ión#33"
Análisis#33"
Me odología del desa ollo so wa e#33"
Requisi os#34"
Modelo#38"
Desc ipción de la API#41"
4. Desa ollo del on end del so wa e de ges ión#44"
Tecnologías, modula idad y conside aciones#44"
Desc ipción de la in e az de los módulos#47"
‣Módulo común#47"
‣Página inicial - Página de inicio de sesión#50"
‣Página esumen del blog#52"
‣Módulo pa a consumo de in e ne #54"
‣Módulo pa a his o ial de llamadas#59"
‣Módulo pa a pa es in o má icos#61"
‣Módulo pa a no i icaciones#64"
5. Despliegue de se icios#67"
Es ado ac ual de los se icios#67"
‣dnsmasq#67"
‣Con olado Uni i#68"
‣Se ido Web#68"
‣Moni o ización de se ido es#69"
7
Nue os se icios#70"
‣Se ido VoIP#70"
Mig ación de se icios exis en es a Docke #71"
P epa ando nue os se icios pa a i ualiza #76"
‣T æ ik#77"
‣Medido de uso de in e ne #77"
‣Au en icación SAML#78"
Despliegue de los se icios#79"
‣T æ ik#81"
‣Bases de da os#82"
‣Se icios web#84"
‣As e isk#88"
‣Se icios en la pue a de enlace#89"
6. Conclusiones y abajos u u os#91"
7. Re e encias#93
8
1. In oducción
Con ex o
En los úl imos años, el a ance en las ecnologías de la in o mación y la
comunicación (TIC) ha sido eno me indudablemen e. Tal es que, ac ualmen e, la
mayo ía de abajos dependen de ellos (de alguna o ma), e incluso nues as idas
se han is o in luenciadas po las TIC. Además, en el á ea de la educación, las
nue as ecnologías es án en ando en las me odologías de enseñanza, haciendo
imp escindible su uso en las aulas, biblio ecas y en los hoga es de los es udian es."
La mode nización de las ecnologías en las emp esas e ins i uciones publicas es
necesa io pa a segui la ola de “la mode nización” y sob e i i en es e mundo
in o ma izado en cons an e cambio. Los es udian es uni e si a ios dependen, po
an o, de es as ecnologías y equie en que los espacios pa a ellos engan de una
conexión su icien e pa a sus a eas. Además las inno aciones ayudan al con ol de
las ins alaciones y acili an los despliegues de WiFi y ele onía VoIP."
La Residencia Uni e si a ia Albe o Jiménez F aud, sob e la que se cen a la
ac i idad de es e p oyec o, albe ga unos 250 miemb os de la Uni e sidad. La
mayo ía son es udian es de g ado, pe o ambién hay o os es udian es y p o eso es.
En un luga como es e esul a impensable no ene una ins alación TIC adecuada
pa a el uso y dis u e de los esiden es, pa a pode abaja y, además, pa a pode
i i . Un en o no como es e, pe mi e o ece un conjun o de se icios a los
es udian es, y dan cabida a eno a o o ipo de se icios que ac ualmen e no
o ecen nada desde el pun o de is a in o má ico."
An es del p oyec o, la esidencia (de es a o ma nos e e imos a la esidencia
mencionada an e io men e) no disponía de un se icio WiFi su icien e pa a an as
pe sonas y el se icio de ele onía, que se p opo cionaba a a és de la adicional
ed de ele onía conmu ada. En cambio, la ins alación de cable de in e ne e a
bas an e acep able, pe o su adminis ación e a algo manual. Todo es o hacía muy
complejo la adminis ación y el man enimien o del despliegue de comunicaciones
de la esidencia."
9
•Se ido DNS: el p opio dnsmasq hace de se ido DNS ambién, incluye
ambién los disposi i os conec ados, cada uno ob enía un dominio p opio local."
Como se puede obse a , el se ido necesi a dos a je as de ed, y así es. Una es la
que conec a con la in aes uc u a in e na, an e io men e comen ada; y la o a es la
que conec a con el se icio de in e ne o ecido po Ono/Voda one. Es e se icio
inicialmen e e an 50Mbps simé icos y se consiguió amplia a 200Mbps simé icos,
ambos de ib a óp ica."
A modo de ejemplo, pa a ilus a la in aes uc u a, un usua io que se conec a po
cable o po alguno de los pun os de acceso (que se comen a á en b e e), ecibía
una di ección IP del se ido DHCP. Al en ia un paque e, pasaba po los swi ches
has a llega al se ido , que aplicaba las eglas de NAT ( aduci la IP de o igen y el
pue o) y emi ía el paque e hacia la pue a de enlace de Ono y ol ía a aplica o o
NAT, pa a acaba inalmen e en in e ne ."
T a emos aho a la si uación del despliegue de WiFi. Había epa idos po a ios
apa amen os unos ou e s neu os como pun os de acceso. Con ou e neu o nos
e e imos a ou e s que uno puede comp a en cualquie luga , que no son de
ninguna emp esa ele ónica y que si en pa a cualquie ipo de se icio que abaja
a ni el de capa de ed. Los pun os de acceso son los apa a os que abajan sólo
has a ni el de enlace y emi en la señal inalámb ica. Se conec an al ou e a a és
de un cable E he ne , y en algunos casos, a a és de o o pun o de acceso."
Es os ou e s neu os ienen inco po ados ambién la uncionalidad de pun o de
acceso (o AP pa a aco a ). Repa idos po la esidencia, se podían encon a
pun os de acceso de di e sos modelos: la mayo ía e an TP-Link WR841N(D),
algunos TP-LINK WR1043ND que son mas po en es, y algún que o o O isLink (de
modelo desconocido) de peo po encia que el es o. La colocación de és os e a
alea o ia, incluso algunos los mo ían los p opios esiden es sin no i ica lo. En
ambos casos, hacían que en algunas zonas no hubie a cobe u a a penas, y en
o as, los APs se in e i ie an en e ellos."
Pa a inales del p ime cua o de 2016, se consiguió comp a unos pun os de
acceso Uni i AP-LR. Con ellos, se consiguió mejo a la cobe u a, pe o aún así no
e a su icien e."
16

En el g á ico supe io se puede obse a lo que se denominan como hea maps de
cobe u a de WiFi en uno de los mejo es bloques en cuan o a cobe u a. El g á ico
jun a las es plan as de un bloque (nume ado como el 2º) y solo mues a la po encia
de señal de odos los pun os de acceso pe enecien es a la esidencia. Como se
puede obse a , una mi ad del bloque se e bas an e des a o ecida po una calidad
de señal muy in e io ; mien as que en la o a mi ad, la señal llegaba a casi odos los
luga es. O o ac o impo an e a ene en cuen a es que los apa amen os de la
izquie da (en el g á ico, los que es án más abajo) es án dando jun o a la calle y las
in e e encias de los o os pun os de acceso de los bloques de pisos hace que la
conexión sea peo ."
Los modelos de ou e s neu os que se han mencionado an e io men e, su obje i o
no es el me cado p o esional como se demanda en un luga como es e. En palab as
de la web o icial del TP-Link WR841N, ”Excelen e capacidad pa a mi iga la pé dida
de da os a la ga dis ancia y a a és de obs áculos en una pequeña o icina o en una
i ienda g ande”[12], aunque no desc ibe el modelo que se enia en la esidencia, da
una idea de que el obje i o no es el uso p o esional. Po an o, es os ou e s neu os
no e an los ideales pa a o ece una conexión po WiFi en la esidencia."
Como medida empo al, se pe mi ió a los esiden es ae sus p opios apa a os pa a
que ellos se pudie an conec a po WiFi, an e la al a de una ins alación adecuada.
Es a decisión aía consigo una se ie de p oblemas, pasando po que la mayo ía de
17
Hea map de cobe u a - Rojo mas po encia, Azul menos po encia
esiden es no saben como ins ala lo y hace lo unciona , además, si alguno se
descon igu aba, podia hace que deja a de i la conexión de in e ne en pa e o oda
la esidencia."
Los dueños, muchos de ellos, solían ae nos sus apa a os pa a que se lo
dejá amos p epa ado pa a usa , pe o o os lo enchu aban di ec amen e y
p o ocaban "el caos”. En el caso de que alguno se descon igu ase (incluyendo a los
APs de la esidencia) podían p o oca el mencionado “caos”. Con es o nos
e e imos a que dichos apa a os ol ían a su con igu ación inicial, donde enían un
DHCP ya que ac uaban como ou e s. Pa a ac ua como APs, se enia que conec a
el cable e he ne en el swi ch pa a LAN (jus o lo con a io a lo común que es
conec a lo en el pue o WAN o de in e ne ). La con igu ación po de ec o es o ece
un se ido DHCP que unciona an o po su WiFi como po su swi ch LAN,
haciendo que los equipos de la esidencia ue an a conec a se a es e ou e (sin
in e ne ) en luga del se ido de la esidencia."
Es a si uación hace in iable el modelo ac ual de ins alación WiFi, haciendo abaja
a los beca ios en exceso, cuando las al e na i as p o esionales no equie en de
an o abajo. Como ejemplo, los APs Uni i, aquellos mencionados an e io men e
que se comp a on, se manejan desde un panel de adminis ación web cen alizado,
ayudando eno memen e en el abajo de adminis ación de la ed."
La ed WiFi de la esidencia se o ecía sob e una ed abie a, y las edes de cada
esiden e que aía su p opio apa a o e a a elección de él mismo, aunque la mayo ía
e an con con aseña. El mayo p oblema de es as edes es que al se abie as no
ienen ningún ci ado y ”la cap u a de es os paque es de in o mación es muy
sencilla; u ilizan p og amas que cap u an los paque es que iajan po la ed, y que
no son complicados de u iliza ”[13]. Incluso se pueden ealiza “honeypo ”s que
consis e en una pe sona (lad ón) que “c ea una ed WiFi abie a, muchas eces
haciéndose pasa po un come cio o luga conocido, pa a que nos conec emos a
ella. E in en a á oba nos la mayo can idad de in o mación posible”[14]."
Po úl imo, aunque el equipamien o pa a la in aes uc u a de cable e a bueno,
alguno de los swi ches deja on de unciona momen áneamen e, en cie as
ocasiones. Además, uno de los con e sa es de ib a no e a gigabi (1000Mbps), lo
que podia p o oca un cuello de bo ella."
18
Ob ención de equisi os de la nue a ins alación
Después de analiza el es ado inicial de la ins alación, sus pun os posi i os y
nega i os, se puede ealiza una búsqueda de equisi os sob e como debe ía
queda la ins alación inal, que pe mi i á guia en las decisiones pa a la
implemen ación de la ins alación."
Los usua ios inales de la ins alación se án los esiden es, a cada uno de los cuales
se les quie e p opo ciona conec i idad Wi-Fi, E he ne y un elé ono VoIP.
Suponiendo que cada esiden e end á al menos dos disposi i os (un o denado y
un elé ono), y sabiendo que la esidencia puede albe ga unas 250 pe sonas, la
ins alación debe ía sopo a 500 disposi i os conec ados simul áneamen e."
Los esiden es, como se ha comen ado an e io men e, no solo es udian, ambién
i en, po lo que la ins alación debe ía se capaz de sopo a a esiden es con casos
de uso como ideojuegos online o ideos y música en s eaming. La na egación po
in e ne ambién es un equisi o, pe o equie e menos ecu sos que lo an e io po lo
que se conside a ya incluido."
La segu idad es uno de los pun os mas impo an es ac ualmen e. La ed WiFi, que
se p e e que se á la más usada, debe es a p o egida con WPA2-PSK o WPA2-
En e p ise (p o ocolos de p o ección y ci ado de una ed WiFi)."
Pa a e i a un lujo de paque es innecesa ios en e disposi i os po WiFi, educiendo
el uso de la ed, se debe ía pode usa un mecanismo de aislamien o en e
disposi i os y bloquea los mensajes de “b oadcas ” pa a és os. Al se una ed
g ande, man ene el uso de los APs al mínimo es impo an e pa a ene una ed
es able y usable. Así se e i a ían p oblemas como el del Ch omecas a p incipios de
2018[15], en el que sa u aba la ed WiFi de los hoga es po en ia demasiados
paque es po la ed WiFi, sa u ándola."
Con el obje i o de sepa a el á ico de cada una de las edes y aumen a la
segu idad, se debe ía implemen a di e sas VLANs, aislando los disposi i os po
di e sos segmen os. Dicha sepa ación pod ía se un segmen o pa a la ins alación
VoIP, o a pa a el manejo de los swi ches y APs, y una úl ima pa a el acceso a
in e ne de los usua ios. Con las VLANs, se pueden c ea edes i uales que iajan
19
po la misma ins alación pe o dando la sensación de que son ins alaciones dis in as
y sepa adas con un único pun o en común."
Toma de decisiones en base a los equisi os
Con o me a los equisi os an e io es, en es e apa ado se de alla án las decisiones
mas écnicas pa a el despliegue que in lui án en los siguien es apa ados."
Lo p ime o que se pensó ue que había que pensa cuan os pun os de acceso iban
a hace al a y de que ma ca y modelo se comp a ían. Y sob e lo p ime o
dependende ian las necesidades de los swi ches. Teniendo cla o es as decisiones,
se pod ía empeza a pensa el es o de apa ados de diseño y con igu ación."
Se a a desc ibi la es uc u a de los edi icios
de la esidencia b e emen e pa a que se
en ienda la g an p oblemá ica de una
ins alación WiFi en ella. La esidencia se
dis ibuye en 8 bloques: 7 bloques de 12
apa amen os y uno de 6 apa amen os.
Cua o an a una mi ad (izquie da del mapa),
los o os cua o a la o a (de echa del mapa);
sepa ados po un pasillo ancho. Sie e de los
ocho bloques es á di idido en dos, y en medio
de la sepa ación, se encuen a un pequeño
pasillo."
Los lados izquie dos de cada bloque (mi ando
desde la en ada, abajo de la imagen hacia
a iba) iene es apa amen os en la plan a
baja (de 2 pe sonas) y es apa amen os en la segunda plan a (de 4 pe sonas), con
dos plan as cada uno (dúplex). En los lados de echos de cada bloque, en cambio,
hay dos apa amen os en la plan a baja, dos en la p ime a plan a y dos en la
segunda; odos de es pe sonas. El bloque con una sola mi ad, sigue la es uc u a
del lado izquie do."
20
Residencia Uni e si a ia[30]
En cada apa amen o, solo hay una oma de pa ed de cable E he ne . Eso incluye a
los apa amen os de dos plan as, que solo hay oma en la plan a supe io ."
Resumiendo es os da os, enemos que la esidencia puede albe ga como máximo
a unas 260 pe sonas como máximo en 90 apa amen os."
Es e es el e o a sol en a : analiza cual se ia la can idad de pun os de acceso
necesa ios pa a una ins alación a la al u a pa a es a esidencia, con an os huecos y
an espa cida."
"
Una de las p ime as ideas que se ba ajó,
ue ins ala un pun o de acceso de pa ed
en cada apa amen o, al igual que algunos
ho eles acaban haciendo (según in o mó un
come cial de Ono/Voda one). De es a
o ma, se consegui ía una g an cobe u a
en odos los apa amen os. En con a enemos que al se algo que es á en la pa ed,
y se debe ía coloca en un luga p óximo a la oma de cable, enemos el p oblema
de que pod ía su i muchos golpes de los esiden es. O o mo i o po lo que se
es u o en con a es que la mayo ía de ellos (de los modelos que se obse a on)
emi en la señal WiFi p incipalmen e pa a una plan a, po lo que los esiden es de los
dúplex (los apa amen os de dos plan as) pod ían su i de mala cobe u a en la
plan a in e io . Po lo que se desca ó la idea de es e ipo de pun os de acceso."
Decidimos que usa íamos modelos de APs mas
adicionales, que se pa ezcan a los que la p opia
Uni e sidad es á usando ac ualmen e. Con es os
modelos, los APs se pod ían coloca en luga es donde
su an menos de golpes acciden ales, incluso debe ían
bas a pa a llega a la plan a in e io de los dúplex. Es e ipo de APs son bas an e
mas po en es que los an e io es, incluyendo los modelos pensados pa a baja
densidad de disposi i os. Es o nos lle ó a la idea de que un pun o de acceso po
apa amen o iba a se demasiado, ya que es os modelos emi en con mayo
po encia, pod ían llega a más luga es, pe o a la ez pod ía habe mucha
in e e encia en e ellos."
21

Siguiendo con el mismo modelo de pun o de acceso, plan emos si pone un pun o
de acceso po cada dos apa amen os o un pun o de acceso po cada es. Aho a
en a en juego como se ia la cobe u a de los pun os en un en o no eal pa a sabe
esponde a es a p egun a, po lo que hay que decidi ma ca y modelo de AP pa a
pode i a la siguien e ase."
Aunque pa íamos de la idea de usa Cisco Me aki pa a los pun os de acceso,
acabamos decidiendo que iba a se mejo opción usa Ubiqui y Uni i po ene ya
algún equipamien o de esa emp esa de an es, además de habe comp obado que
su endimien o e a el adecuado pa a el ipo de despliegue que se necesi aba."
Aho a quedaba elegi qué swi ches íbamos a usa pa a el despliegue, pa a
complemen a la ins alación. Inicialmen e se sugi ió usa swi ches de Cisco, pe o
como los pun os de acceso iban a se de Ubiqui y Uni i, iba a se mejo opción usa
swi ches de la misma ma ca pa a ene una mejo in eg ación en la ins alación y en
el panel de adminis ación de Ubiqui y."
Un equisi o indispensable pa a los swi ches es que debían de se de 48 pue os
mínimo, y ene 4 de es os. El po qué se debe a que, como se comen ó en el
apa ado “Desc ipción del es ado inicial de la ed”, hay que epa i in e ne a 48
apa amen os pa a una mi ad y o os 42 pa a la o a mi ad de la esidencia.
Además, al añadi pun os de acceso, se necesi a án más cables pa a és os.
Poniéndonos en el peo caso de un AP pa a cada dos apa amen os, se
necesi a ían 24 cables ex a en la p ime a mi ad y 21 cables ex a pa a la segunda.
El o al se esume en la siguien e abla:"
Po an o, dos swi ches pa a cada mi ad: uno dedicado a apa amen os y o o
dedicado a los pun os de acceso."
Mi ad 1
Mi ad 2
Apa amen os
48
42
Pun os de acceso
24
21
To al pue os en swi ches
72
63
22
Además, exis en dos pun os de acceso ue a de los apa amen os: uno en la sala de
es udios y o a en el salón de ac os. Pa a hace llega in e ne a es a sección, con
un swi ch de 8 pue os bas aba (es lo más pequeño que se puede encon a )."
Resumiendo, se decidió lo siguien e espec o a la ins alación nue a de ed:"
•1 AP po cada dos o es apa amen os"
•APs de Ubiqui y Uni i"
•4 swi ches de 48 pue os de Ubiqui y Uni i - 2 po mi ad"
•1 swi ch de 8 pue os de Ubiqui y Uni i"
Diseño y con igu ación de la ed ija
Es e es uno de los pun os más impo an es de la ed, ya que es la pa e de la
in aes uc u a que sopo a al es o. Po lo que un buen diseño ha á que dé un buen
esul ado la ed po cable."
Como se comen ó al p incipio de la sección “Desc ipción del es ado inicial de ed”,
el diseño inicial ue c eado po un g upo del Se icio Cen al de In o má ica de la
23
G á ico que desc ibe la dis ibución de la ed ija (o de cable)
Uni e sidad, po lo que imos adecuado eplica la es uc u a pa a el nue o
despliegue, pe o adap ándolo a los nue os disposi i os y sus posibilidades."
La nue a dis ibución, que se desc ibe isualmen e en el g á ico de la an e io ,
consis e en que el se ido se conec a al p ime swi ch de la p ime a mi ad. És e se
decidió que epa ie a la conexión a los 48 APs de la misma mi ad. Po enlace de
ib a, se conec aba con el segundo swi ch de es a p ime a mi ad y con el swi ch de
ecepción (que luego se comen a á). Los swi ches de es e modelo ienen odos 4
pue os adicionales. Po lo que, es os pue os se usan pa a los enlaces de ib a
swi ch-swi ch."
El segundo swi ch enia odas sus pue os ocupados con los 48 apa amen os. Po
lo que se conec a con el p ime swi ch de la o a mi ad de la esidencia median e
enlace de ib a, usando esos pue os adicionales."
El de la segunda mi ad epa e conexión a los 42 apa amen os de es a mi ad de la
esidencia. Y, po enlace de ib a, se conec aba con el segundo swi ch."
El segundo swi ch de es a mi ad epa e la conexión a los pun os de acceso de es a
segunda mi ad."
Po úl imo, el swi ch de ecepción. Como se comen ó, iba a se inicialmen e un
swi ch de pocos pue os, pe o a la esidencia apa eció un Uni i EdgeSwi ch de 48
pue os. És e es de o a linea de p oduc os, po lo que no se conec a con el panel
de Uni i, y se con igu a manualmen e median e su p opio panel. Con inuando con la
desc ipción de la opología, es e swi ch po ib a ecibe la conexión y la epa e a
los pun os de acceso de la sala de es udios y el salón de ac os, además de es
elé onos VoIP."
Respec o a la con igu ación de la ed, dis inguimos 4 edes, que se implemen an
sob e VLANs:"
•Red de adminis ación: es la ed que usan los swi ches, pun os de acceso y el
con olado Uni i pa a comunica se y con ola la ed."
•Red WiFi: es la ed que usan odos los usua ios que se conec an po WiFi."
•Red cableada: es la ed que usan odos los usua ios que se conec an po cable
al elé ono del apa amen o[16], los elé onos o ecen un pue o ex a pa a
conec a se po cable a la ed, y és e e ique a el á ico de ese pue o de o ma
dis in a al del VoIP."
24
•Red VoIP: los elé onos VoIP son los que usa án es a ed pa a la comunicación
con la cen ali a y en e los elé onos."
Una ez desc i os el obje i o de las edes, se a a desc ibi la con igu ación más
écnica de cada una, median e la siguien e abla:"
En la abla an e io , se puede e cuales son las edes IP 4 (desc i as po IP de la
ed y másca a), la pue a de enlace, el nume o de la VLAN, si los swi ches hacen
aislamien o en e disposi i os y si el DHCP es es á ico. Con es o úl imo se es á
e i iendo a que el DHCP en modo es á ico no o ece una IP si no es á den o de
una lis a de inida manualmen e. De es a o ma, es más di ícil que una pe sona se
conec e a una de esas edes y que le uncione."
Diseño de la ed WiFi
Pa a empeza con esa ase, el Se icio Cen al de In o má ica nos p opo cionó un
mapa de cobe u a que ealiza on median e una simulación con el so wa e Ekahau
sob e la banda 2,4GHz, suponiendo que los pun os de acceso se ian los Uni i AC
Li e. Además, nos ecomenda on usa es e modelo de pun os de acceso ya que
eían que iban a se idóneos pa a el despliegue."
Sob e es e modelo de APs, uno solo es capaz de sopo a a 200 clien es en
condiciones no males an o en 2,4GHz como en 5GHz, según el documen o de
especi icaciones del modelo[17], además de que su alimen ación se ealiza sob e el
p opio cable de in e ne (Powe o e E he ne )."
La simulación, ealizada po el SCI, consis ía en coloca dos pun os de acceso po
módulo o mando una diagonal. Con módulo se e ie e a una mi ad de un bloque, y
la diagonal es coloca uno en la plan a baja y en un lado del módulo, y el o o en la
segunda plan a en el lado opues o del módulo. El dibujo de la es a siguien e página
Adminis ación
WiFi
Cableada
VoIP
Red IP 4
10.10.10.0/24
10.10.0.0/21
10.10.20.0/24
10.10.11.0/24
Pue a de enlace
10.10.10.254
10.10.0.1
10.10.20.1
10.10.11.254
VLAN
No
10
15
7
Aislamien o
No
Si
No
No
DHCP Es á ico
Si
No
No
Si
25
Pa a su uncionamien o, se equie e de un se ido RADIUS, que pe mi e iden i ica
al usua io. Es e se ido lo p o ee la Uni e sidad, y los pun os de accesos in en an
au en ica di ec amen e con és e. La ed edu oam usa un sis ema de au en icación
po uni e sidades, y pa a conec a se con o os países, se hace a a és de los
se ido es del NREN (Na ional Resea ch and Educa ion Ne wo k) del país
co espondien e. Po an o, nues o se icio se conec a a un se ido RADIUS que
edi ecciona las pe iciones al se ido co espondien e dependiendo del dominio
que enga el email del usua io."
Pa a los in i ados, o aquellas pe sonas que no hayan con igu ado aún la ed
edu oam, se implemen a á un po al cau i o en es a ed pa a pode iden i ica a
cada uno de los usua ios y limi a el uso que hacen de la ed."
Todo el á ico de la ed WiFi a po la VLAN 10, que se explicó en “Diseño y
con igu ación de la ed ija”.&
32

3. Requisi os del sis ema so wa e de ges ión
Análisis
Vi imos en un mundo donde odo es á en in e ne , que nos o ece la comodidad de
pode hace o e cosas desde u o denado o mó il, cen alizado en nues os
disposi i os. Pa a la esidencia, pode o ece un conjun o de se icios y que se
puedan e desde u apa amen o es posible g acias a la nue a ins alación de cable
e inalámb ica, y las acilidades que o ecen los con enedo es. Además, ag upa
di e sos se icios, inicialmen e sepa ados, en un solo luga ayuda a isibiliza los. Y
pode in o ma iza algún se icio que ac ualmen e no lo es, pe mi e simpli ica las
ges iones de ellas y da comodidad de uso."
Ac ualmen e enemos da os de uso de á ico po disposi i o, un se icio de pa es
in o má icos, el blog de emas elacionados con la esidencia, o nue os da os como
los que o ece el se icio de ele onía aho a son elemen os que pod ían es a
p esen es en dicho so wa e que pueden in e esa a los esiden es. Tene los en un
mismo luga puede acili a a los usua ios encon a odo es o y pode e esa
in o mación en cualquie luga , sea en la esidencia o ue a."
Además, es e so wa e no debe ía se ce ado, si en el u u o se quie e ex ende ,
debe ía pode se ex ende sin mucha di icul ad. Pa a es e abajo no se a a pode
aba ca muchas de las ideas que puedan su gi , es e pun o es impo an e pa a que
los u u os es udian es que abajen en el á ea de in o má ica de la esidencia
puedan amplia lo con las ideas no con empladas en dicho abajo o con sus p opias
ideas."
Me odología del desa ollo so wa e
Pa a es a ase del abajo, se usa á una me odología basada en Sc um. La oma de
equisi os se ealiza á median e ob ención de lo que se denominan “Use S o ies”,
que pueden se uno o a ios equisi os de las me odologías mas clásicas. De los
equisi os, se ob end á un modelo pa a la base de da os que se i á pa a el
backend que ealiza An onio pa a almacena in o mación. Con el modelo ealizado,
se de ini á un conjun o de endpoin s de la API pa a que no haya disc epancias en e
33
el backend y el on end, que ealizo yo. Esos endpoin s son las u as disponibles en
el se ido que pe mi en ealiza el in e cambio de in o mación y ealiza acciones
en e el backend y el on end."
El p oceso de desa ollo del se ido web se pod á encon a en la sección
«Desa ollo del backend de la apliación "Panel del esiden e”» del abajo de An onio
Ángel. El abajo del on end, en cambio, se encon a á en la siguien e sección. De
es a o ma, cada uno abaja á independien emen e en cada una de sus a eas, pe o
pod á da opinión sob e las his o ias de usua io o la especi icación de los endpoin s
en cualquie momen o."
En la ul ima ase, hab á que hace un p oceso de p uebas manuales pa a
comp oba que odo unciona co ec amen e y que la in eg ación en e ambos
componen es es co ec a."
Requisi os
En es e apa ado, se expond án los equisi os ecabados pa a es a aplicación web.
Al segui una me odología Sc um, los equisi os se án “his o ias de usua io”, que
son pun os más gené icos, que incluyen más in o mación sob e lo que se pide, pe o
pe mi e pode modi ica los o ex ende los más ácilmen e que los equisi os clásicos.
Es os equisi os es án muy bien es uc u ados y de inidos, pe o que en muchas
ocasiones ealiza un cambio sob e ellos conlle a a hace una ees uc u ación de
algunos de ellos, al y como hemos comp obado en los abajos de los es udios de
la ca e a."
Desde la p ime a e sión has a la inal, han habido di e sos cambios y mejo as en
es as his o ias de usua io, siguiendo la agilidad de la me odología SCRUM, que han
pe mi ido ob ene el siguien e es ado de ellos. Es os son los “ equisi os” inales de
la aplicación:"
•Aspec os gene ales de la aplicación web
•La aplicación web debe se modula , pe mi iendo su ex ensión ácilmen e."
•La aplicación debe pode usa se desde una na egado web en cualquie
disposi i o."
34
•La aplicación es á pe ec amen e en dos pa es, se debe ga an iza la
in e ope abilidad en e ambas median e el es ilo a qui ec ónico REST y
usando el o ma o de in e cambio de da os JSON:"
-La pa e isual - In e az de Usua io - con la lógica de con ol de la
in e az, a la que llama emos on end."
-La pa e de lógica de negocio y base de da os, con las ope aciones
especí icas de és a, a la que llama emos backend."
•Pe misos de la aplicación
•En la aplicación se dis inguen a ios oles, cada uno de ellos de e mina á las
acciones que el usua io puede lle a a cabo en es a. Los oles p incipales
se án:"
-Adminis ado "
-Residen e"
-Pe sonal de la UMA no esiden e"
-Pe sonal de adminis ación"
•Los pe misos se dis ingui án cada módulo, den o de un módulo hab á
páginas y den o de cada página hab á uno o a ios pe misos. Po an o, se
di á que un ol end á X pe miso sob e el módulo A y la página B."
•La isibilidad de los módulos y los dis in os apa ados den o de un módulo
dependiendo de los pe misos que enga el usua io debe pode se ob ene
median e la API."
•Módulo de consumo de in e ne
•La aplicación pe mi i á e el consumo de in e ne de cada uno de los
disposi i os ligados a un esiden e. Cada usua io pod á iden i ica a la
aplicación cuales son sus disposi i os en ando a es e módulo con cada uno
de sus disposi i os y con su cuen a. Se mos a án g á icos de consumo de
in e ne po cada uno de sus disposi i os iden i icados e in o mación
elacionada a cada uno, como consumo ag egado, di ección IP, e c."
•Los adminis ado es pueden e odos los disposi i os asociados, pa a e
in o mación sob e ellos o ealiza acciones sob e ellos."
•Si un usua io eclama que su disposi i o, siendo suyo, no puede encon a lo
en la página, po qué alguien se ha ap opiado de él, pod á no i ica lo a los
beca ios de in o má ica y ealiza el cambio de “dueño”."
35
•Sob e consumo ag egado, se pod á e dicho consumo en un ango de
echas, que a de 1 día has a 1 semana, con una p ecisión de 1h has a 1 día,
o de 1 día has a 1 mes con p ecisión de 1 día."
•Pa a los da os en iempo eal, el ango oscila á en e dos alo es X e Y. X
se á del momen o ac ual has a 1 día, 23 ho as y 59 minu os an es; el alo de
Y se á de 1h an es has a 2 días. La di e encia en el ango debe se mínimo
de 1 minu o. La p ecisión se á de 1s has a 1 ho a."
•Módulo de esumen pa a el Wo dP ess
•Una sección que mues e un esumen de las úl imas no icias del blog,
ca gando el RSS de és e, y mos ando un enlace pa a accede a él. También
se mos a ía los mé odos pa a man ene se in o mado."
•Módulo de his o ial de llamadas
•Un usua io esiden e se á capaz de e el his o ial de llamadas de su
apa amen o."
•El pe sonal de adminis ación debe se capaz de e el his o ial de llamadas
de cualquie apa amen o."
•En cualquie caso, debe habe un il ado po echa y núme o de elé ono del
o o ex emo."
•Módulo de incidencias in o má icas
•La no i icación y ges ión de incidencias in o má icas debe hace se a a és
de la aplicación. Exis i á un o mula io que un usua io del sis ema pueda
ellena pa a no i ica la a e ía o el p oblema, o simplemen e hace una
consul a in o má ica. Los adminis ado es pueden i ac ualizando el es ado
de la incidencia y los usua ios, hace su seguimien o."
•En la página de una incidencia, los adminis ado es se án capaces de
modi ica el es ado del mismo. Al ealiza un cambio de es ado, deben
esc ibi un mensaje que explique el mo i o."
•El usua io puede desca a en cualquie momen o una incidencia, explicando
la azón de al desca e."
•Además, los adminis ado es pueden e cuales son las incidencias ac i as y
esuel as."
•Los es ados que puede ene una incidencia son:"
-Pendien e: nue a incidencia, espe ando a que algún beca io lo ea"
36
-Espe ando: incidencia lis a pa a se a eglada, pe o no pueden i aún (no
pueden i po no se la ho a de disponibilidad o no es án disponibles
ningún beca io)"
-T abajando: algún beca io es á abajando en ello"
-Espe ando a usua io: se espe a alguna espues a del usua io po algún
mo i o"
-Resuel o: la incidencia se ha esuel o"
-Desca ado: el usua io ha desca ado la incidencia"
-No se a egla á: po algún mo i o ( azonable), la incidencia no se a a
a egla "
•No i icaciones y módulo de no i icaciones
•La aplicación en ia á no i icaciones a los usua ios an es dis in os e en os
que ocu an en el sis ema. Es a con a á con dis in os mé odos de
no i icación:"
-Co eo ins i ucional UMA, mé odo de no i icación po de ec o."
-Bo de eleg am, el bo manda á a los usua ios con los que man iene
con e sación las no i icaciones opo unas"
•Cada usua io puede selecciona qué medios de no i icación desea, y ene
a ios (o ninguno ac i o). Como mínimo se end án las no i icaciones in-app."
•Den o de la aplicación hab á un “cen o de no i icaciones”, desde donde se
pueden consul a odas las no i icaciones (pendien es, is as…)."
•Una no i icación ya is a se á bo ada al cabo de un iempo p uden e. (1-3
meses)."
•Ges ión de la sesión
•Cualquie usua io de la aplicación a excepción del pe sonal de
adminis ación, debe iden i ica se en la aplicación usando sus c edenciales
de iDUMA. El pe sonal de adminis ación emplea á unas c edenciales pa a la
au en i icación usando un di ec o io p opio."
•La sesión se manda á en cada pe ición en la cabece a HTTP en la o ma de
oken JWT. La alidez de un JWT se á de 2 días."
-En una espues a HTTP se manda á una cabece a de ex ensión cuando el
oken es é a pun o de expi a , es o es, cuando le queden 1h. "
37

-Se usa á una cabece a HTTP con alo a 1, y aconseja al clien e que pida
un oken nue o en una u a especí ica (desc i a más abajo) y empleando
el oken que iene aún álido."
-La u a se á / enew_ oken, y a es a se le ha á simplemen e una pe ición
GET (con el campo de la cabece a Au ho iza ion: Bea e JWT_TOKEN) y
la espues a se á un JSON: { oken: NEW_TOKEN }"
-Hab á una u a disponible que le pe mi i á eno a el oken al clien e,
empleando access oken pa a en onces aún álido. El oken nue o que se
p opo cione, end á una alidez de 2 ho as desde el momen o de su
expedición. Si el oken ya ha sido eno ado, el a iso de expi ación se
ha á cuando a es e le queda 30min en el caso del oken de 2h."
•El mecanismo de pe sis encia del oken JWT en el clien e se á empleando la
API local s o age/session s o age del na egado web."
-local s o age pe mi e man ene la sesión incluso si cie a la pes aña o el
na egado "
-session s o age, en cambio, cie a la sesión al ce a las pes aña de la
web"
-Pe mi e implemen a el mecanismo de “ ecue dame”"
•Si un clien e ealiza una pe ición al se ido pa a ealiza una acción, pe o el
usua io que lo ealiza no iene pe misos, debe alla la pe ición indicando que
no iene pe misos pa a ealiza dicha acción."
•En el on end, si in en a accede a una página que no iene pe misos,
apa ece á que la página no exis e."
Modelo
Pa a es e p oyec o, el modelo de da os debe pode pe mi i almacena oda la
in o mación desc i a an e io men e en una base de da os. Pe o, los da os de
consumo y llamadas ele ónicas se encuen an disponibles en o as base de da os,
a las que la aplicación se conec a á pa a ob ene esa in o mación."
El modelo siguien e solo ep esen a á los da os que maneja á di ec amen e la
aplicación web, o os da os como el his o ial de llamadas o consumos de in e ne
se encuen an en o as bases de da os."
38
39
Modelo elacional de la base de da os -
An onio Ángel
El modelo lo ha ealizado An onio Ángel, aunque el modelo inicial ue un abajo en
equipo."
El cen o del modelo es la en idad Usua io. Es a en idad almacena la su icien e
in o mación del usua io pa a que pueda usa la aplicación. El NIU, su nomb e y, si
es esiden e, el núme o de apa amen o son los da os necesa ios. Pa a los usua ios
de la adminis ación de la esidencia, al no se pe sonal de la uni e sidad, se debe
o ece un inicio de sesión al e na i o. Eso es á ecogido en la en idad C edenciales,
cuyo NIU se á uno cualquie a que no in e ie a con los de la Uni e sidad (como po
ejemplo núme os bajos como el 1, 2, 3…)."
Los pe misos es án ecogidos en las en idades Rol y Pe miso (con la elación de
muchos a muchos ep esen ada po la en idad ol_has_pe miso). Po an o un ol
de e minado end á un conjun o de pe misos, y esos pe misos se pueden i
epi iendo en e los di e sos oles. A su ez, cada Usua io es á elacionado con el
ol al que pe enece. Los pe misos con ienen es cla es que pe mi en de e mina a
donde pe enece el pe miso y cual es. Los a ibu os module_name y page_name
iden i ican donde pe enece el pe miso pe mission. El módulo iden i ica un g upo de
da os y acciones elacionados, como puede se los pa es de in o má ica. La
página, que es á más elacionado con el on end, pe mi e pode en a en una o
a ias secciones del módulo."
Sob e no i icaciones, es as se almacenan en la base de da os en la en idad
No i icacion. En ella se almacenan el í ulo, la echa y si se ha leído o no, además de
a quién a di igido la no i icación. Opcionalmen e se puede almacena un cue po,
con con enido que desc iba más la no i icación, y un enlace, en caso de que se
conozca el o igen de la no i icación."
El sis ema de no i icaciones iene di e sos canales pa a dis ibui las, como se ha
comen ado ya. Pa a con igu a las, se han c eado cua o en idades de las cuales es
“he edan” (usando el mismo concep o de he encia de O ien ación a Obje os) de
una. Es a supe -en idad es base_no i icación que elaciona un usua io con una
con igu ación, además de indica si es á ac i o o no ese canal. De es a, sale una
con igu ación pa a Teleg am, o o pa a los Co eos y una úl ima pa a no i icaciones
40
PUSH (aunque no se usen, el sis ema es a p epa ado pa a añadi es e nue o canal).
Pa a el canal de co eos elec ónicos no se almacena ningún da o adicional, pe o
pa a pode lo iden i ica den o del backend, se debe c ea dicha en idad. Pa a
Teleg am, hay que almacena el cha _id (o use _id, que son el mismo iden i icado )
pa a pode en ia mensajes di ec os al usua io."
En el sis ema de pa es in o má icos ambién se debe modela , y lo encon amos
con las en idades Pa eIn o ma ica y Seguimien o. El p ime o, Pa eIn o ma ica,
almacena la in o mación necesa ia pa a un pa e. Con iene el ipo de pa e (is_wi i,
is_wi e y is_o he ) donde se puede selecciona más de un ipo a la ez. También
incluimos una desc ipción del p oblema o consul a, que es obliga o ia, la echa de
c eación, el es ado en el que se encuen a el pa e y una disponibilidad en o ma de
ho a ios almacenados como json (a ailabili y_json). Es e úl imo pe mi e al usua io
que c ea el pa e deja ano ado su disponibilidad ho a ia pa a que se pueda esol e
lo an es posible. El o ma o del JSON se especi ica á en la API. Po úl imo, cada
pa e es á elacionado con un usua io, que es su c eado . El seguimien o si e pa a
e el his o ial de modi icaciones del es ado del pa e, y pode isualiza los
cambios del mismo. En un seguimien o, almacenamos la echa de cuando se ealizó
esa modi icación, un mensaje que indica el mo i o del cambio, y, si hay un cambio
de es ado, se almacena ambién el es ado en el que se encon aba el pa e an es de
modi ica . De es a o ma, se puede obse a el lujo de ansiciones de es ado del
pa e."
La úl ima en idad es Disposi i o. Es a en idad pe mi e elaciona un usua io con un
disposi i o de la esidencia. Pe mi e o ece la u ilidad de e los consumos de
in e ne al sabe cuales son los disposi i os del usua io. Lo impo an e de la en idad
es la MAC (o di ección MAC) que es la que pe mi e la iden i icación. Los o os dos
a ibu os si en como caché, pa a acceso ápido de esos da os."
Desc ipción de la API
La base común en e el backend y el on end es la API que expone el p ime o que
consumi á el segundo. Se desc ibi á cual es es a especi icación, que
41
Pa a Reac , se han de inido algunos componen es que se pueden eu iliza an as
eces como sea necesa io. Algunos son componen es de Boo s ap con e idos
pa a su ácil uso en Reac , como bo ones[56], modal[57] o collapse[58]."
Pa a comunica se con la API del backend, se ha de inido una pequeña biblio eca
que simpli ica la comunicación con és e. El uso de es os mé odos den o de una
acción de edux (código que pe mi e modi ica el es ado del módulo) debe me e se
den o de un deco ado (del pa ón de diseño deco ado ) que cap u a los e o es y
los almacena en edux, de es a o ma se e i a epe i código pa a e o es, y
cualquie componen e puede conoce que ha habido un e o usando siemp e el
mismo mecanismo ( e el es ado de los e o es)."
Es e módulo, además, escucha a las nue as no i icaciones que puedan apa ece
mien as el usua io usa la aplicación. Ya que es un compo amien o que se a a
compa i en e odos los módulos, se ha decidido coloca lo en es e componen e
común. Al ecibi una nue a no i icación, la mos a á en una esquina del na egado
(como una no i icación), a la ez que inc emen a á el con ado de no i icaciones no
leídas (se encuen a en la pa e supe io de una página, a la de echa)."
Sob e es a cabece a, el bo ón de “Sali ” pe mi e ce a sesión en cualquie
momen o. El ex o de la izquie da “Inicio” indica el nomb e del módulo en el que e
encuen as. Es a cabece a siemp e apa ece en odos los módulos."
También se ha colocado una ba a de na egación
en e los dis in os módulos, y el mismo módulo en
el que uno se encuen a. Se encuen a a la izquie da del
na egado (cap u a de echa abajo), y en los mó iles se
mues a median e un bo ón que apa ece al lado del ex o
de la izquie da de la cabece a (cap u a de echa a iba)."
Po úl imo, ambién se enca ga de p epa a la de ección
del idioma del na egado pa a pode mos a los ex os en
48

el idioma del usua io (si es á disponible)."
Hay un componen e llamado App que es el enca gado de ealiza la mayo ía de las
a eas desc i as an e io men e. La ba a de na egación, la cabece a, las
no i icaciones, los es ilos base (CSS), el sis ema de u as, que mues a las páginas
dependiendo de la u a del na egado , y la comp obación de pe misos son a eas
que ealiza es e componen e. App se mues a siemp e y es an eceso de cualquie
página del sis ema de u as."
En el caso de que una página no exis a (o el usua io no la pueda e ), la página que
se mues a ambién es a incluida en es e módulo. También, du an e la
comp obación de los pe misos y de la sesión, si ocu e un e o , se mos a á o a
página que es á incluida en es e modulo común ambién."
49
‣Página inicial - Página de inicio de sesión"
50
(↑) Página de inicio de sesión, con las dos modalidades"
(↓) Página inicial después del p oceso de inicio de sesión
Pa a que los usua ios puedan inicia sesión a a és del mecanismo de
au en icación SAML de la Uni e sidad, se ha p epa ado un bo ón que pe mi e
empeza el p oceso de au en icación. Con un sencillo click, edi igi á a la u a /
albe ginia que es el que empieza odo el p oceso. Al inal del p oceso, como se ha
desc i o, la aplicación web ecibi á un oken den o de los pa áme os de la URL,
que la aplicación almacena á den o del localS o age o sessionS o age,
dependiendo de si se ha ap e ado el bo ón de eco da o no ( espec i amen e). En
el caso de que el usua io inie a de algún o a página y haya acabado en la página
de inicio de sesión po habe le caducado la sesión, se in en a á edi igi a la página
en la que se encon aba an e io men e."
En la página de inicio de sesión ambién encon amos un modo al e na i o de inicio
de sesión. Es e modo es pa a la adminis ación de la esidencia, ya que no son
usua ios de la Uni e sidad, necesi an de un mé odo al e na i o de inicio de sesión.
Es e mé odo es el adicional usua io y con aseña, con las mismas uncionalidades
que el an e io mé odo, aunque el oken de la sesión se ob iene en la misma
espues a de comp obación de las c edenciales. Esa comp obación se ealiza
di ec amen e al backend de la aplicación web."
El bo ón de abajo de ambas cap u as pe mi e cambia en e ambos mé odos de
inicio de sesión, que se ealiza al momen o."
Si hay ya un usua io que haya iniciado sesión, es a página se con ie e en una
especie de esc i o io con enlaces a los di e sos módulos y páginas donde el
usua io iene pe misos pa a accede , además de un módulo ex a con enlaces
ápidos a páginas de la web de la Uni e sidad que pueden se ú iles a los usua ios."
51
‣Página esumen del blog"
"
52
Es e módulo es un acceso pa a el blog en Wo dP ess. Al en a , se le mos a á al
usua io una lis a de úl imas en adas del blog, a modo de esumen sin ene que
en a en el blog pa a isualiza los. Al clicka en una “ a je a” de un pos , se ab i á
una nue a pes aña con la en ada comple a. Encima de es e lis ado, se encuen an
dos bo ones: g ande y azul pa a i al blog, mas pequeño y g is pa a i a o a página."
Es a o a página explica al usua io di e sas mane as de ecibi no i icaciones cada
ez que se publica una en ada."
53

‣Módulo pa a consumo de in e ne "
54
Panel con disposi i os y g á icos
G á ica de iempo eal con selec o de ango de iempo
"
"
55
Da os ho a a ho a de la úl ima semana sob e elocidad media
Da os ho a a ho a de la úl ima semana sob e consumo ag egado
"
56
G á ica día a día del mes sob e consumo ag egado
Panel de adminis ación (lis ado de disposi i os)
"
En el módulo de consumo de in e ne , un esiden e es capaz de isualiza di e sas
g á icas sob e los da os que se ob ienen del uso de in e ne que ealizan sus
disposi i os. En la pa e supe io de la página encon a á una lis a de pes añas con
cada uno de los disposi i os asociados a su cuen a. Al hace click en alguno,
apa ece án las g á icas. Además, la URL se modi ica á pe mi iendo eca ga la
página o lle a la a o a pes aña (copiando y pegando) sin pe de el disposi i o
seleccionado. En caso de en a con una URL in álida o con un disposi i o que no
es del esiden e, no ha á nada."
La p ime a g á ica que encon amos mues a en iempo eal el consumo de ancho
de banda del disposi i o. En la g á ica, hay un campo que pe mi e selecciona el
ango de echas a mos a en el g á ico. El ango usa echas ela i as al momen o
ac ual, es e es el mo i o po el cual la echa más p óxima a la ac ual es á más a la
de echa, y la más lejana a la izquie da, exp esando así el paso del iempo y
siguiendo el mismo esquema que la g á ica. El campo escala sus alo es máximo y
mínimo de acue do a los alo es ac uales, pe mi iendo da mayo p ecisión cuando
ambos alo es del campo son p óximos, y meno p ecisión cuando la di e encia es
mayo . El alo más an iguo que se puede ob ene es de 1 día."
57
Panel de adminis ación con il ado (más bo ones de la abla)
‣Módulo pa a no i icaciones"
"
64
Con igu ación de no i icaciones
Con igu ación de no i icaciones, con el código de ac i ación pa a Teleg am

"
65
Lis ado de no i icaciones sin lee
Lis ado de odas las no i icaciones
El módulo de no i icaciones pe mi e al usua io con igu a los canales de
no i icaciones y e sus no i icaciones, sin lee o odas."
En la con igu ación, con un simple click se puede ac i a o desac i a los canales de
no i icación disponibles. En cada canal se incluye una b e e desc ipción de a donde
se en ían las no i icaciones y debajo la casilla pa a ac i a o desac i a dicho canal.
En el caso de Teleg am, an es de pode usa ese canal hay que con igu a lo. Pa a
ello, al y como se mues a en la segunda cap u a, el usua io debe habla al bo (el
que apa ece es un ejemplo, no es uno eal) y le debe en ia el código que apa ece
en pan alla, y después debe ap e a el bo ón de “Comp oba ac i ación” que le
no i ica á si el p oceso ha uncionado co ec amen e."
En el lis ado de no i icaciones sin lee , que co esponde con la e ce a cap u a,
pe mi e e dichas no i icaciones e in e ac ua con ellas. Si las no i icaciones
con ienen un enlace, se mos a á como “Ve más”. Al ap e a el enlace, se ma ca á
como leído. En el es o de no i icaciones, se puede ma ca como leído con el bo ón
e de. El bo ón ojo de “Desca a ” pe mi e elimina la no i icación comple amen e
del sis ema."
En el lis ado de no i icaciones, el usua io puede e odas las no i icaciones (leídas y
sin lee ), y hace las mismas ope aciones que en el lis ado de no i icaciones sin lee ."
66
5. Despliegue de se icios
Es ado ac ual de los se icios
Empeza emos desc ibiendo los se icios ac uales en la esidencia, como es án
ins alados y uncionando, y como pod ía ayuda el uso de i ualización median e
con enedo es."
Ac ualmen e, en la esidencia, enemos un conjun o de se icios que sus en an la
esidencia o complemen an las ac i idades de los esiden es. Una buena pa e son
se icios web, pe o o os son se icios de sis emas y edes."
‣dnsmasq"
Tenemos p ime o el se icio de DHCP + Caché DNS que, como se ha mencionado
di e sas eces en la sección 2 (Diseño, con igu ación y despliegue de la
in aes uc u a de ed). Es un se ido que o ece DHCP (pa a IP 4) a las dis in as
edes de la esidencia, pa a que los disposi i os eciban su IP asignada (es á ica o
dinámicamen e). Además, iene un se ido DNS que almacena localmen e copias
de en adas DNS pa a una mayo espues a a ni el local, además de ene en su
egis o los disposi i os que se les ha asignado una IP po DHCP (y hayan dado un
nomb e de disposi i o - conocido como hos name). Es un elemen o esencial de la
ed que pe mi e a odos pode con igu a sus disposi i os au omá icamen e,
incluyendo elé onos VoIP, swi ches y APs."
Vi ualizado se i ía pa a hace lo po able, ácilmen e ins alable y se educi ían los
iempos de despliegue en caso de allo. Pe o nos qui a ía de ac ualizaciones
67
dnsmasq
Con olado
Uni i
nginx
php- pm
MySQL
Wo dP ess
Medido de
consumo de
in e ne
Pos g eSQL +
imescaleDB
ne da a
G á ico con los se icios ac uales que se pueden i ualiza , ag upados en
columnas po elación
au omá icas de segu idad que ienen con Ubun u Se e y la es abilidad que o ece
es e paque e, además de la ue e dependencia con las in e aces de ed del
sis ema hos . La con igu ación del se ido , eniendo una copia de los a chi os de
con igu ación, solo se ía copia y pega . Con es os p os y con as, eo que no se ia
necesa io i ualiza el se icio ya que ac ualmen e como es á, a bien y no da
p oblemas."
‣Con olado Uni i"
El siguien e se icio es el con olado Uni i. Es el que se enca ga de ges iona los
APs y los swi ches (menos el de la zona de ecepción). Además nos pe mi e pode
e el es ado de odos ellos, con igu a los, ac ualiza su i mwa e…, a a és de un
panel web. El con olado usa di e sos pue os pa a el con ol de los disposi i os."
También pod ía se buen candida o pa a i ualiza , pe o debido a que, al igual que
el se ido DHCP, necesi a acceso di ec o a la ed de los swi ches y APs, di icul a su
p oceso. Exis e dos mé odos pa a pode usa es e se icio en un con enedo : uno
es usa las mismas edes que el del sis ema (exac amen e igual que como es á
aho a) y que no es compa ible con o ques ado es de con enedo es como
Kube ne es o Docke Swa m, o usa una ed macVLAN[19] que pe mi e conec a el
con enedo di ec amen e a una ed eal y es compa ible con o ques ado es.
Aunque, en mi opinión, posiblemen e sea más di ícil mon a odo el sis ema
i ualizado que deja el se icio al y como es á. Exis e un ejemplo de con enedo
que pe mi e ambos modos de ed[20]."
‣Se ido Web"
También enemos una web. La web es á di idido en di e sos elemen os, po lo que
p ime o desc ibi emos el se ido web al que se conec an odos los usua ios. El
se ido es un nginx[21] que si e a chi os es á icos que se encuen an en la ca pe a
de a chi os web. Además enemos un Wo dP ess donde se publican algunas
ci cula es, in o mación que o ecen los beca ios (si lo desean) o cie as no icias
elacionadas con la esidencia. Es e usa ambién nginx, aunque delega g an pa e
del abajo a PHP po se una aplicación web hecha en PHP."
Es e se icio se pod ía di idi en un p oxy in e so (un se ido web que edi ecciona
pe iciones web a o os se ido es dependiendo de cual sea), o o pa a los a chi os
68
es á icos de la web y o o pa a Wo dP ess con un apache + mod_php (ya que
Wo dP ess se lle a muy bien con es e ipo de con igu aciones). Pa a el p oxy
in e so se usa ía æ ik[22] que se de ine como “The Cloud Na i e Edge Rou e ”[22].
Es e so wa e pe mi e el au o-descub imien o de se icios y su con igu ación
median e pa áme os que se o ecen den o del mismo descub imien o. Con es e
æ ik, añadi y qui a pa es de la web se á an ácil como ejecu a y pa a
con enedo es. Pa a los a chi os es á icos, se pod ía usa nginx ambién, ya que es
bas an e lige o. Pa a Wo dP ess[23], ya se ha desc i o que con enedo se pod ía
usa . Además és e equie e de una base de da os MySQL[24] o Ma iaDB[25], po lo
que añadi uno al despliegue es bas an e ácil: con solo esc ibi lo en un a chi o que
desc ibe los se icios es su icien e (más adelan e se comen a á sob e es o)."
Den o del se ido web, ambién enemos una pequeña web que mues a el
consumo de ancho de banda que es á haciendo el disposi i o con el que accedes al
mismo, siemp e que el disposi i o es á den o de la esidencia. Pa a su
uncionamien o, equie e de una aplicación que cap u e el á ico, lo clasi ique,
calcule el consumo y lo almacene en una base de da os. Es e se icio pasa á a se
pa e de la aplicación web que se desc ibi á más adelan e en es e abajo."
Po lo que la pa e de la web, se desc ibi á en esa sección como queda ía, pe o la
aplicación que mide el uso se a a coloca en un con enedo en el se ido /pue a
de enlace. Además, es a aplicación equie e de una base de da os Pos g eSQL[26]
con la ex ensión imescaleDB[27], ya que almacena la in o mación con iempo y
dicha ex ensión pe mi e maneja los da os de una o ma muy cómoda pa a ag upa
po iempo."
‣Moni o ización de se ido es"
Pa a moni o iza el es ado del se ido , usamos una aplicación llamada ne da a[28].
Es capaz de ob ene mé icas de odo ipo y mos a las en una web."
Exis e una e sión pa a con enedo de es e so wa e. Aunque es e con enedo no es
capaz de accede a oda la in o mación que nos pod ía in e esa de la pue a de
enlace (no es capaz de lee da os de las a je as de ed)[29]. Po lo que pa a es e
se ido se deja á como se encuen a ac ualmen e, sin con enedo , y se enlaza ía
con æ ik (el p oxy in e so) median e con igu ación manual. Si se ins ala un nue o
69

se ido , es posible que sea más cómodo pa a és e usa la e sion del con enedo ,
ya que no in e esa ía ene an a in o mación más allá de los p opios con enedo es y
el es ado del sis ema."
Pa a esumi , se a a expone una abla con los componen es que es a án
i ualizados y los que no, con lo que lle amos desc i o has a el momen o:"
Nue os se icios
Sob e la ma cha, han ido apa eciendo nue os se icios que son necesa ios pa a
algunas pa es que se desc ibi án en es e abajo pos e io men e o en el abajo de
An onio Ángel C uzado Cas illo."
‣Se ido VoIP"
El p ime se icio que se a a añadi es el de la cen ali a VoIP usando el p og ama
As e isk. Es e se icio es el que pe mi e a los elé onos VoIP pode se comunica con
o os elé onos de la esidencia y con el se icio de ele onía de Voda one (al ex e io
de la esidencia). Más de alles sob e es e se icio lo pod án encon a en la sección
«Con igu ación de as e isk» del mencionado abajo de An onio Ángel."
Y, ¿pod ía se i ualizado es e se icio? Como un se icio que puede i 100% sob e
la ed de in e ne , pod ía se i ualizado sin p oblemas. Un de alle a ene en cuen a
es que, po como es el p o ocolo SIP, es posible que as e isk equie a de muchos
pue os e íme os. Aunque no debe ía se p oblema ya que se pueden con igu a qué
pue os e íme os usa y se pueden “publica ” odos ellos ácilmen e. O usa una
con igu ación de ed “hos ”, donde las edes del con enedo son las mismas que las
En con enedo es
Fue a de con enedo es
æ ik (p oxy in e so - cloud na i e edge ou e )
dnsmasq (DHCP + DNS)
nginx (pa a a chi os es á icos)
Con olado de Uni i
Wo dP ess con apache + php
ne da a en la pue a de enlace
Ma iaDB o MySQL
Medido de uso de in e ne
Pos g eSQL + imescaleDB
ne da a en o os se ido es
70
del se ido , pe o disminuyendo el aislamien o. Además, pa a es e se icio, ambién
equie e de una base de da os MySQL (o Ma iaDB) pa a almacena cie a
con igu ación y da os sob e las llamadas."
O o se icio que a a hace al a es el backend de la aplicación web. También
añadi el sis ema de au en icación con la UMA, que eque i á de un se ido edis."
Es e se icio es á pensado pa a i ualiza se en con enedo es. No equie e de más
ex as a pa e de pone se de ás del p oxy in e so ( æ ik). También se eque i á una
base de da os Pos g eSQL pa a almacena da os de la aplicación, y pa a ob ene
los da os del medido de uso de ancho de banda. Y ambién necesi a á acceso a la
base de da os de As e isk pa a alguno de sus se icios. Además de la mencionada
base de da os edis, que se usa en el sis ema de au en icación."
Un elemen o impo an e del backend es el módulo de inicio de sesión con la
Uni e sidad median e SAML[44], que se desplega á po sepa ado."
Mig ación de se icios exis en es a Docke
En es e apa ado se desc ibi á la me odología seguida pa a pasa los se icios
ac uales a imágenes de Docke , se explica á el uncionamien o que iene Docke y
algunos de los p oblemas que han ocu ido en el p oceso."
"
71
Compa a i a en e con enedo es y máquinas i uales[31]
An es de empeza con la mig ación, se explica á como unciona Docke pa a que se
en ienda an es de explica el abajo ealizado pa a mig a los."
Docke es un se icio de con enedo es, que no son mas que una especie de
máquinas i uales, pe o más lige os. Los con enedo es i ualizan pa e del sis ema
ope a i o, en con aposición a las máquinas i uales que i ualizan ha dwa e.
Todos compa en el mismo ke nel, pe o solo son capaces de e lo que el c eado
de la imagen y del con enedo quie en que ean és os. Es o pe mi e i ualiza
se icios y que se ejecu en en segundos, que puedan se ácilmen e escalables
(aumen a o educi éplicas del mismo se icio) e independien es del sis ema
ope a i o en el que se ejecu an (Linux o Windows en caso de Docke )."
La base de los con enedo es son los que Docke llama “imágenes”. Es el sis ema de
a chi os inicial que end á el con enedo cuando se ejecu e po p ime a ez.
Con iene una base de biblio ecas y ejecu ables que pe mi en al con enedo
unciona con lo que se desee. Las imágenes se mon an sob e capas, po lo que
pe mi e ene a ias imágenes que compa en una misma base, y educi espacio.
Po lo que un “con enedo ” no es más que una imagen en ejecución. En un
con enedo se puede con igu a qué a chi os puede e y donde almacena los,
además de qué edes puede e . También o ece la posibilidad de limi a el uso de
CPU y de memo ia de cada uno de ellos."
Con la ayuda de un o ques ado , como Kube ne es o Docke Swa m, Docke puede
ele a su uncionalidad a mul iples nodos (se ido es que ejecu an con enedo es)
que abajan conjun amen e pa a ejecu a odos los con enedo es, pe mi iendo
escalabilidad y al a disponibilidad. Con un o ques ado , uno pod ía mon a un
“cloud” como los que se encuen an en los se icios PaaS (Pla o m as a Se ice)."
Pa a nues o caso, no se usa á dicha uncionalidad po que la in aes uc u a no es
an g ande que la di e encia en e usa un o ques ado y no usa lo son pocas."
T a ando el ema de cómo mig a lo se icios, se segui á es os pasos:"
1. Analiza los componen es que con o man el se icio (analizado en los
apa ados an e io es)"
2. Busca si exis en imágenes en h ps://s o e.docke .com[33] con el
componen e lis o pa a usa se y analiza si alen la pena"
72
3. P epa a el a chi o pa a gene a la imagen (Docke ile) y los a chi os ex a
pa a con igu a el componen e"
4. P oba su uncionamien o"
A la ho a de busca imágenes exis en es, se in en a án que odos se basen en la
misma imagen, que suele se Debian S e ch, en la echa de esc i u a de la
memo ia."
El p ime componen e que se con e i á es el se ido nginx. En la ienda de Docke ,
se encuen a la imagen o icial de nginx[34] y con una e sión en Debian. Es a imagen
iene con una con igu ación po de ec o del se ido , según se puede lee en la
misma página [34]."
Pa a nues o caso, enemos que añadi le algún que o o a chi o de con igu ación
pa a pode pe sonaliza los a chi os de e o (e o es como es os códigos de es ado
HTTP: 404, 401, 500…)[35]. El se ido ac ual iene sopo e pa a PHP median e la
e sión php- pm que usa el p o ocolo Fas CGI, po lo que hay que añadi lo ambién
a la imagen. Po lo que, se necesi a án dos a chi os de con igu ación: uno que
con enga la con igu ación pa a que nginx se pueda conec a con php- pm ( as cgi-
php.con ), o o con la con igu ación po de ec o de nginx con los añadidos
(de aul .con )."
El a chi o que gene a la imagen se queda ía de la siguien e o ma:"
Desc ibiendo lo que hace el a chi o, la p ime a linea indica cuál es la base de es a
nue a imagen, que es nginx. Nó ese que al inal es á :la es , que indica qué e ique a
( e sión) de la imagen se a a usa . Los dos siguien es son los que copian los
a chi os de con igu ación al in e io de la imagen. El úl imo indica que en el pue o
80 ( cp) nginx a a es a escuchando pa a pe iciones."
Es os a chi os se pueden encon a adjun o, den o de la ca pe a de web-nginx en
eposi o ios."
73
he amien a docke -compose y como usa lo en un despliegue en local y en uno en
la esidencia."
docke -compose es una he amien a de Docke que pe mi e de ini componen es y
sus necesidades, y elaciona odos en e ellos, usando un simple a chi o de
de inición. Con sencillos comandos, puedes ejecu a a ios con enedo es, y
ac ualiza los cuando haya cambios de con igu ación o una nue a imagen. Es una
o ma sencilla de pode ejecu a di e sos con enedo es y ag upa los."
Pa a es e abajo, se usa á dicha he amien a pa a hace los despliegues an o de
p uebas como el en o no eal."
Pa a pe mi i dis ingui en e di e sos en o nos donde se hace el despliegue,
docke -compose nos pe mi e usa a iables de en o no pa a da alo a pa es del
a chi o de de inición, con lo que pa a cie os alo es de los componen es que
dependen de donde se despliegue se de ini án con esas a iables. De es a o ma,
no hay que modi ica los a chi os docke -compose.yaml (los de despliegue) pa a
adap a los a cada en o no. Se usa á un a chi o plan illa, como el de la imagen
an e io , que con enga odas las a iables de en o no sin ellena pa a su copia y
uso en cada en o no."
80
æ ik
Bases
de
da os
Web
As e isk
Se icios pa a
la pue a de
enlace
æ ik
Ma iaDB"
Redis"
pos g eSQL
Nginx"
php- pm"
Wo dp ess"
Saml"
Backend
As e isk
Speedy"
Componen e backend
G á icos de dependencias en e g upos de se icios (a iba) y los se icios den o
de cada g upo (abajo)

Pa a el despliegue, se di idi án 5 g upos los dis in os componen es de la siguien e
o ma:"
•Bases de da os:"
•Ma iaDB"
•Redis"
•pos g eSQL"
•T æ ik"
•Web
•nginx (pa a a chi os es á icos y el on end de la aplicación web)"
•php- pm (pa a ejecu a sc ip s en PHP en nginx)"
•wo dp ess (apache + PHP pa a usa lo en Wo dp ess)"
•saml (modulo de au en icación SAML con la Uni e sidad)"
•Backend aplicación web"
•as e isk
•Se icios pa a la pue a de enlace
•speedy (medido de ancho de banda po disposi i o)"
•Componen e ex e no del backend de la aplicación web"
Cada g upo de se icios co esponde un un iche o docke -compose.yaml pa a el
despliegue de los mismos."
"
‣T æ ik"
El a chi o de despliegue pa a æ ik
es cie amen e sencillo, pe o c ea la
base pa a que los componen es
que quie an publica un se icio a
a és del p oxy in e so, puedan
hace lo."
Hablamos de una ed in e na en e
con enedo es que conec a dichos
se icios con æ ik. De es a o ma,
dichos se icios solo son
accesibles di ec amen e (sin ene que pasa po æ ik) desde los con enedo es
conec ados a dicha ed (llamada ae ik_ne )."
81
El con enedo iene un a chi o de con igu ación (mon ado como olumen) que e
pe mi e p epa a lo que la aplicación denomina “en y poin s” y el au o-
descub imien o de los se icios. Con en y poin s nos e e imos a qué pue os a a
escucha el p oxy in e so pa a o ece sus se icios. En es e caso, usa emos el
es ánda pue o 80/ cp pa a HTTP, 443/ cp pa a HTTPS y el pue o al e na i o 8080/
cp pa a el panel de mé icas de æ ik (de inido en la sección po s en la cap u a de
código). En cambio, el au o-descub imien o pe mi e econ igu a el p oxy in e so
cuando apa ece un nue o con enedo con la con igu ación co ec a y
descon igu a lo cuando se pa a."
Pa a su uso en Docke , hay que e ique a los con enedo es (en web se explica á
cuáles son) con cie a con igu ación que incluye la egla que debe aplica se a una
pe ición pa a edi igi a ese se icio, la ed in e na (si el con enedo iene más de
una) y una pa a ac i a dicho con enedo pa a que el p oxy in e so edi ija las
pe iciones - en la con igu ación es á pues a pa a que no haga eso po de ec o, y
pe mi e il a con enedo es con se icios web de los que no. Y pa a que odo es o
uncione, necesi amos pasa el socke de Docke al con enedo de æ ik, de ahí
que en la sección de olúmenes se mon e el socke ."
‣Bases de da os"
Pa a el g upo de con enedo es de las base de da os, se i á explicando po cada
base de da os, y mos ando la pa e co espondien e del a chi o docke -
compose.yaml pa a educi las medidas de la imagen."
La base de da os Ma iaDB se despliega con la con igu ación de la imagen supe io . "
Pa a empeza , la base de da os se inicia con unos a gumen os (colocados en
commands) pa a que use UTF8 como codi icación de ex o po de ec o, en
82
conc e o la codi icación u 8mb4, que iene sopo e comple o de la codi icación, a
di e encia de o os modos que en MySQL (y Ma iaDB) no sopo an odo el es ánda ."
Pa a pe sis i los da os de la base de da os, usamos un olumen, en conc e o lo
que se denomina bind moun ya que enlaza algo exis en e den o del con enedo . La
u a de los da os se encuen a den o de una a iable de en o no que se puede
encon a en el a chi o comen ado an e io men e."
También se mon a la ca pe a sql que se encuen a en el mismo luga del a chi o de
despliegue. Los iche os SQL de esa ca pe a se ejecu a án en el se ido cuando se
es én c eando los a chi os de la base de da os (cuando es la p ime a ejecución po
ejemplo). Pe mi e da un alo inicial a la base de da os."
Po úl imo, el usua io po de ec o es oo y la con aseña se de ine den o de o a
a iable de en o no."
La siguien e base de da os es la de pos g eSQL con la ex ensión de imescaleDB."
La con igu ación es pa ecida a la de Ma iaDB: una u a donde pe sis i los da os,
una ca pe a pa a que al c ea las es uc u as de almacenamien o de la BD se
ejecu en di e sos SQL y la con aseña del usua io po de ec o. En es e caso, el
usua io po de ec o es pos g es."
Po úl imo enemos edis. Al se una base
de da os an sencilla, no hace al a
con aseña. El olumen mon ado es de
uso empo al ya que edis po de ec o no
pe sis e el con enido de la base de da os.
83
Si hicie a al a, en [40] e explican como ac i a lo."
La ed que c ea es e a chi o de despliegue, pa a su uso ue a de él, es
da abases_ne . Se usa á pa a conec a o os con enedo es a la ed de bases de
da os, al y como e emos aho a en los p óximos pá a os."
‣Se icios web"
Aho a desc ibi emos la con igu ación de despliegue de la pa e de la web. Al igual
que en la an e io pa e, se i á di idiendo en pa es po cada uno de los
con enedo es."
El se ido nginx, pa a a chi os es á icos, se de ine al y como apa ece en la imagen
supe io ."
Lo p ime o son los olúmenes. El p ime o es la u a, ue a del con enedo , donde se
encon a án los a chi os es á icos que se se i án en nginx, cuyo alo se de ine
median e una a iable de en o no. El segundo olumen es pa a una cache que iene
con igu ado nginx. En es e caso usamos un olumen que ges iona en e amen e
Docke ya que no es necesa io accede a esos da os ni hace copias de segu idad.
El nomb e ncache es el nomb e que iene el olumen."
84
En la sección de edes (ne wo ks) de inimos a qué edes iene acceso el con enedo ,
que en es e caso es la ed que conec a con æ ik y una ed in e na de es e
despliegue. El úl imo si e pa a conec a se con php- pm."
La sección depends_on de ine que es e con enedo debe ejecu a se después de lo
que haya den o (en es e caso, php- pm)."
La sección labels de ine las e ique as del con enedo (siemp e que no se despliegue
en Docke Swa m o Kube ne es). Aquí de inimos la con igu ación que usa á æ ik
pa a con igu a lo que ellos denominan el backend y el on end. El on end es la
con igu ación que pe mi e de ini un se icio y el backend son los se ido es
disponibles que si en ese con enido o se icio. De es a o ma, puede habe más de
un se ido pa a el mismo se icio que pe mi e hace dis ibución de ca ga y es a
mejo p o egido an e allos. En lo que se puede obse a de la imagen, la p ime a
e ique a dice a æ ik que ese con enedo se puede usa pa a con igu a un nue o
backend y/o on end. La segunda le da un nomb e al backend (pa a pode lo
iden i ica ). La e ce a es la egla que pe mi i á iden i ica qué pe iciones an
di ec os a es e se icio. Hos :${DOMAIN} indica que odas las pe iciones cuyo hos
(el dominio al que se accede) sea el de la a iable de en o no DOMAIN en onces i á
a ese se icio. El o den de aplicación de eglas, po de ec o, es del más la go al más
pequeño, y es e al se una egla pequeña se comp oba á en las ul imas posiciones
(meno p io idad). La úl ima e ique a si e pa a deci cuál ed es la que se conec a
con æ ik, pa a pode acaba de con igu a el backend."
Pa a php- pm, no se equie e de
mucha con igu ación pa a hace lo
unciona ."
Mon amos la misma u a de
a chi os que en nginx, po si se
desea ejecu a sc ip s en PHP, de
es a o ma coinciden las u as
en e nginx y php."
Las edes que se conec a son la ed in e na (pa a conec a se con nginx) y el de
base de da os, po si se desea conec a con alguna de las bases de da os."
85

Pa a wo dp ess, usamos la siguien e con igu ación."
P ime o, se mon a la ca pe a donde se encuen en los a chi os de Wo dP ess.
Nó ese que la u a den o del con enedo acaba en no icias- a j. La u a es á mal
esc i a ( a j en luga de aj que iene de Residencia Albe o Jiménez F aud) ya que
cuando se con igu ó inicialmen e, ni a An onio ni a mi nos dimos cuen a del allo y
aho a cambia la u a de un Wo dP ess uncionando es muy complicado."
Las edes a las que se conec a son la de las base de da os, pa a conec a se con
Ma iaDB, y la de æ ik, pa a pode se publica ."
Sob e las e ique as, muchas ya se conocen, aunque se an a explica los mas
di e en es. P ime o, la egla es más la ga y con iene aho a un Pa hP e ix. En e
ambos, se sepa a median e un pun o y coma (;) que signi ica Y. Po an o, es a egla
al comple o es “ odas las pe iciones al dominio ${DOMAIN} y cuya u a empiecen
po /no icias- a j”."
Las es siguien es e ique as, después de la egla, son pa a con igu a unos a chi os
de e o . Así, cuando sal a un e o 404 (no encon ado), un e o 500 (e o in e no) o
502 (cuando el con enedo es á pa ado - no apa ece en la cap u a) se se i á lo que
esul e de hace la pe ición al nginx en la u a /e o es/404.h ml, /e o es/500.h ml y /
e o es/502.h ml espec i amen e."
Aho a es el u no del módulo de au en icación SAML."
86
En es e con enedo , el olumen es pa a el ce i icado necesa io pa a el co ec o
uncionamien o de la au en icación SAML. Se gene an con un simple comando en la
he amien a po e minal de OpenSSL, po ejemplo, y con eso ya se ía su icien e. El
ce i icado debe llama se ce .pem, y la cla e p i ada, key.key."
Las edes uel en a se la de base de da os y la de æ ik. Como la au en icación
usa edis pa a almacena empo almen e unos da os, debe pode se conec a a él."
Po úl imo, las e ique as odas son conocidas, aunque se comen a á la e ique a de
la egla. En es e caso la pa e de Pa hP e ix iene dos alo es sepa ados po una
coma (,) que iene a deci O. Es a egla signi ica “las pe iciones al dominio $
{DOMAIN} que engan como p e ijo de u a /mellon o /albe ginia”."
87
El backend de la aplicación web (que podéis e más de alles en «Desa ollo del
backend de la apliación "Panel del esiden e”» en el abajo de An onio Ángel)
necesi a conec a se a odas las base de da os desplegadas (pos g eSQL, Ma iaDB
y edis), po lo que se le ha asociado a la ed de base de da os. Además, como se
debe publica la API den o de la web, se iene que añadi las e ique as
co espondien es (labels) pa a que æ ik lo de ec e y con igu e un camino pa a
pode publica dicha API."
Po comple i ud, comen a é ambién la pa e inal del
a chi o docke - ile.yaml.
En él podemos e como se de inen las dis in as edes,
donde la de æ ik y la de las bases de da os se ma can
como ex e nas ya que no los maneja es e a a és de
es e g upo."
Los olumenes que maneja Docke se ienen que de ini
ambién en el a chi o."
‣As e isk"
La cen ali a de ele onía po IP (VoIP) as e isk se desplega á como su p opio g upo
de se icios. Un equisi o indispensable pa a el uncionamien o co ec o de as e isk
es que debe usa el modo de ed hos (opción ne wo k_mode), en el que ealmen e
es deshabi a el aislamien o de edes y el con enedo iene acceso a las edes del
88
se ido di ec amen e. El con enedo ejecu a po de ec o una shell de comandos,
po lo que pa a ejecu a as e isk enemos que deci le exac amen e que debe
ejecu a . Eso se consigue en la opción cmd. El alo es una lis a de a gumen os que
el con enedo in e p e a á y ejecu a á. Con la opción “- ” de as e isk conseguimos
que uncione sin que el con enedo se de enga, ya que el se ido se ejecu a en lo
que se conoce como “ o eg ound” (el p oceso que ejecu as es el se ido , en luga
de c ea o o p oceso que se ejecu a á de ondo que ealiza á esa a ea). En caso de
no pone lo, as e isk c ea un segundo p oceso donde ejecu a á el se ido de ondo,
y el que se ha c eado po mo i o de ejecu a el comando se cie a. Al ce a ese
p oceso, que en Docke es el p incipal, el con enedo se pa a ya que solo iene en
cuen a dicho p oceso como comp obación del es ado, e igno a p ocesos
secunda ios. Po úl imo, queda con igu ación pa a que la cen ali a se pueda
conec a con la base de da os Ma iaDB, necesa ia pa a almacena cie a
in o mación."
Más de alles sob e la con igu ación de la cen ali a la podéis encon a en
«Con igu ación de as e isk» del abajo de An onio Ángel."
‣Se icios en la pue a de enlace"
Pa a e mina , habla emos de los con enedo es que se desplega án en el se ido /
pue a de enlace, que es dis in o al es o de con enedo es. En es e, como se
comen ó, iene el medido de á ico po disposi i o (speedy) y, como se puede
obse a en la imagen, ambién iene un ozo del backend de la aplicación web."
89
[49] h ps://code. isuals udio.com/ - IDE de Mic oso gené ico, al que se le pueden
inse a complemen os pa a desa ollo web"
[50] h ps://sass-lang.com - CSS wi h supe powe s
[51] h ps://unix.s ackexchange.com/a/198591 - Wha is bind moun ? ( espues a en
Unix & Linux S ack Exchange)"
[52] h p://man7.o g/linux/man-pages/man8/moun .8.h ml - Manual de moun en
Linux, incluye sección pa a bind moun s llamada “Bind moun ope a ion”"
[53] h ps://bind s.o g - Implemen ación de bind moun pa a sis emas o os
ope a i os median e FUSE (ú il pa a macOS o F eeBSD)"
[54] h ps://gi -scm.com/docs/gi submodules - Desc ipción y documen ación de los
submódulos en el sis ema de con ol de e siones gi
[55] h ps://gi hub.com/OAI/OpenAPI-Speci ica ion/blob/mas e / e sions/2.0.md -
Especi icación de OpenAPI 2.0/swagge "
[56] h p://ge boo s ap.com/docs/4.1/componen s/bu ons/"
[57] h p://ge boo s ap.com/docs/4.1/componen s/modal/"
[58] h p://ge boo s ap.com/docs/4.1/componen s/collapse/
[59] h ps://help.ubn .com/hc/en-us/a icles/115002806907-UniFi-High-Densi y-
WLAN-Scena io-Guide (6 de agos o 2018)
[60] Mell, P., & G ance, T. (2011). The NIST de ini ion o cloud compu ing."
96