diff --git a/docs/udelartex/capitulos/gestion.tex b/docs/udelartex/capitulos/gestion.tex index 46a7823d7c9964fca7bf13bcb9689fe12e78fce0..0fc7bfa54f52767098b2253092d06534faaa9c65 100644 --- a/docs/udelartex/capitulos/gestion.tex +++ b/docs/udelartex/capitulos/gestion.tex @@ -197,7 +197,6 @@ $ openstack-ansible remove_compute_node.yml -e host_to_be_removed="<name-of-comp \subsection{Infraestructura} -\subsection{Storage} \section{Actualizar versión} diff --git a/docs/udelartex/capitulos/red.tex b/docs/udelartex/capitulos/red.tex index 108885553159faa750ff847c2e7acb9a15100242..e4ad5fd3132dea2edda6b2d4601e5c042a704e31 100644 --- a/docs/udelartex/capitulos/red.tex +++ b/docs/udelartex/capitulos/red.tex @@ -1992,7 +1992,7 @@ Bridge br-provider \end{itemize} \subsubsection{Análisis de tráfico} -El objetivo de este escenario es analizar el tráfico generado en la comunicación entre la instancia 1 y un host externo al manejo de Openstack. En este caso se considera al router de la infraestructura física como host externo debido a que si la instancia logra comunicarse con el mismo, entonces tendrá acceso a cualquier host que este alcance. +El objetivo de este escenario es analizar el tráfico generado en la comunicación entre la instancia 1 y un host externo al manejo de OpenStack. En este caso se considera al router de la infraestructura física como host externo debido a que si la instancia logra comunicarse con el mismo, entonces tendrá acceso a cualquier host que este alcance. \subparagraph{Paso 1} La instancia 1 envía el paquete ICMP echo request hacia el router físico. Para esto determina que se encuentran en subredes diferentes y por lo tanto busca el siguiente salto en la tabla de ruteo @@ -2146,7 +2146,7 @@ Los componentes virtuales requeridos para instanciar el escenario 4 son exactame En la salida de este comando se observa que la interfaz \path{qg-3f5f5f87-bb} dedicada para la red provider, tiene asignadas la IP del router (10.0.100.136) y la flotante de la instancia (10.0.100.71) necesaria para implementar el NAT estático uno a uno con la IP fija de la instancia en la red tenant (192.168.1.101). \subsubsection{Análisis de tráfico} -El objetivo de este escenario es analizar el tráfico generado en la comunicación desde un host externo al manejo de Openstack hacia la instancia 1. En este caso se considera al router de la infraestructura física como host externo debido a que si este logra comunicarse con la instancia, entonces también podrá hacerlo cualquier host externo que alcance al router. +El objetivo de este escenario es analizar el tráfico generado en la comunicación desde un host externo al manejo de OpenStack hacia la instancia 1. En este caso se considera al router de la infraestructura física como host externo debido a que si este logra comunicarse con la instancia, entonces también podrá hacerlo cualquier host externo que alcance al router. \subparagraph{Paso 1} El router físico envía el paquete ICMP echo request hacia la instancia 1 utilizando la IP flotante, es decir que el destino será el router Z. Para esto determina que se encuentra directamente conectado con el host destino y por lo tanto no necesita ningún salto intermedio. Con el siguiente comando se observa la tabla de ruteo de dicho router: @@ -2242,4 +2242,27 @@ El procedimiento para la respuesta ICMP echo reply es similar al descrito pero e \section{Funcionalidades avanzadas} -\subsection{Layer 3 High Availability} \ No newline at end of file +\subsection{Layer 3 High Availability} +En una instalación de Neutron sin algún mecanismo de alta disponibilidad será vulnerable a posibles fallos que surjan en los nodos físicos del Datacenter. Los ambientes productivos de OpenStack contienen varios nodos físicos dedicados a las funciones de red. Esto no es suficiente para proporcionar alta disponibilidad de la conectividad de las instancias debido a que al crear un nuevo router virtual, los mismos se planifican para correr en un agente L3 físico. Por lo tanto el funcionamiento de dicho router depende exclusivamente de un nodo físico el cual al presentar algún problema provocará que las instancias pierdan conectividad con redes externas y las IPs flotantes tampoco estarán disponibles. + +Para solucionar este problema se utiliza una configuración de alta disponibilidad basada en router con dos estados: pasivo o activo. Se utiliza el estándar VRRP (Virtual Routing Redundancy Protocol) definido en el RFC 3768. En una explicación a alta nivel lo que se realiza es planificar la creación de un router virtual en múltiples nodos de red de OpenStack, en donde únicamente se designa uno de estos routers como activo, mientras que el resto queda en un estado de espera o pasivo. + +Un ejemplo de esto se puede ver en las siguientes imágenes: + +\begin{figure}[h!] + \centering + \includegraphics[width=0.9\columnwidth]{red/vrrp1} + \caption{Routers virtuales instanciados en múltiples agentes físicos funcionales} + \label{fig:red:vrrp1} +\end{figure} + +En la imagen \ref{fig:red:vrrp1} se puede apreciar como los routers 1 y 2 tiene su par de backup en el otro nodo físico. + +\begin{figure}[h!] + \centering + \includegraphics[width=0.9\columnwidth]{red/vrrp2} + \caption{Routers virtuales instanciados en múltiples agentes físicos luego de un fallo en uno de ellos} + \label{fig:red:vrrp2} +\end{figure} + +En la segunda imagen se puede ver como el L3 HA replanifica el/los dispositivos afectados, en este caso el Router1, a un nodo operativo en donde existe una copia en estado de espera del router afectado. diff --git a/docs/udelartex/imagenes/red/vrrp1.png b/docs/udelartex/imagenes/red/vrrp1.png new file mode 100644 index 0000000000000000000000000000000000000000..9d1b7a3a6c612a50b281984ed84684b12d801c62 Binary files /dev/null and b/docs/udelartex/imagenes/red/vrrp1.png differ diff --git a/docs/udelartex/imagenes/red/vrrp2.png b/docs/udelartex/imagenes/red/vrrp2.png new file mode 100644 index 0000000000000000000000000000000000000000..b81a13087aafcc1e3a93469f409099f5678f312d Binary files /dev/null and b/docs/udelartex/imagenes/red/vrrp2.png differ diff --git a/docs/udelartex/tesis.lof b/docs/udelartex/tesis.lof index 8ebfa06d543b7cddbc89635a6057a2653a6eafd4..0763f3c60cbba4104bcf7866aac6d2d05dded77d 100644 --- a/docs/udelartex/tesis.lof +++ b/docs/udelartex/tesis.lof @@ -69,42 +69,44 @@ \contentsline {figure}{\numberline {8.35}{\ignorespaces Paquete ICMP echo request taggeado con el VLAN ID 100 capturado en la interfaz eth3 del router físico\relax }}{144}{figure.caption.172}% \contentsline {figure}{\numberline {8.36}{\ignorespaces Paquete ICMP echo request capturado en la interfaz qg del router de Neutron\relax }}{144}{figure.caption.173}% \contentsline {figure}{\numberline {8.37}{\ignorespaces Paquete ICMP echo request capturado en la interfaz qr del router de Neutron\relax }}{145}{figure.caption.176}% -\addvspace {10\p@ } -\addvspace {10\p@ } -\addvspace {10\p@ } -\contentsline {figure}{\numberline {1.1}{\ignorespaces Arquitectura diseñada para desarrollo\relax }}{158}{figure.caption.180}% -\contentsline {figure}{\numberline {1.2}{\ignorespaces Arquitectura diseñada para producción\relax }}{159}{figure.caption.181}% -\addvspace {10\p@ } -\addvspace {10\p@ } -\addvspace {10\p@ } -\contentsline {figure}{\numberline {3.1}{\ignorespaces Nueva conexión en virt-manager.\relax }}{201}{figure.caption.184}% -\contentsline {figure}{\numberline {3.2}{\ignorespaces Configuración de redes virtuales en virt-manager.\relax }}{202}{figure.caption.185}% -\addvspace {10\p@ } -\contentsline {figure}{\numberline {4.1}{\ignorespaces Vista del login de Horizon.\relax }}{209}{figure.caption.199}% -\contentsline {figure}{\numberline {4.2}{\ignorespaces Creación de un proyecto (1/2).\relax }}{210}{figure.caption.201}% -\contentsline {figure}{\numberline {4.3}{\ignorespaces Creación de un proyecto (2/2).\relax }}{211}{figure.caption.202}% -\contentsline {figure}{\numberline {4.4}{\ignorespaces Creación de un usuario.\relax }}{212}{figure.caption.204}% -\contentsline {figure}{\numberline {4.5}{\ignorespaces Creación de un flavor (1/2).\relax }}{213}{figure.caption.206}% -\contentsline {figure}{\numberline {4.6}{\ignorespaces Creación de un flavor (2/2).\relax }}{213}{figure.caption.207}% -\contentsline {figure}{\numberline {4.7}{\ignorespaces Creación de una red provider (1/2).\relax }}{214}{figure.caption.209}% -\contentsline {figure}{\numberline {4.8}{\ignorespaces Creación de una red provider (2/2).\relax }}{215}{figure.caption.210}% -\contentsline {figure}{\numberline {4.9}{\ignorespaces Creación de una imagen (1/2).\relax }}{216}{figure.caption.212}% -\contentsline {figure}{\numberline {4.10}{\ignorespaces Creación de una imagen (2/2).\relax }}{217}{figure.caption.213}% -\contentsline {figure}{\numberline {4.11}{\ignorespaces Creación de una red (1/3).\relax }}{218}{figure.caption.215}% -\contentsline {figure}{\numberline {4.12}{\ignorespaces Creación de una red (2/3).\relax }}{218}{figure.caption.216}% -\contentsline {figure}{\numberline {4.13}{\ignorespaces Creación de una red (3/3).\relax }}{219}{figure.caption.217}% -\contentsline {figure}{\numberline {4.14}{\ignorespaces Creación de un router.\relax }}{219}{figure.caption.219}% -\contentsline {figure}{\numberline {4.15}{\ignorespaces Creación de una interfaz en un router.\relax }}{220}{figure.caption.221}% -\contentsline {figure}{\numberline {4.16}{\ignorespaces Creación de una key pair.\relax }}{220}{figure.caption.223}% -\contentsline {figure}{\numberline {4.17}{\ignorespaces Lanzar una nueva instancia (1/5).\relax }}{221}{figure.caption.225}% -\contentsline {figure}{\numberline {4.18}{\ignorespaces Lanzar una nueva instancia (2/5).\relax }}{221}{figure.caption.226}% -\contentsline {figure}{\numberline {4.19}{\ignorespaces Lanzar una nueva instancia (3/5).\relax }}{222}{figure.caption.227}% -\contentsline {figure}{\numberline {4.20}{\ignorespaces Lanzar una nueva instancia (4/5).\relax }}{222}{figure.caption.228}% -\contentsline {figure}{\numberline {4.21}{\ignorespaces Lanzar una nueva instancia (5/5).\relax }}{223}{figure.caption.229}% -\contentsline {figure}{\numberline {4.22}{\ignorespaces Asignación de floating IP.\relax }}{224}{figure.caption.230}% -\contentsline {figure}{\numberline {4.23}{\ignorespaces Asociación de floating IP.\relax }}{225}{figure.caption.231}% -\contentsline {figure}{\numberline {4.24}{\ignorespaces Reglas security group por defecto.\relax }}{225}{figure.caption.232}% -\contentsline {figure}{\numberline {4.25}{\ignorespaces Agregar regla para tráfico ICMP.\relax }}{226}{figure.caption.233}% -\contentsline {figure}{\numberline {4.26}{\ignorespaces Agregar regla para tráfico SSH.\relax }}{226}{figure.caption.234}% +\contentsline {figure}{\numberline {8.38}{\ignorespaces Routers virtuales instanciados en múltiples agentes físicos funcionales\relax }}{146}{figure.caption.178}% +\contentsline {figure}{\numberline {8.39}{\ignorespaces Routers virtuales instanciados en múltiples agentes físicos luego de un fallo en uno de ellos\relax }}{147}{figure.caption.179}% +\addvspace {10\p@ } +\addvspace {10\p@ } +\addvspace {10\p@ } +\contentsline {figure}{\numberline {1.1}{\ignorespaces Arquitectura diseñada para desarrollo\relax }}{160}{figure.caption.182}% +\contentsline {figure}{\numberline {1.2}{\ignorespaces Arquitectura diseñada para producción\relax }}{161}{figure.caption.183}% +\addvspace {10\p@ } +\addvspace {10\p@ } +\addvspace {10\p@ } +\contentsline {figure}{\numberline {3.1}{\ignorespaces Nueva conexión en virt-manager.\relax }}{203}{figure.caption.186}% +\contentsline {figure}{\numberline {3.2}{\ignorespaces Configuración de redes virtuales en virt-manager.\relax }}{204}{figure.caption.187}% +\addvspace {10\p@ } +\contentsline {figure}{\numberline {4.1}{\ignorespaces Vista del login de Horizon.\relax }}{211}{figure.caption.201}% +\contentsline {figure}{\numberline {4.2}{\ignorespaces Creación de un proyecto (1/2).\relax }}{212}{figure.caption.203}% +\contentsline {figure}{\numberline {4.3}{\ignorespaces Creación de un proyecto (2/2).\relax }}{213}{figure.caption.204}% +\contentsline {figure}{\numberline {4.4}{\ignorespaces Creación de un usuario.\relax }}{214}{figure.caption.206}% +\contentsline {figure}{\numberline {4.5}{\ignorespaces Creación de un flavor (1/2).\relax }}{215}{figure.caption.208}% +\contentsline {figure}{\numberline {4.6}{\ignorespaces Creación de un flavor (2/2).\relax }}{215}{figure.caption.209}% +\contentsline {figure}{\numberline {4.7}{\ignorespaces Creación de una red provider (1/2).\relax }}{216}{figure.caption.211}% +\contentsline {figure}{\numberline {4.8}{\ignorespaces Creación de una red provider (2/2).\relax }}{217}{figure.caption.212}% +\contentsline {figure}{\numberline {4.9}{\ignorespaces Creación de una imagen (1/2).\relax }}{218}{figure.caption.214}% +\contentsline {figure}{\numberline {4.10}{\ignorespaces Creación de una imagen (2/2).\relax }}{219}{figure.caption.215}% +\contentsline {figure}{\numberline {4.11}{\ignorespaces Creación de una red (1/3).\relax }}{220}{figure.caption.217}% +\contentsline {figure}{\numberline {4.12}{\ignorespaces Creación de una red (2/3).\relax }}{220}{figure.caption.218}% +\contentsline {figure}{\numberline {4.13}{\ignorespaces Creación de una red (3/3).\relax }}{221}{figure.caption.219}% +\contentsline {figure}{\numberline {4.14}{\ignorespaces Creación de un router.\relax }}{221}{figure.caption.221}% +\contentsline {figure}{\numberline {4.15}{\ignorespaces Creación de una interfaz en un router.\relax }}{222}{figure.caption.223}% +\contentsline {figure}{\numberline {4.16}{\ignorespaces Creación de una key pair.\relax }}{222}{figure.caption.225}% +\contentsline {figure}{\numberline {4.17}{\ignorespaces Lanzar una nueva instancia (1/5).\relax }}{223}{figure.caption.227}% +\contentsline {figure}{\numberline {4.18}{\ignorespaces Lanzar una nueva instancia (2/5).\relax }}{223}{figure.caption.228}% +\contentsline {figure}{\numberline {4.19}{\ignorespaces Lanzar una nueva instancia (3/5).\relax }}{224}{figure.caption.229}% +\contentsline {figure}{\numberline {4.20}{\ignorespaces Lanzar una nueva instancia (4/5).\relax }}{224}{figure.caption.230}% +\contentsline {figure}{\numberline {4.21}{\ignorespaces Lanzar una nueva instancia (5/5).\relax }}{225}{figure.caption.231}% +\contentsline {figure}{\numberline {4.22}{\ignorespaces Asignación de floating IP.\relax }}{226}{figure.caption.232}% +\contentsline {figure}{\numberline {4.23}{\ignorespaces Asociación de floating IP.\relax }}{227}{figure.caption.233}% +\contentsline {figure}{\numberline {4.24}{\ignorespaces Reglas security group por defecto.\relax }}{227}{figure.caption.234}% +\contentsline {figure}{\numberline {4.25}{\ignorespaces Agregar regla para tráfico ICMP.\relax }}{228}{figure.caption.235}% +\contentsline {figure}{\numberline {4.26}{\ignorespaces Agregar regla para tráfico SSH.\relax }}{228}{figure.caption.236}% \addvspace {10\p@ } \contentsfinish diff --git a/docs/udelartex/tesis.out b/docs/udelartex/tesis.out index 718bf09201e03f26877fb442968406c03e1f2175..30d743cfef8d7cd287fe87aff8e44e7686800bd1 100644 --- a/docs/udelartex/tesis.out +++ b/docs/udelartex/tesis.out @@ -60,56 +60,55 @@ \BOOKMARK [2][-]{subsection.7.2.1}{Agregar nodo de C\363mputo}{section.7.2}% 60 \BOOKMARK [2][-]{subsection.7.2.2}{Eliminar un nodo de c\363mputo}{section.7.2}% 61 \BOOKMARK [2][-]{subsection.7.2.3}{Infraestructura}{section.7.2}% 62 -\BOOKMARK [2][-]{subsection.7.2.4}{Storage}{section.7.2}% 63 -\BOOKMARK [1][-]{section.7.3}{Actualizar versi\363n}{chapter.7}% 64 -\BOOKMARK [0][-]{chapter.8}{An\341lisis del m\363dulo de red}{}% 65 -\BOOKMARK [1][-]{section.8.1}{Escenarios de prueba}{chapter.8}% 66 -\BOOKMARK [2][-]{subsection.8.1.1}{Escenario 1: tr\341fico este-oeste \(misma red tenant\)}{section.8.1}% 67 -\BOOKMARK [2][-]{subsection.8.1.2}{Escenario 2: tr\341fico este-oeste \(distintas redes tenant\)}{section.8.1}% 68 -\BOOKMARK [2][-]{subsection.8.1.3}{Escenario 3: tr\341fico norte-sur \(acceso hacia el exterior\)}{section.8.1}% 69 -\BOOKMARK [2][-]{subsection.8.1.4}{Escenario 4: tr\341fico norte-sur \(acceso desde el exterior\)}{section.8.1}% 70 -\BOOKMARK [1][-]{section.8.2}{Linux bridge}{chapter.8}% 71 -\BOOKMARK [2][-]{subsection.8.2.1}{Escenario 1}{section.8.2}% 72 -\BOOKMARK [2][-]{subsection.8.2.2}{Escenario 2}{section.8.2}% 73 -\BOOKMARK [2][-]{subsection.8.2.3}{Escenario 3}{section.8.2}% 74 -\BOOKMARK [2][-]{subsection.8.2.4}{Escenario 4}{section.8.2}% 75 -\BOOKMARK [1][-]{section.8.3}{Open vSwitch}{chapter.8}% 76 -\BOOKMARK [2][-]{subsection.8.3.1}{Escenario 1}{section.8.3}% 77 -\BOOKMARK [2][-]{subsection.8.3.2}{Escenario 2}{section.8.3}% 78 -\BOOKMARK [2][-]{subsection.8.3.3}{Escenario 3}{section.8.3}% 79 -\BOOKMARK [2][-]{subsection.8.3.4}{Escenario 4}{section.8.3}% 80 -\BOOKMARK [1][-]{section.8.4}{Comparativa de drivers}{chapter.8}% 81 -\BOOKMARK [1][-]{section.8.5}{Funcionalidades avanzadas}{chapter.8}% 82 -\BOOKMARK [2][-]{subsection.8.5.1}{Layer 3 High Availability}{section.8.5}% 83 -\BOOKMARK [0][-]{chapter.9}{Trabajo a futuro}{}% 84 -\BOOKMARK [0][-]{chapter.10}{Conclusiones}{}% 85 -\BOOKMARK [0][-]{chapter*.178}{Referencias bibliogr\341ficas}{}% 86 -\BOOKMARK [0][-]{chapter*.178}{Glosario}{}% 87 -\BOOKMARK [0][-]{section*.179}{Ap\351ndices}{}% 88 -\BOOKMARK [0][-]{appendix.Alph1}{Im\341genes}{}% 89 -\BOOKMARK [0][-]{section*.182}{Anexos}{}% 90 -\BOOKMARK [0][-]{appendix.Anexo.1}{Instalaci\363n versi\363n Queens}{}% 91 -\BOOKMARK [1][-]{section.Anexo.1.1}{Preparaci\363n de nodos}{appendix.Anexo.1}% 92 -\BOOKMARK [1][-]{section.Anexo.1.2}{Configuraci\363n}{appendix.Anexo.1}% 93 -\BOOKMARK [2][-]{subsection.Anexo.1.2.1}{Configuraci\363n claves SSH}{section.Anexo.1.2}% 94 -\BOOKMARK [2][-]{subsection.Anexo.1.2.2}{Archivos de configuraci\363n OSA}{section.Anexo.1.2}% 95 -\BOOKMARK [2][-]{subsection.Anexo.1.2.3}{Generaci\363n de claves}{section.Anexo.1.2}% 96 -\BOOKMARK [2][-]{subsection.Anexo.1.2.4}{Correcciones}{section.Anexo.1.2}% 97 -\BOOKMARK [0][-]{appendix.Anexo.2}{Instalaci\363n versi\363n Stein}{}% 98 -\BOOKMARK [1][-]{section.Anexo.2.1}{Preparaci\363n de nodos}{appendix.Anexo.2}% 99 -\BOOKMARK [1][-]{section.Anexo.2.2}{Configuraci\363n archivos OSA}{appendix.Anexo.2}% 100 -\BOOKMARK [1][-]{section.Anexo.2.3}{Ejecuci\363n de playbooks}{appendix.Anexo.2}% 101 -\BOOKMARK [1][-]{section.Anexo.2.4}{Cambios para driver OVS}{appendix.Anexo.2}% 102 -\BOOKMARK [0][-]{appendix.Anexo.3}{Virtualizaci\363n con KVM}{}% 103 -\BOOKMARK [1][-]{section.Anexo.3.1}{Utilizaci\363n virt-manager}{appendix.Anexo.3}% 104 -\BOOKMARK [2][-]{subsection.Anexo.3.1.1}{Conexi\363n remota}{section.Anexo.3.1}% 105 -\BOOKMARK [2][-]{subsection.Anexo.3.1.2}{Creaci\363n de una red}{section.Anexo.3.1}% 106 -\BOOKMARK [2][-]{subsection.Anexo.3.1.3}{Crear nodo}{section.Anexo.3.1}% 107 -\BOOKMARK [0][-]{appendix.Anexo.4}{Interacci\363n}{}% 108 -\BOOKMARK [1][-]{section.Anexo.4.1}{Configuraciones de administrador}{appendix.Anexo.4}% 109 -\BOOKMARK [1][-]{section.Anexo.4.2}{Interacci\363n de un usuario}{appendix.Anexo.4}% 110 -\BOOKMARK [1][-]{section.Anexo.4.3}{Acceso a una instancia}{appendix.Anexo.4}% 111 -\BOOKMARK [2][-]{subsection.Anexo.4.3.1}{Por SPICE}{section.Anexo.4.3}% 112 -\BOOKMARK [2][-]{subsection.Anexo.4.3.2}{Por SSH}{section.Anexo.4.3}% 113 -\BOOKMARK [2][-]{subsection.Anexo.4.3.3}{Por virsh}{section.Anexo.4.3}% 114 -\BOOKMARK [0][-]{appendix.Anexo.5}{migrate\137instance.sh}{}% 115 +\BOOKMARK [1][-]{section.7.3}{Actualizar versi\363n}{chapter.7}% 63 +\BOOKMARK [0][-]{chapter.8}{An\341lisis del m\363dulo de red}{}% 64 +\BOOKMARK [1][-]{section.8.1}{Escenarios de prueba}{chapter.8}% 65 +\BOOKMARK [2][-]{subsection.8.1.1}{Escenario 1: tr\341fico este-oeste \(misma red tenant\)}{section.8.1}% 66 +\BOOKMARK [2][-]{subsection.8.1.2}{Escenario 2: tr\341fico este-oeste \(distintas redes tenant\)}{section.8.1}% 67 +\BOOKMARK [2][-]{subsection.8.1.3}{Escenario 3: tr\341fico norte-sur \(acceso hacia el exterior\)}{section.8.1}% 68 +\BOOKMARK [2][-]{subsection.8.1.4}{Escenario 4: tr\341fico norte-sur \(acceso desde el exterior\)}{section.8.1}% 69 +\BOOKMARK [1][-]{section.8.2}{Linux bridge}{chapter.8}% 70 +\BOOKMARK [2][-]{subsection.8.2.1}{Escenario 1}{section.8.2}% 71 +\BOOKMARK [2][-]{subsection.8.2.2}{Escenario 2}{section.8.2}% 72 +\BOOKMARK [2][-]{subsection.8.2.3}{Escenario 3}{section.8.2}% 73 +\BOOKMARK [2][-]{subsection.8.2.4}{Escenario 4}{section.8.2}% 74 +\BOOKMARK [1][-]{section.8.3}{Open vSwitch}{chapter.8}% 75 +\BOOKMARK [2][-]{subsection.8.3.1}{Escenario 1}{section.8.3}% 76 +\BOOKMARK [2][-]{subsection.8.3.2}{Escenario 2}{section.8.3}% 77 +\BOOKMARK [2][-]{subsection.8.3.3}{Escenario 3}{section.8.3}% 78 +\BOOKMARK [2][-]{subsection.8.3.4}{Escenario 4}{section.8.3}% 79 +\BOOKMARK [1][-]{section.8.4}{Comparativa de drivers}{chapter.8}% 80 +\BOOKMARK [1][-]{section.8.5}{Funcionalidades avanzadas}{chapter.8}% 81 +\BOOKMARK [2][-]{subsection.8.5.1}{Layer 3 High Availability}{section.8.5}% 82 +\BOOKMARK [0][-]{chapter.9}{Trabajo a futuro}{}% 83 +\BOOKMARK [0][-]{chapter.10}{Conclusiones}{}% 84 +\BOOKMARK [0][-]{chapter*.180}{Referencias bibliogr\341ficas}{}% 85 +\BOOKMARK [0][-]{chapter*.180}{Glosario}{}% 86 +\BOOKMARK [0][-]{section*.181}{Ap\351ndices}{}% 87 +\BOOKMARK [0][-]{appendix.Alph1}{Im\341genes}{}% 88 +\BOOKMARK [0][-]{section*.184}{Anexos}{}% 89 +\BOOKMARK [0][-]{appendix.Anexo.1}{Instalaci\363n versi\363n Queens}{}% 90 +\BOOKMARK [1][-]{section.Anexo.1.1}{Preparaci\363n de nodos}{appendix.Anexo.1}% 91 +\BOOKMARK [1][-]{section.Anexo.1.2}{Configuraci\363n}{appendix.Anexo.1}% 92 +\BOOKMARK [2][-]{subsection.Anexo.1.2.1}{Configuraci\363n claves SSH}{section.Anexo.1.2}% 93 +\BOOKMARK [2][-]{subsection.Anexo.1.2.2}{Archivos de configuraci\363n OSA}{section.Anexo.1.2}% 94 +\BOOKMARK [2][-]{subsection.Anexo.1.2.3}{Generaci\363n de claves}{section.Anexo.1.2}% 95 +\BOOKMARK [2][-]{subsection.Anexo.1.2.4}{Correcciones}{section.Anexo.1.2}% 96 +\BOOKMARK [0][-]{appendix.Anexo.2}{Instalaci\363n versi\363n Stein}{}% 97 +\BOOKMARK [1][-]{section.Anexo.2.1}{Preparaci\363n de nodos}{appendix.Anexo.2}% 98 +\BOOKMARK [1][-]{section.Anexo.2.2}{Configuraci\363n archivos OSA}{appendix.Anexo.2}% 99 +\BOOKMARK [1][-]{section.Anexo.2.3}{Ejecuci\363n de playbooks}{appendix.Anexo.2}% 100 +\BOOKMARK [1][-]{section.Anexo.2.4}{Cambios para driver OVS}{appendix.Anexo.2}% 101 +\BOOKMARK [0][-]{appendix.Anexo.3}{Virtualizaci\363n con KVM}{}% 102 +\BOOKMARK [1][-]{section.Anexo.3.1}{Utilizaci\363n virt-manager}{appendix.Anexo.3}% 103 +\BOOKMARK [2][-]{subsection.Anexo.3.1.1}{Conexi\363n remota}{section.Anexo.3.1}% 104 +\BOOKMARK [2][-]{subsection.Anexo.3.1.2}{Creaci\363n de una red}{section.Anexo.3.1}% 105 +\BOOKMARK [2][-]{subsection.Anexo.3.1.3}{Crear nodo}{section.Anexo.3.1}% 106 +\BOOKMARK [0][-]{appendix.Anexo.4}{Interacci\363n}{}% 107 +\BOOKMARK [1][-]{section.Anexo.4.1}{Configuraciones de administrador}{appendix.Anexo.4}% 108 +\BOOKMARK [1][-]{section.Anexo.4.2}{Interacci\363n de un usuario}{appendix.Anexo.4}% 109 +\BOOKMARK [1][-]{section.Anexo.4.3}{Acceso a una instancia}{appendix.Anexo.4}% 110 +\BOOKMARK [2][-]{subsection.Anexo.4.3.1}{Por SPICE}{section.Anexo.4.3}% 111 +\BOOKMARK [2][-]{subsection.Anexo.4.3.2}{Por SSH}{section.Anexo.4.3}% 112 +\BOOKMARK [2][-]{subsection.Anexo.4.3.3}{Por virsh}{section.Anexo.4.3}% 113 +\BOOKMARK [0][-]{appendix.Anexo.5}{migrate\137instance.sh}{}% 114 diff --git a/docs/udelartex/tesis.pdf b/docs/udelartex/tesis.pdf index 0b7cc09bc3e3483f4aaa2df81d905edf028a1929..3433a8b08476df9ba7899a76fce430ef257032a2 100644 Binary files a/docs/udelartex/tesis.pdf and b/docs/udelartex/tesis.pdf differ diff --git a/docs/udelartex/tesis.synctex.gz b/docs/udelartex/tesis.synctex.gz index 2bd6797b4590609f099413634e22ffa34e5d3c3c..c684b3a1d6492a3bcc62357b82a02b318a432a2e 100644 Binary files a/docs/udelartex/tesis.synctex.gz and b/docs/udelartex/tesis.synctex.gz differ diff --git a/docs/udelartex/tesis.toc b/docs/udelartex/tesis.toc index 333451dfea4570110f2976c6de90d3406b48fe1b..9440908be9094ea52b65038ccbd5a1e141c85201 100644 --- a/docs/udelartex/tesis.toc +++ b/docs/udelartex/tesis.toc @@ -101,7 +101,6 @@ \contentsline {subsection}{\numberline {7.2.1}Agregar nodo de Cómputo}{65}{subsection.7.2.1}% \contentsline {subsection}{\numberline {7.2.2}Eliminar un nodo de cómputo}{66}{subsection.7.2.2}% \contentsline {subsection}{\numberline {7.2.3}Infraestructura}{68}{subsection.7.2.3}% -\contentsline {subsection}{\numberline {7.2.4}Storage}{68}{subsection.7.2.4}% \contentsline {section}{\numberline {7.3}Actualizar versión}{68}{section.7.3}% \contentsline {chapter}{\numberline {8}Análisis del módulo de red}{69}{chapter.8}% \contentsline {section}{\numberline {8.1}Escenarios de prueba}{69}{section.8.1}% @@ -191,69 +190,69 @@ \contentsline {section}{\numberline {8.4}Comparativa de drivers}{145}{section.8.4}% \contentsline {section}{\numberline {8.5}Funcionalidades avanzadas}{145}{section.8.5}% \contentsline {subsection}{\numberline {8.5.1}Layer 3 High Availability}{145}{subsection.8.5.1}% -\contentsline {chapter}{\numberline {9}Trabajo a futuro}{146}{chapter.9}% -\contentsline {subsubsection}{\numberline {9.0.0.1}Firewall}{146}{subsubsection.9.0.0.1}% -\contentsline {subsubsection}{\numberline {9.0.0.2}Arquitectura segura}{146}{subsubsection.9.0.0.2}% -\contentsline {subsubsection}{\numberline {9.0.0.3}Brindar conexión directa a Internet}{147}{subsubsection.9.0.0.3}% -\contentsline {subsubsection}{\numberline {9.0.0.4}Gestión de Openstack en operación}{147}{subsubsection.9.0.0.4}% -\contentsline {chapter}{\numberline {10}Conclusiones}{148}{chapter.10}% -\contentsline {chapter}{Referencias bibliográficas}{149}{chapter*.178}% -\contentsline {chapter}{Glosario}{155}{chapter*.178}% -\contentsline {chapter}{\textbf {Apéndices}}{156}{section*.179}% +\contentsline {chapter}{\numberline {9}Trabajo a futuro}{148}{chapter.9}% +\contentsline {subsubsection}{\numberline {9.0.0.1}Firewall}{148}{subsubsection.9.0.0.1}% +\contentsline {subsubsection}{\numberline {9.0.0.2}Arquitectura segura}{148}{subsubsection.9.0.0.2}% +\contentsline {subsubsection}{\numberline {9.0.0.3}Brindar conexión directa a Internet}{149}{subsubsection.9.0.0.3}% +\contentsline {subsubsection}{\numberline {9.0.0.4}Gestión de Openstack en operación}{149}{subsubsection.9.0.0.4}% +\contentsline {chapter}{\numberline {10}Conclusiones}{150}{chapter.10}% +\contentsline {chapter}{Referencias bibliográficas}{151}{chapter*.180}% +\contentsline {chapter}{Glosario}{157}{chapter*.180}% +\contentsline {chapter}{\textbf {Apéndices}}{158}{section*.181}% \ttl@change@i {\@ne }{chapter}{13pt}{}{ Apéndice\ \thecontentslabel \quad }{}{\titlerule *[1pc]{.}\contentspage }\relax \ttl@change@v {chapter}{}{}{}\relax -\contentsline {chapter}{\numberline {1}Imágenes}{157}{appendix.Alph1}% +\contentsline {chapter}{\numberline {1}Imágenes}{159}{appendix.Alph1}% \ttl@change@i {\@ne }{chapter}{0pt}{\vspace *{0.45cm}}{\thecontentslabel \quad }{}{\bfseries \hfill \contentspage }\relax \ttl@change@v {chapter}{}{}{}\relax -\contentsline {chapter}{\textbf {Anexos}}{160}{section*.182}% +\contentsline {chapter}{\textbf {Anexos}}{162}{section*.184}% \ttl@change@i {\@ne }{chapter}{13pt}{}{ Anexo\ \thecontentslabel \quad }{}{\titlerule *[1pc]{.}\contentspage }\relax \ttl@change@v {chapter}{}{}{}\relax -\contentsline {chapter}{\numberline {1}Instalación versión Queens}{161}{appendix.Anexo.1}% -\contentsline {section}{\numberline {1.1}Preparación de nodos}{161}{section.Anexo.1.1}% -\contentsline {subsubsection}{\numberline {1.1.0.1}Deploy}{161}{subsubsection.Anexo.1.1.0.1}% -\contentsline {subsubsection}{\numberline {1.1.0.2}Infra1}{164}{subsubsection.Anexo.1.1.0.2}% -\contentsline {subsubsection}{\numberline {1.1.0.3}Compute1}{166}{subsubsection.Anexo.1.1.0.3}% -\contentsline {subsubsection}{\numberline {1.1.0.4}Storage1}{168}{subsubsection.Anexo.1.1.0.4}% -\contentsline {subsubsection}{\numberline {1.1.0.5}HAproxy1}{169}{subsubsection.Anexo.1.1.0.5}% -\contentsline {section}{\numberline {1.2}Configuración}{170}{section.Anexo.1.2}% -\contentsline {subsection}{\numberline {1.2.1}Configuración claves SSH}{170}{subsection.Anexo.1.2.1}% -\contentsline {subsection}{\numberline {1.2.2}Archivos de configuración OSA}{171}{subsection.Anexo.1.2.2}% -\contentsline {subsubsection}{\numberline {1.2.2.1}openstack\_user\_config.yml}{171}{subsubsection.Anexo.1.2.2.1}% -\contentsline {subsubsection}{\numberline {1.2.2.2}user\_variables.yml}{174}{subsubsection.Anexo.1.2.2.2}% -\contentsline {subsubsection}{\numberline {1.2.2.3}cinder.yml}{176}{subsubsection.Anexo.1.2.2.3}% -\contentsline {subsection}{\numberline {1.2.3}Generación de claves}{176}{subsection.Anexo.1.2.3}% -\contentsline {subsection}{\numberline {1.2.4}Correcciones}{176}{subsection.Anexo.1.2.4}% -\contentsline {subsubsection}{\numberline {1.2.4.1}SELinux}{176}{subsubsection.Anexo.1.2.4.1}% -\contentsline {chapter}{\numberline {2}Instalación versión Stein}{177}{appendix.Anexo.2}% -\contentsline {section}{\numberline {2.1}Preparación de nodos}{177}{section.Anexo.2.1}% -\contentsline {subsubsection}{\numberline {2.1.0.1}Deploy}{177}{subsubsection.Anexo.2.1.0.1}% -\contentsline {subsubsection}{\numberline {2.1.0.2}Infra1}{180}{subsubsection.Anexo.2.1.0.2}% -\contentsline {subsubsection}{\numberline {2.1.0.3}Compute1}{182}{subsubsection.Anexo.2.1.0.3}% -\contentsline {subsubsection}{\numberline {2.1.0.4}Compute2}{184}{subsubsection.Anexo.2.1.0.4}% -\contentsline {subsubsection}{\numberline {2.1.0.5}Storage1}{184}{subsubsection.Anexo.2.1.0.5}% -\contentsline {subsubsection}{\numberline {2.1.0.6}Storage2}{185}{subsubsection.Anexo.2.1.0.6}% -\contentsline {subsubsection}{\numberline {2.1.0.7}HAproxy1}{185}{subsubsection.Anexo.2.1.0.7}% -\contentsline {subsubsection}{\numberline {2.1.0.8}Router}{186}{subsubsection.Anexo.2.1.0.8}% -\contentsline {section}{\numberline {2.2}Configuración archivos OSA}{190}{section.Anexo.2.2}% -\contentsline {subsubsection}{\numberline {2.2.0.1}openstack\_user\_config.yml}{190}{subsubsection.Anexo.2.2.0.1}% -\contentsline {subsubsection}{\numberline {2.2.0.2}user\_variables.yml}{195}{subsubsection.Anexo.2.2.0.2}% -\contentsline {subsubsection}{\numberline {2.2.0.3}cinder.yml}{197}{subsubsection.Anexo.2.2.0.3}% -\contentsline {section}{\numberline {2.3}Ejecución de playbooks}{197}{section.Anexo.2.3}% -\contentsline {section}{\numberline {2.4}Cambios para driver OVS}{198}{section.Anexo.2.4}% -\contentsline {chapter}{\numberline {3}Virtualización con KVM}{201}{appendix.Anexo.3}% -\contentsline {section}{\numberline {3.1}Utilización virt-manager}{201}{section.Anexo.3.1}% -\contentsline {subsection}{\numberline {3.1.1}Conexión remota}{201}{subsection.Anexo.3.1.1}% -\contentsline {subsection}{\numberline {3.1.2}Creación de una red}{202}{subsection.Anexo.3.1.2}% -\contentsline {subsection}{\numberline {3.1.3}Crear nodo}{204}{subsection.Anexo.3.1.3}% -\contentsline {chapter}{\numberline {4}Interacción}{208}{appendix.Anexo.4}% -\contentsline {section}{\numberline {4.1}Configuraciones de administrador}{209}{section.Anexo.4.1}% -\contentsline {section}{\numberline {4.2}Interacción de un usuario}{215}{section.Anexo.4.2}% -\contentsline {section}{\numberline {4.3}Acceso a una instancia}{223}{section.Anexo.4.3}% -\contentsline {subsection}{\numberline {4.3.1}Por SPICE}{223}{subsection.Anexo.4.3.1}% -\contentsline {subsection}{\numberline {4.3.2}Por SSH}{224}{subsection.Anexo.4.3.2}% -\contentsline {subsubsection}{\numberline {4.3.2.1}Asociar una Floating IP a la instancia}{224}{subsubsection.Anexo.4.3.2.1}% -\contentsline {subsubsection}{\numberline {4.3.2.2}Modificar security group}{225}{subsubsection.Anexo.4.3.2.2}% -\contentsline {subsubsection}{\numberline {4.3.2.3}SSH}{226}{subsubsection.Anexo.4.3.2.3}% -\contentsline {subsection}{\numberline {4.3.3}Por virsh}{227}{subsection.Anexo.4.3.3}% -\contentsline {chapter}{\numberline {5}migrate\_instance.sh}{228}{appendix.Anexo.5}% +\contentsline {chapter}{\numberline {1}Instalación versión Queens}{163}{appendix.Anexo.1}% +\contentsline {section}{\numberline {1.1}Preparación de nodos}{163}{section.Anexo.1.1}% +\contentsline {subsubsection}{\numberline {1.1.0.1}Deploy}{163}{subsubsection.Anexo.1.1.0.1}% +\contentsline {subsubsection}{\numberline {1.1.0.2}Infra1}{166}{subsubsection.Anexo.1.1.0.2}% +\contentsline {subsubsection}{\numberline {1.1.0.3}Compute1}{168}{subsubsection.Anexo.1.1.0.3}% +\contentsline {subsubsection}{\numberline {1.1.0.4}Storage1}{170}{subsubsection.Anexo.1.1.0.4}% +\contentsline {subsubsection}{\numberline {1.1.0.5}HAproxy1}{171}{subsubsection.Anexo.1.1.0.5}% +\contentsline {section}{\numberline {1.2}Configuración}{172}{section.Anexo.1.2}% +\contentsline {subsection}{\numberline {1.2.1}Configuración claves SSH}{172}{subsection.Anexo.1.2.1}% +\contentsline {subsection}{\numberline {1.2.2}Archivos de configuración OSA}{173}{subsection.Anexo.1.2.2}% +\contentsline {subsubsection}{\numberline {1.2.2.1}openstack\_user\_config.yml}{173}{subsubsection.Anexo.1.2.2.1}% +\contentsline {subsubsection}{\numberline {1.2.2.2}user\_variables.yml}{176}{subsubsection.Anexo.1.2.2.2}% +\contentsline {subsubsection}{\numberline {1.2.2.3}cinder.yml}{178}{subsubsection.Anexo.1.2.2.3}% +\contentsline {subsection}{\numberline {1.2.3}Generación de claves}{178}{subsection.Anexo.1.2.3}% +\contentsline {subsection}{\numberline {1.2.4}Correcciones}{178}{subsection.Anexo.1.2.4}% +\contentsline {subsubsection}{\numberline {1.2.4.1}SELinux}{178}{subsubsection.Anexo.1.2.4.1}% +\contentsline {chapter}{\numberline {2}Instalación versión Stein}{179}{appendix.Anexo.2}% +\contentsline {section}{\numberline {2.1}Preparación de nodos}{179}{section.Anexo.2.1}% +\contentsline {subsubsection}{\numberline {2.1.0.1}Deploy}{179}{subsubsection.Anexo.2.1.0.1}% +\contentsline {subsubsection}{\numberline {2.1.0.2}Infra1}{182}{subsubsection.Anexo.2.1.0.2}% +\contentsline {subsubsection}{\numberline {2.1.0.3}Compute1}{184}{subsubsection.Anexo.2.1.0.3}% +\contentsline {subsubsection}{\numberline {2.1.0.4}Compute2}{186}{subsubsection.Anexo.2.1.0.4}% +\contentsline {subsubsection}{\numberline {2.1.0.5}Storage1}{186}{subsubsection.Anexo.2.1.0.5}% +\contentsline {subsubsection}{\numberline {2.1.0.6}Storage2}{187}{subsubsection.Anexo.2.1.0.6}% +\contentsline {subsubsection}{\numberline {2.1.0.7}HAproxy1}{187}{subsubsection.Anexo.2.1.0.7}% +\contentsline {subsubsection}{\numberline {2.1.0.8}Router}{188}{subsubsection.Anexo.2.1.0.8}% +\contentsline {section}{\numberline {2.2}Configuración archivos OSA}{192}{section.Anexo.2.2}% +\contentsline {subsubsection}{\numberline {2.2.0.1}openstack\_user\_config.yml}{192}{subsubsection.Anexo.2.2.0.1}% +\contentsline {subsubsection}{\numberline {2.2.0.2}user\_variables.yml}{197}{subsubsection.Anexo.2.2.0.2}% +\contentsline {subsubsection}{\numberline {2.2.0.3}cinder.yml}{199}{subsubsection.Anexo.2.2.0.3}% +\contentsline {section}{\numberline {2.3}Ejecución de playbooks}{199}{section.Anexo.2.3}% +\contentsline {section}{\numberline {2.4}Cambios para driver OVS}{200}{section.Anexo.2.4}% +\contentsline {chapter}{\numberline {3}Virtualización con KVM}{203}{appendix.Anexo.3}% +\contentsline {section}{\numberline {3.1}Utilización virt-manager}{203}{section.Anexo.3.1}% +\contentsline {subsection}{\numberline {3.1.1}Conexión remota}{203}{subsection.Anexo.3.1.1}% +\contentsline {subsection}{\numberline {3.1.2}Creación de una red}{204}{subsection.Anexo.3.1.2}% +\contentsline {subsection}{\numberline {3.1.3}Crear nodo}{206}{subsection.Anexo.3.1.3}% +\contentsline {chapter}{\numberline {4}Interacción}{210}{appendix.Anexo.4}% +\contentsline {section}{\numberline {4.1}Configuraciones de administrador}{211}{section.Anexo.4.1}% +\contentsline {section}{\numberline {4.2}Interacción de un usuario}{217}{section.Anexo.4.2}% +\contentsline {section}{\numberline {4.3}Acceso a una instancia}{225}{section.Anexo.4.3}% +\contentsline {subsection}{\numberline {4.3.1}Por SPICE}{225}{subsection.Anexo.4.3.1}% +\contentsline {subsection}{\numberline {4.3.2}Por SSH}{226}{subsection.Anexo.4.3.2}% +\contentsline {subsubsection}{\numberline {4.3.2.1}Asociar una Floating IP a la instancia}{226}{subsubsection.Anexo.4.3.2.1}% +\contentsline {subsubsection}{\numberline {4.3.2.2}Modificar security group}{227}{subsubsection.Anexo.4.3.2.2}% +\contentsline {subsubsection}{\numberline {4.3.2.3}SSH}{228}{subsubsection.Anexo.4.3.2.3}% +\contentsline {subsection}{\numberline {4.3.3}Por virsh}{229}{subsection.Anexo.4.3.3}% +\contentsline {chapter}{\numberline {5}migrate\_instance.sh}{230}{appendix.Anexo.5}% \contentsfinish diff --git a/docs/udelartex/tesis.xwm b/docs/udelartex/tesis.xwm index 3c7d5ca06e0c3365ddbd4c33645f7a30c490dd4e..c2e90b8a7b50dc793c582aabbbf1ea2233c7ed7d 100644 --- a/docs/udelartex/tesis.xwm +++ b/docs/udelartex/tesis.xwm @@ -1,2 +1,2 @@ \relax -\xwmnewlabel{xwmlastpage}{{5}{229}{migrate\_instance.sh\relax }{lstnumber.-283.30}{}} +\xwmnewlabel{xwmlastpage}{{5}{231}{migrate\_instance.sh\relax }{lstnumber.-283.30}{}}