Skip to content
Snippets Groups Projects
Commit 10e47be4 authored by Matias Daniel Capucho Cirlinas's avatar Matias Daniel Capucho Cirlinas
Browse files

- Cambios descripción archivos config

parent 1948a7c0
No related branches found
No related tags found
No related merge requests found
...@@ -405,9 +405,7 @@ Para verificar la configuración bastará con realizar un ssh a cada servidor de ...@@ -405,9 +405,7 @@ Para verificar la configuración bastará con realizar un ssh a cada servidor de
\subsection{Archivos de configuración OSA} \subsection{Archivos de configuración OSA}
\subsubsection{openstack\_user\_config.yml} \subsubsection{openstack\_user\_config.yml}
A continuación se detalla cada bloque de configuración utilizado en la instalación realizada.\\ A continuación se muestra las configuraciones utilizadas en el archivo, el significado de cada sección fue explicado en \ref{sec:openstack-user-config}.
En la primera sección, cidr\_networks, se describen las subredes utilizadas en la instalación de OpenStack.
\begin{lstlisting} \begin{lstlisting}
cidr_networks: cidr_networks:
...@@ -416,25 +414,18 @@ tunnel: 10.0.10.0/24 ...@@ -416,25 +414,18 @@ tunnel: 10.0.10.0/24
storage: 10.0.2.0/24 storage: 10.0.2.0/24
\end{lstlisting} \end{lstlisting}
La red de container permite a los distintos servicios , ejecutados dentro de contenedores o servidores físicos, comunicarse entre sí. La red tunnel es utilizada cuando un usuario crea una nueva red tennant dentro de un proyecto de OpenStack, en el caso que corresponda se creará una red VXLAN en este red física. Por último la red de storage la utilizaran los nodos que alojan el backend y los servicios de storage de OpenStack. Los rangos elegidos son totalmente arbitrarios, a excepción de la subred 10.0.3.0/24 debido a que es utilizada internamente por OSA durante su ejecución como se mencionó en la sección de arquitectura de red.\\
Lo siguiente a configurar son las direcciones IP que están siendo utilizadas por los hosts físicos de la infraestructura en las redes definidas previamente, con el fin de reservarlas y que la instalación no utilice ninguna de ellas para la estructura de OpenStack.
\begin{lstlisting} \begin{lstlisting}
used_ips: used_ips:
- "10.0.1.1,10.0.1.20" # red de management - "10.0.1.1,10.0.1.20" # red de management
- "10.0.2.1,10.0.2.20" # red de storage - "10.0.2.1,10.0.2.20" # red de storage
- "10.0.10.1,10.0.10.20" # red de vxlan - "10.0.10.1,10.0.10.20" # red de vxlan
\end{lstlisting} \end{lstlisting}
\vspace{8pt}
En la sección global\_overrides se describen los bridges utilizados y detalles de las interfaces del ambiente, por ejemplo, cómo los containers se conectan a la red física de los hosts.
\begin{lstlisting} \begin{lstlisting}
global_overrides: global_overrides:
internal_lb_vip_address: 10.0.1.15 internal_lb_vip_address: 10.0.1.15
external_lb_vip_address: 192.168.60.160 external_lb_vip_address: 192.168.60.160
\end{lstlisting} \end{lstlisting}
Estos parámetros refieren a las direcciones IPs pública y privada del balanceador de carga. La privada es utilizada internamente por los servicios de OpenStack y la pública es la puerta de acceso para los usuarios.
\begin{lstlisting} \begin{lstlisting}
tunnel_bridge: "br-vxlan" tunnel_bridge: "br-vxlan"
...@@ -442,10 +433,6 @@ management_bridge: "br-mgmt" ...@@ -442,10 +433,6 @@ management_bridge: "br-mgmt"
storage_bridge: "br-storage" storage_bridge: "br-storage"
\end{lstlisting} \end{lstlisting}
Con estas variables se define el nombre asignado a cada uno de los bridges creados en los hosts físicos.\\
La sección de provider\_networks describe la relación entre la red de los contenedores y el ambiente físico de los servidores.
\begin{lstlisting} \begin{lstlisting}
provider_networks: provider_networks:
- network: - network:
...@@ -492,8 +479,6 @@ provider_networks: ...@@ -492,8 +479,6 @@ provider_networks:
type: "flat" type: "flat"
net_name: "flat" net_name: "flat"
\end{lstlisting} \end{lstlisting}
\vspace{8pt}
La última sección describe en qué servidor o grupo de servidores corre cada servicio de OpenStack y de infraestructura.
\begin{lstlisting}[gobble=0] \begin{lstlisting}[gobble=0]
### Infrastructure ### Infrastructure
...@@ -560,7 +545,7 @@ storage_hosts: ...@@ -560,7 +545,7 @@ storage_hosts:
volume_group: cinder-volumes volume_group: cinder-volumes
iscsi_ip_address: "10.0.2.13" iscsi_ip_address: "10.0.2.13"
\end{lstlisting} \end{lstlisting}
\vspace{8pt}
Particularmente se resalta, en el último punto, la configuración de cinder necesaria para desplegar un backend de almacenamiento basado en LVM. Particularmente se resalta, en el último punto, la configuración de cinder necesaria para desplegar un backend de almacenamiento basado en LVM.
\subsubsection{user\_variables.yml} \subsubsection{user\_variables.yml}
......
...@@ -5,21 +5,21 @@ El método de instalación OSA emplea LXC para desplegar los servicios de OpenSt ...@@ -5,21 +5,21 @@ El método de instalación OSA emplea LXC para desplegar los servicios de OpenSt
\begin{figure}[h!] \begin{figure}[h!]
\centering \centering
\includegraphics[width=0.6\columnwidth]{chap3/network-components} \includegraphics[width=0.6\columnwidth]{chap3/network-components}
\caption{Componentes de red en Openstack. \cite{openstack-container-networking}.} \caption{Componentes de red en OpenStack. \cite{openstack-container-networking}.}
\label{network-components} \label{network-components}
\end{figure} \end{figure}
\subsection{Arquitectura de red} \subsection{Arquitectura de red}
OSA soporta múltiples arquitecturas de red, las cuales se diferencian según sea para un ambiente de producción o testing, cantidad de interfaces físicas de los servidores o módulos de openstack utilizados. Para los ambientes de producción es común utilizar interfaces bondeadas mejorando la disponibilidad de los servicios. En general para segmentar el tráfico, tanto en los casos donde se realiza bonding o en donde hay interfaces simples, se utilizan VLANs asignando un ID para cada subred utilizada dentro de OpenStack. A continuación se describen las subredes empleadas por OSA para su funcionamiento: OSA soporta múltiples arquitecturas de red, las cuales se diferencian según sea para un ambiente de producción o testing, cantidad de interfaces físicas de los servidores o módulos de OpenStack utilizados. Para los ambientes de producción es común utilizar interfaces bondeadas mejorando la disponibilidad de los servicios. En general para segmentar el tráfico, tanto en los casos donde se realiza bonding o en donde hay interfaces simples, se utilizan VLANs asignando un ID para cada subred utilizada dentro de OpenStack. A continuación se describen las subredes empleadas por OSA para su funcionamiento:
\subparagraph{Management Network} \subparagraph{Management Network}
La red de administración o también container network se encarga de proveer la administración y comunicación entre la infraestructura y los servicios de OpenStack en containers o en servidores físicos. Para que todas las instancias tengan acceso a esta red, es necesario que todos los nodos host del datacenter cuenten con el bridge br-mgmt. A este último se le asocian las interfaces virtuales de cada contenedor y la lógica o física del host en cuestión, asignadas a dicha red. Esta interfaz suele ser la primaria del nodo mediante la cual se accede por SSH. La red de administración o también container network se encarga de proveer la administración y comunicación entre la infraestructura y los servicios de OpenStack en containers o en servidores físicos. Para que todas las instancias tengan acceso a esta red, es necesario que todos los nodos host del Datacenter cuenten con el bridge br-mgmt. A este último se le asocian las interfaces virtuales de cada contenedor y la lógica o física del host en cuestión, asignadas a dicha red. Esta interfaz suele ser la primaria del nodo mediante la cual se accede por SSH.
\subparagraph{Overlay Network} \subparagraph{Overlay Network}
La red de superposición o también tunnel network, provee conectividad entre los hosts virtualizados dentro de OpenStack encapsulando el tráfico con algún protocolo de tunelización como son VXLAN o GENEVE. La VLAN o interfaz utilizada para esta subred se asocia al bridge br-vxlan. Este bridge debe instanciarse en todos los nodos que manejen agentes del módulo Neutron, típicamente involucra los nodos de cómputo y/o red. La red de superposición o también tunnel network, provee conectividad entre los hosts virtualizados dentro de OpenStack encapsulando el tráfico con algún protocolo de tunelización como son VXLAN o GENEVE. La VLAN o interfaz utilizada para esta subred se asocia al bridge br-vxlan. Este bridge debe instanciarse en todos los nodos que manejen agentes del módulo Neutron, típicamente involucra los nodos de cómputo y/o red.
\subparagraph{Storage Network} \subparagraph{Storage Network}
La red de almacenamiento provee acceso entre los backends de almacenamiento, tales como Block storage, y los servicios de Openstack, como Cinder o Glance. En este caso las interfaces o VLANs se asocian al bridge br-storage, que debe instanciarse en todos los nodos que alojan servicios de cómputo o almacenamiento. La red de almacenamiento provee acceso entre los backends de almacenamiento, tales como Block Storage, y los servicios de OpenStack, como Cinder o Glance. En este caso las interfaces o VLANs se asocian al bridge br-storage, que debe instanciarse en todos los nodos o contenedores que alojan servicios de cómputo o almacenamiento.
\subsubsection{Interfaces de red} \subsubsection{Interfaces de red}
Como se mencionó en OSA se pueden tener diversas configuraciones dependiendo de la cantidad de interfaces del host físico, algunas de ellas se muestran en la figura \ref{interfaces}. Como se mencionó en OSA se pueden tener diversas configuraciones dependiendo de la cantidad de interfaces del host físico, algunas de ellas se muestran en la figura \ref{interfaces}.
...@@ -55,17 +55,8 @@ En la figura \ref{containers-deploy} se presenta un diseño que ilustra servicio ...@@ -55,17 +55,8 @@ En la figura \ref{containers-deploy} se presenta un diseño que ilustra servicio
Como se menciona anteriormente los contenedores que corren servicios de OpenStack requieren de interfaces virtuales para conectarse con los bridges del nodo físico. Además se puede observar cómo varían las conexiones necesarias a los distintos tipos de red, en función del tipo de agente que corre en el contenedor. Al utilizar contenedores, OSA crea automáticamente una nueva red que se utilizará para la administración de los mismos (por ejemplo para descargar paquetes). Un punto a tener en cuenta es que Ansible para crear esta subred utiliza el rango 10.0.3.0/24. Como se menciona anteriormente los contenedores que corren servicios de OpenStack requieren de interfaces virtuales para conectarse con los bridges del nodo físico. Además se puede observar cómo varían las conexiones necesarias a los distintos tipos de red, en función del tipo de agente que corre en el contenedor. Al utilizar contenedores, OSA crea automáticamente una nueva red que se utilizará para la administración de los mismos (por ejemplo para descargar paquetes). Un punto a tener en cuenta es que Ansible para crear esta subred utiliza el rango 10.0.3.0/24.
En la figura \ref{diagrama-openstack-1} se presenta el diagrama de una arquitectura modelo de OpenStack Ansible en un ambiente de producción que involucra los conceptos mencionados en puntos anteriores.
\begin{figure}[h!]
\centering
\includegraphics[width=1.0\columnwidth]{chap3/diagrama-openstack-1}
\caption{Extraída de \cite{openstack-cookbook-book}}
\label{diagrama-openstack-1}
\end{figure}
\section{Configuración OSA} \section{Configuración OSA}
En esta sección se presentan las configuraciones y conceptos más relevantes del nodo Deploy a tener en cuenta durante un despliegue de Openstack utilizando Ansible. Estas incluyen las convenciones de directorios empleadas, la configuración estándar y el significado del contenido de los archivos que deben ser modificados. En esta sección se presentan las configuraciones y conceptos más relevantes del nodo Deploy a tener en cuenta durante un despliegue de OpenStack utilizando Ansible. Estas incluyen las convenciones de directorios empleadas, la configuración estándar y el significado del contenido de los archivos que deben ser modificados.
\subsection{Convenciones} \subsection{Convenciones}
\begin{itemize} \begin{itemize}
...@@ -81,18 +72,30 @@ Define las especificaciones de los hosts y contenedores dentro del ambiente actu ...@@ -81,18 +72,30 @@ Define las especificaciones de los hosts y contenedores dentro del ambiente actu
\item Lo configurado por el administrador dentro de \path{/etc/openstack_deploy/} en: \item Lo configurado por el administrador dentro de \path{/etc/openstack_deploy/} en:
\begin{itemize} \begin{itemize}
\item El archivo \path{openstack_user_config.yml} \item El archivo \path{openstack_user_config.yml}
\item El archivo \path{user_variables.yml}
\item El directorio \path{conf.d/} \item El directorio \path{conf.d/}
\item El directorio \path{env.d/} \item El directorio \path{env.d/}
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
Este archivo es considerado como referencia en cualquiera de los comandos asociados al despliegue de OSA por lo tanto nunca debe ser eliminado o modificado en un ambiente de producción. Estos archivos son considerados como referencia en cualquiera de los comandos asociados al despliegue de OSA por lo tanto nunca debe ser eliminado o modificado en un ambiente de producción.
Los components hacen referencia a los diferentes servicios que serán instalados durante el despliegue de OpenStack, tanto en contenedores virtuales como directamente en los target host. Los containers groups agrupan estos components, determinando los potenciales contenedores a ser creados junto con sus especificaciones. Los components hacen referencia a los diferentes servicios que serán instalados durante el despliegue de OpenStack, tanto en contenedores virtuales como directamente en los target host. Los containers groups agrupan estos components, determinando los potenciales contenedores a ser creados junto con sus especificaciones.
En las configuraciones realizadas en ambos directorios env.d/ se asocian los containers groups anteriores con los hosts groups, los cuales agrupan diversos target hosts. De esta forma se determina qué servicio debe ser instalado en qué target host. En las configuraciones realizadas en ambos directorios env.d/ se asocian los containers groups anteriores con los hosts groups, los cuales agrupan diversos target hosts. De esta forma se determina qué servicio debe ser instalado en qué target host.
\subsection{openstack\_user\_config.yml} \subsection{openstack\_user\_config.yml}\label{sec:openstack-user-config}
Es el principal archivo de configuración, creado por el operador de Openstack. Las especificaciones de cada sección se detallan en \cite{openstack-user-config}. Es el principal archivo de configuración, creado por el operador de OpenStack. A continuación se realiza un breve resumen del rol que cumple cada sección de dicho archivo. Como referencia se utilizo el siguiente documento \cite{openstack-user-config}.
En la sección cidr\_networks, se describen las subredes utilizadas en la instalación de OpenStack.
En la sección used\_ips se configuran las direcciones IP que están siendo utilizadas por los hosts físicos de la infraestructura en las redes definidas para el funcionamiento de OSA, con el fin de reservarlas y que la instalación no utilice ninguna de ellas para la estructura de OpenStack.
En la sección global\_overrides se especifican valores que deben ser ajustados de acuerdo a la arquitectura física establecida. Las principales opciones requeridas son: internal\_lb\_vip\_address y external\_lb\_vip\_address indicando las IPs de los balanceadores de carga tanto internos (utiliza por los servicios de OpenStack) como externos (puerta de acceso para los usuarios), los nombres de los bridges utilizados para las redes de management, storage y tunnel, y una lista de las redes provistas por los nodos físicos subyacentes en la subsección provider\_networks, describiendo adicionalmente como se conectan con los contenedores.
La última sección describe en qué servidor o grupo de servidores corre cada servicio de OpenStack e infraestructura.
\subsection{user\_variables.yml}\label{sec:user-variables}
Los archivos llamados con el formato user\_*.yml ubicados en \path{/etc/openstack_deploy} son considerados automáticamente para cada comando de \path{openstack-ansible}. En particular las variables definidas en el archivo \path{user_variables.yml} dependen fuertemente del ambiente a desplegar.
\section{Ejecución de playbooks} \section{Ejecución de playbooks}
Finalmente para instalar OpenStack con Ansible es necesario correr las playbooks principales del proyecto, las cuales se encuentran en el directorio \path{/opt/openstack-ansible/playbooks}.\\ Finalmente para instalar OpenStack con Ansible es necesario correr las playbooks principales del proyecto, las cuales se encuentran en el directorio \path{/opt/openstack-ansible/playbooks}.\\
......
...@@ -20,91 +20,90 @@ ...@@ -20,91 +20,90 @@
\contentsline {figure}{\numberline {4.8}{\ignorespaces Arquitectura del módulo Swift. Extraída de \cite {openstack-storage-components}.\relax }}{31}{figure.caption.36}% \contentsline {figure}{\numberline {4.8}{\ignorespaces Arquitectura del módulo Swift. Extraída de \cite {openstack-storage-components}.\relax }}{31}{figure.caption.36}%
\contentsline {figure}{\numberline {4.9}{\ignorespaces Arquitectura de Neutron. Extraída de \cite {openstack-networking-book-1}.\relax }}{33}{figure.caption.40}% \contentsline {figure}{\numberline {4.9}{\ignorespaces Arquitectura de Neutron. Extraída de \cite {openstack-networking-book-1}.\relax }}{33}{figure.caption.40}%
\addvspace {10\p@ } \addvspace {10\p@ }
\contentsline {figure}{\numberline {5.1}{\ignorespaces Componentes de red en Openstack. \cite {openstack-container-networking}.\relax }}{37}{figure.caption.52}% \contentsline {figure}{\numberline {5.1}{\ignorespaces Componentes de red en OpenStack. \cite {openstack-container-networking}.\relax }}{37}{figure.caption.52}%
\contentsline {figure}{\numberline {5.2}{\ignorespaces Diagrama de múltiples interfaces de red. Extraída de \cite {openstack-networking-architecture}.\relax }}{39}{figure.caption.56}% \contentsline {figure}{\numberline {5.2}{\ignorespaces Diagrama de múltiples interfaces de red. Extraída de \cite {openstack-networking-architecture}.\relax }}{39}{figure.caption.56}%
\contentsline {figure}{\numberline {5.3}{\ignorespaces Diagrama de bonds de múltiples interfaces de red. Extraída de \cite {openstack-networking-architecture}.\relax }}{39}{figure.caption.57}% \contentsline {figure}{\numberline {5.3}{\ignorespaces Diagrama de bonds de múltiples interfaces de red. Extraída de \cite {openstack-networking-architecture}.\relax }}{39}{figure.caption.57}%
\contentsline {figure}{\numberline {5.4}{\ignorespaces Despliegue de servicios OpenStack en contenedores. Extraída de \cite {openstack-appendix-e}.\relax }}{41}{figure.caption.58}% \contentsline {figure}{\numberline {5.4}{\ignorespaces Despliegue de servicios OpenStack en contenedores. Extraída de \cite {openstack-appendix-e}.\relax }}{41}{figure.caption.58}%
\contentsline {figure}{\numberline {5.5}{\ignorespaces Extraída de \cite {openstack-cookbook-book}\relax }}{42}{figure.caption.59}%
\addvspace {10\p@ } \addvspace {10\p@ }
\contentsline {figure}{\numberline {6.1}{\ignorespaces Arquitectura diseñada.\relax }}{49}{figure.caption.60}% \contentsline {figure}{\numberline {6.1}{\ignorespaces Arquitectura diseñada.\relax }}{49}{figure.caption.59}%
\contentsline {figure}{\numberline {6.2}{\ignorespaces Arquitectura diseñada para instalación Stein\relax }}{52}{figure.caption.61}% \contentsline {figure}{\numberline {6.2}{\ignorespaces Arquitectura diseñada para instalación Stein\relax }}{52}{figure.caption.60}%
\contentsline {figure}{\numberline {6.3}{\ignorespaces Acceso remoto al servidor renata.\relax }}{54}{figure.caption.62}% \contentsline {figure}{\numberline {6.3}{\ignorespaces Acceso remoto al servidor renata.\relax }}{54}{figure.caption.61}%
\contentsline {figure}{\numberline {6.4}{\ignorespaces Túnel reverso y esquema de servidores.\relax }}{55}{figure.caption.63}% \contentsline {figure}{\numberline {6.4}{\ignorespaces Túnel reverso y esquema de servidores.\relax }}{55}{figure.caption.62}%
\contentsline {figure}{\numberline {6.5}{\ignorespaces Salida a Internet en los nodos de Openstack.\relax }}{56}{figure.caption.64}% \contentsline {figure}{\numberline {6.5}{\ignorespaces Salida a Internet en los nodos de Openstack.\relax }}{56}{figure.caption.63}%
\addvspace {10\p@ } \addvspace {10\p@ }
\contentsline {figure}{\numberline {7.1}{\ignorespaces Vista del login de Horizon.\relax }}{58}{figure.caption.65}% \contentsline {figure}{\numberline {7.1}{\ignorespaces Vista del login de Horizon.\relax }}{58}{figure.caption.64}%
\contentsline {figure}{\numberline {7.2}{\ignorespaces Creación de un proyecto (1/2).\relax }}{59}{figure.caption.66}% \contentsline {figure}{\numberline {7.2}{\ignorespaces Creación de un proyecto (1/2).\relax }}{59}{figure.caption.65}%
\contentsline {figure}{\numberline {7.3}{\ignorespaces Creación de un proyecto (2/2).\relax }}{60}{figure.caption.67}% \contentsline {figure}{\numberline {7.3}{\ignorespaces Creación de un proyecto (2/2).\relax }}{60}{figure.caption.66}%
\contentsline {figure}{\numberline {7.4}{\ignorespaces Creación de un usuario.\relax }}{61}{figure.caption.68}% \contentsline {figure}{\numberline {7.4}{\ignorespaces Creación de un usuario.\relax }}{61}{figure.caption.67}%
\contentsline {figure}{\numberline {7.5}{\ignorespaces Creación de un flavor (1/2).\relax }}{62}{figure.caption.69}% \contentsline {figure}{\numberline {7.5}{\ignorespaces Creación de un flavor (1/2).\relax }}{62}{figure.caption.68}%
\contentsline {figure}{\numberline {7.6}{\ignorespaces Creación de un flavor (2/2).\relax }}{62}{figure.caption.70}% \contentsline {figure}{\numberline {7.6}{\ignorespaces Creación de un flavor (2/2).\relax }}{62}{figure.caption.69}%
\contentsline {figure}{\numberline {7.7}{\ignorespaces Creación de una red provider (1/2).\relax }}{63}{figure.caption.71}% \contentsline {figure}{\numberline {7.7}{\ignorespaces Creación de una red provider (1/2).\relax }}{63}{figure.caption.70}%
\contentsline {figure}{\numberline {7.8}{\ignorespaces Creación de una red provider (2/2).\relax }}{64}{figure.caption.72}% \contentsline {figure}{\numberline {7.8}{\ignorespaces Creación de una red provider (2/2).\relax }}{64}{figure.caption.71}%
\contentsline {figure}{\numberline {7.9}{\ignorespaces Creación de una imagen (1/2).\relax }}{65}{figure.caption.73}% \contentsline {figure}{\numberline {7.9}{\ignorespaces Creación de una imagen (1/2).\relax }}{65}{figure.caption.72}%
\contentsline {figure}{\numberline {7.10}{\ignorespaces Creación de una imagen (2/2).\relax }}{66}{figure.caption.74}% \contentsline {figure}{\numberline {7.10}{\ignorespaces Creación de una imagen (2/2).\relax }}{66}{figure.caption.73}%
\contentsline {figure}{\numberline {7.11}{\ignorespaces Creación de una red (1/3).\relax }}{67}{figure.caption.75}% \contentsline {figure}{\numberline {7.11}{\ignorespaces Creación de una red (1/3).\relax }}{67}{figure.caption.74}%
\contentsline {figure}{\numberline {7.12}{\ignorespaces Creación de una red (2/3).\relax }}{67}{figure.caption.76}% \contentsline {figure}{\numberline {7.12}{\ignorespaces Creación de una red (2/3).\relax }}{67}{figure.caption.75}%
\contentsline {figure}{\numberline {7.13}{\ignorespaces Creación de una red (3/3).\relax }}{68}{figure.caption.77}% \contentsline {figure}{\numberline {7.13}{\ignorespaces Creación de una red (3/3).\relax }}{68}{figure.caption.76}%
\contentsline {figure}{\numberline {7.14}{\ignorespaces Creación de un router.\relax }}{68}{figure.caption.78}% \contentsline {figure}{\numberline {7.14}{\ignorespaces Creación de un router.\relax }}{68}{figure.caption.77}%
\contentsline {figure}{\numberline {7.15}{\ignorespaces Creación de una interfaz en un router.\relax }}{69}{figure.caption.79}% \contentsline {figure}{\numberline {7.15}{\ignorespaces Creación de una interfaz en un router.\relax }}{69}{figure.caption.78}%
\contentsline {figure}{\numberline {7.16}{\ignorespaces Creación de una key pair.\relax }}{69}{figure.caption.80}% \contentsline {figure}{\numberline {7.16}{\ignorespaces Creación de una key pair.\relax }}{69}{figure.caption.79}%
\contentsline {figure}{\numberline {7.17}{\ignorespaces Lanzar una nueva instancia (1/5).\relax }}{70}{figure.caption.81}% \contentsline {figure}{\numberline {7.17}{\ignorespaces Lanzar una nueva instancia (1/5).\relax }}{70}{figure.caption.80}%
\contentsline {figure}{\numberline {7.18}{\ignorespaces Lanzar una nueva instancia (2/5).\relax }}{70}{figure.caption.82}% \contentsline {figure}{\numberline {7.18}{\ignorespaces Lanzar una nueva instancia (2/5).\relax }}{70}{figure.caption.81}%
\contentsline {figure}{\numberline {7.19}{\ignorespaces Lanzar una nueva instancia (3/5).\relax }}{71}{figure.caption.83}% \contentsline {figure}{\numberline {7.19}{\ignorespaces Lanzar una nueva instancia (3/5).\relax }}{71}{figure.caption.82}%
\contentsline {figure}{\numberline {7.20}{\ignorespaces Lanzar una nueva instancia (4/5).\relax }}{71}{figure.caption.84}% \contentsline {figure}{\numberline {7.20}{\ignorespaces Lanzar una nueva instancia (4/5).\relax }}{71}{figure.caption.83}%
\contentsline {figure}{\numberline {7.21}{\ignorespaces Lanzar una nueva instancia (5/5).\relax }}{72}{figure.caption.85}% \contentsline {figure}{\numberline {7.21}{\ignorespaces Lanzar una nueva instancia (5/5).\relax }}{72}{figure.caption.84}%
\contentsline {figure}{\numberline {7.22}{\ignorespaces Asignación de floating IP.\relax }}{73}{figure.caption.86}% \contentsline {figure}{\numberline {7.22}{\ignorespaces Asignación de floating IP.\relax }}{73}{figure.caption.85}%
\contentsline {figure}{\numberline {7.23}{\ignorespaces Asociación de floating IP.\relax }}{74}{figure.caption.87}% \contentsline {figure}{\numberline {7.23}{\ignorespaces Asociación de floating IP.\relax }}{74}{figure.caption.86}%
\contentsline {figure}{\numberline {7.24}{\ignorespaces Reglas security group por defecto.\relax }}{74}{figure.caption.88}% \contentsline {figure}{\numberline {7.24}{\ignorespaces Reglas security group por defecto.\relax }}{74}{figure.caption.87}%
\contentsline {figure}{\numberline {7.25}{\ignorespaces Agregar regla para tráfico ICMP.\relax }}{75}{figure.caption.89}% \contentsline {figure}{\numberline {7.25}{\ignorespaces Agregar regla para tráfico ICMP.\relax }}{75}{figure.caption.88}%
\contentsline {figure}{\numberline {7.26}{\ignorespaces Agregar regla para tráfico SSH.\relax }}{75}{figure.caption.90}% \contentsline {figure}{\numberline {7.26}{\ignorespaces Agregar regla para tráfico SSH.\relax }}{75}{figure.caption.89}%
\addvspace {10\p@ } \addvspace {10\p@ }
\addvspace {10\p@ } \addvspace {10\p@ }
\contentsline {figure}{\numberline {9.1}{\ignorespaces Diagrama de arquitectura para el escenario 1 de Linux Bridge\relax }}{89}{figure.caption.109}% \contentsline {figure}{\numberline {9.1}{\ignorespaces Diagrama de arquitectura para el escenario 1 de Linux Bridge\relax }}{89}{figure.caption.108}%
\contentsline {figure}{\numberline {9.2}{\ignorespaces Paquete ARP request capturado en la interfaz eth0 de la instancia 1\relax }}{94}{figure.caption.112}% \contentsline {figure}{\numberline {9.2}{\ignorespaces Paquete ARP request capturado en la interfaz eth0 de la instancia 1\relax }}{94}{figure.caption.111}%
\contentsline {figure}{\numberline {9.3}{\ignorespaces Paquete ARP request encapsulado en VXLAN capturado en la interfaz br-vxlan del nodo de cómputo 1\relax }}{94}{figure.caption.113}% \contentsline {figure}{\numberline {9.3}{\ignorespaces Paquete ARP request encapsulado en VXLAN capturado en la interfaz br-vxlan del nodo de cómputo 1\relax }}{94}{figure.caption.112}%
\contentsline {figure}{\numberline {9.4}{\ignorespaces Paquete ARP reply encapsulado en VXLAN capturado en la interfaz br-vxlan del nodo de cómputo 1\relax }}{96}{figure.caption.114}% \contentsline {figure}{\numberline {9.4}{\ignorespaces Paquete ARP reply encapsulado en VXLAN capturado en la interfaz br-vxlan del nodo de cómputo 1\relax }}{96}{figure.caption.113}%
\contentsline {figure}{\numberline {9.5}{\ignorespaces Paquete ARP reply capturado en la interfaz eth0 de la instancia 1\relax }}{97}{figure.caption.115}% \contentsline {figure}{\numberline {9.5}{\ignorespaces Paquete ARP reply capturado en la interfaz eth0 de la instancia 1\relax }}{97}{figure.caption.114}%
\contentsline {figure}{\numberline {9.6}{\ignorespaces Paquete ICMP request capturado en la interfaz eth0 de la instancia 1\relax }}{97}{figure.caption.117}% \contentsline {figure}{\numberline {9.6}{\ignorespaces Paquete ICMP request capturado en la interfaz eth0 de la instancia 1\relax }}{97}{figure.caption.116}%
\contentsline {figure}{\numberline {9.7}{\ignorespaces Paquete ICMP request encapsulado en VXLAN capturado en la interfaz br-vxlan del nodo de cómputo 1\relax }}{98}{figure.caption.118}% \contentsline {figure}{\numberline {9.7}{\ignorespaces Paquete ICMP request encapsulado en VXLAN capturado en la interfaz br-vxlan del nodo de cómputo 1\relax }}{98}{figure.caption.117}%
\contentsline {figure}{\numberline {9.8}{\ignorespaces Diagrama de arquitectura para el escenario 2 de Linux Bridge\relax }}{99}{figure.caption.120}% \contentsline {figure}{\numberline {9.8}{\ignorespaces Diagrama de arquitectura para el escenario 2 de Linux Bridge\relax }}{99}{figure.caption.119}%
\contentsline {figure}{\numberline {9.9}{\ignorespaces Paquete ICMP echo request encapsulado en VXLAN capturado en la interfaz br-vxlan en el nodo de cómputo 1\relax }}{106}{figure.caption.124}% \contentsline {figure}{\numberline {9.9}{\ignorespaces Paquete ICMP echo request encapsulado en VXLAN capturado en la interfaz br-vxlan en el nodo de cómputo 1\relax }}{106}{figure.caption.123}%
\contentsline {figure}{\numberline {9.10}{\ignorespaces Paquete ICMP echo request encapsulado en VXLAN capturado en la interfaz br-vxlan en el nodo de cómputo 2\relax }}{107}{figure.caption.128}% \contentsline {figure}{\numberline {9.10}{\ignorespaces Paquete ICMP echo request encapsulado en VXLAN capturado en la interfaz br-vxlan en el nodo de cómputo 2\relax }}{107}{figure.caption.127}%
\contentsline {figure}{\numberline {9.11}{\ignorespaces Diagrama de arquitectura para el escenario 3 de Linux Bridge\relax }}{107}{figure.caption.130}% \contentsline {figure}{\numberline {9.11}{\ignorespaces Diagrama de arquitectura para el escenario 3 de Linux Bridge\relax }}{107}{figure.caption.129}%
\contentsline {figure}{\numberline {9.12}{\ignorespaces Paquete ICMP echo request encapsulado en VXLAN capturado en la interfaz br-vxlan en el nodo de cómputo 1\relax }}{112}{figure.caption.134}% \contentsline {figure}{\numberline {9.12}{\ignorespaces Paquete ICMP echo request encapsulado en VXLAN capturado en la interfaz br-vxlan en el nodo de cómputo 1\relax }}{112}{figure.caption.133}%
\contentsline {figure}{\numberline {9.13}{\ignorespaces Paquete ARP request taggeado con el VLAN ID 100 capturado en la interfaz br-vlan en el nodo de red\relax }}{113}{figure.caption.137}% \contentsline {figure}{\numberline {9.13}{\ignorespaces Paquete ARP request taggeado con el VLAN ID 100 capturado en la interfaz br-vlan en el nodo de red\relax }}{113}{figure.caption.136}%
\contentsline {figure}{\numberline {9.14}{\ignorespaces Paquete ICMP echo request capturado en la interfaz br-vlan del nodo de red\relax }}{114}{figure.caption.139}% \contentsline {figure}{\numberline {9.14}{\ignorespaces Paquete ICMP echo request capturado en la interfaz br-vlan del nodo de red\relax }}{114}{figure.caption.138}%
\contentsline {figure}{\numberline {9.15}{\ignorespaces Diagrama de arquitectura para el escenario 4 de Linux Bridge\relax }}{115}{figure.caption.141}% \contentsline {figure}{\numberline {9.15}{\ignorespaces Diagrama de arquitectura para el escenario 4 de Linux Bridge\relax }}{115}{figure.caption.140}%
\contentsline {figure}{\numberline {9.16}{\ignorespaces Paquete ICMP echo request taggeado con el VLAN ID 100 capturado en la interfaz eth3 del router físico\relax }}{118}{figure.caption.145}% \contentsline {figure}{\numberline {9.16}{\ignorespaces Paquete ICMP echo request taggeado con el VLAN ID 100 capturado en la interfaz eth3 del router físico\relax }}{118}{figure.caption.144}%
\contentsline {figure}{\numberline {9.17}{\ignorespaces Paquete ICMP echo request capturado en la interfaz qg del router de Neutron\relax }}{118}{figure.caption.146}% \contentsline {figure}{\numberline {9.17}{\ignorespaces Paquete ICMP echo request capturado en la interfaz qg del router de Neutron\relax }}{118}{figure.caption.145}%
\contentsline {figure}{\numberline {9.18}{\ignorespaces Paquete ICMP echo request capturado en la interfaz qr del router de Neutron\relax }}{119}{figure.caption.149}% \contentsline {figure}{\numberline {9.18}{\ignorespaces Paquete ICMP echo request capturado en la interfaz qr del router de Neutron\relax }}{119}{figure.caption.148}%
\contentsline {figure}{\numberline {9.19}{\ignorespaces Diagrama de componentes de Open vSwitch\relax }}{120}{figure.caption.151}% \contentsline {figure}{\numberline {9.19}{\ignorespaces Diagrama de componentes de Open vSwitch\relax }}{120}{figure.caption.150}%
\contentsline {figure}{\numberline {9.20}{\ignorespaces Diagrama de arquitectura para el escenario 1 de Open vSwitch\relax }}{124}{figure.caption.152}% \contentsline {figure}{\numberline {9.20}{\ignorespaces Diagrama de arquitectura para el escenario 1 de Open vSwitch\relax }}{124}{figure.caption.151}%
\contentsline {figure}{\numberline {9.21}{\ignorespaces Paquete ARP request capturado en la interfaz eth0 de la instancia 1\relax }}{131}{figure.caption.155}% \contentsline {figure}{\numberline {9.21}{\ignorespaces Paquete ARP request capturado en la interfaz eth0 de la instancia 1\relax }}{131}{figure.caption.154}%
\contentsline {figure}{\numberline {9.22}{\ignorespaces ARP request encapsulado en VXLAN capturado en la interfaz br-vxlan del nodo de cómputo 1\relax }}{133}{figure.caption.156}% \contentsline {figure}{\numberline {9.22}{\ignorespaces ARP request encapsulado en VXLAN capturado en la interfaz br-vxlan del nodo de cómputo 1\relax }}{133}{figure.caption.155}%
\contentsline {figure}{\numberline {9.23}{\ignorespaces ARP reply encapsulado en VXLAN capturado en la interfaz br-vxlan del nodo de cómputo 1\relax }}{137}{figure.caption.157}% \contentsline {figure}{\numberline {9.23}{\ignorespaces ARP reply encapsulado en VXLAN capturado en la interfaz br-vxlan del nodo de cómputo 1\relax }}{137}{figure.caption.156}%
\contentsline {figure}{\numberline {9.24}{\ignorespaces Paquete ARP reply capturado en la interfaz eth0 de la instancia 1\relax }}{138}{figure.caption.158}% \contentsline {figure}{\numberline {9.24}{\ignorespaces Paquete ARP reply capturado en la interfaz eth0 de la instancia 1\relax }}{138}{figure.caption.157}%
\contentsline {figure}{\numberline {9.25}{\ignorespaces Paquete ICMP request capturado en la interfaz eth0 de la instancia 1\relax }}{138}{figure.caption.160}% \contentsline {figure}{\numberline {9.25}{\ignorespaces Paquete ICMP request capturado en la interfaz eth0 de la instancia 1\relax }}{138}{figure.caption.159}%
\contentsline {figure}{\numberline {9.26}{\ignorespaces Paquete ICMP request encapsulado en VXLAN 19 capturado en el bridge br-vxlan en el nodo de cómputo 1\relax }}{140}{figure.caption.161}% \contentsline {figure}{\numberline {9.26}{\ignorespaces Paquete ICMP request encapsulado en VXLAN 19 capturado en el bridge br-vxlan en el nodo de cómputo 1\relax }}{140}{figure.caption.160}%
\contentsline {figure}{\numberline {9.27}{\ignorespaces Diagrama de arquitectura para el escenario 2 de Open vSwitch\relax }}{141}{figure.caption.163}% \contentsline {figure}{\numberline {9.27}{\ignorespaces Diagrama de arquitectura para el escenario 2 de Open vSwitch\relax }}{141}{figure.caption.162}%
\contentsline {figure}{\numberline {9.28}{\ignorespaces Paquete ICMP echo request encapsulado en VXLAN capturado en la interfaz br-vxlan en el nodo de cómputo 1\relax }}{146}{figure.caption.167}% \contentsline {figure}{\numberline {9.28}{\ignorespaces Paquete ICMP echo request encapsulado en VXLAN capturado en la interfaz br-vxlan en el nodo de cómputo 1\relax }}{146}{figure.caption.166}%
\contentsline {figure}{\numberline {9.29}{\ignorespaces Paquete ICMP echo request encapsulado en VXLAN capturado en la interfaz br-vxlan en el nodo de cómputo 2\relax }}{147}{figure.caption.171}% \contentsline {figure}{\numberline {9.29}{\ignorespaces Paquete ICMP echo request encapsulado en VXLAN capturado en la interfaz br-vxlan en el nodo de cómputo 2\relax }}{147}{figure.caption.170}%
\contentsline {figure}{\numberline {9.30}{\ignorespaces Diagrama de arquitectura para el escenario 3 de Open vSwitch\relax }}{148}{figure.caption.173}% \contentsline {figure}{\numberline {9.30}{\ignorespaces Diagrama de arquitectura para el escenario 3 de Open vSwitch\relax }}{148}{figure.caption.172}%
\contentsline {figure}{\numberline {9.31}{\ignorespaces Paquete ICMP echo request encapsulado en VXLAN capturado en la interfaz br-vxlan en el nodo de cómputo 1\relax }}{152}{figure.caption.177}% \contentsline {figure}{\numberline {9.31}{\ignorespaces Paquete ICMP echo request encapsulado en VXLAN capturado en la interfaz br-vxlan en el nodo de cómputo 1\relax }}{152}{figure.caption.176}%
\contentsline {figure}{\numberline {9.32}{\ignorespaces Paquete ARP request taggeado con el VLAN ID 100 capturado en la interfaz br-vlan en el nodo de red\relax }}{153}{figure.caption.180}% \contentsline {figure}{\numberline {9.32}{\ignorespaces Paquete ARP request taggeado con el VLAN ID 100 capturado en la interfaz br-vlan en el nodo de red\relax }}{153}{figure.caption.179}%
\contentsline {figure}{\numberline {9.33}{\ignorespaces Paquete ICMP echo request capturado en la interfaz br-vlan del nodo de red\relax }}{154}{figure.caption.182}% \contentsline {figure}{\numberline {9.33}{\ignorespaces Paquete ICMP echo request capturado en la interfaz br-vlan del nodo de red\relax }}{154}{figure.caption.181}%
\contentsline {figure}{\numberline {9.34}{\ignorespaces Diagrama de arquitectura para el escenario 4 de Open vSwitch\relax }}{155}{figure.caption.184}% \contentsline {figure}{\numberline {9.34}{\ignorespaces Diagrama de arquitectura para el escenario 4 de Open vSwitch\relax }}{155}{figure.caption.183}%
\contentsline {figure}{\numberline {9.35}{\ignorespaces Paquete ICMP echo request taggeado con el VLAN ID 100 capturado en la interfaz eth3 del router físico\relax }}{158}{figure.caption.188}% \contentsline {figure}{\numberline {9.35}{\ignorespaces Paquete ICMP echo request taggeado con el VLAN ID 100 capturado en la interfaz eth3 del router físico\relax }}{158}{figure.caption.187}%
\contentsline {figure}{\numberline {9.36}{\ignorespaces Paquete ICMP echo request capturado en la interfaz qg del router de Neutron\relax }}{158}{figure.caption.189}% \contentsline {figure}{\numberline {9.36}{\ignorespaces Paquete ICMP echo request capturado en la interfaz qg del router de Neutron\relax }}{158}{figure.caption.188}%
\contentsline {figure}{\numberline {9.37}{\ignorespaces Paquete ICMP echo request capturado en la interfaz qr del router de Neutron\relax }}{159}{figure.caption.192}% \contentsline {figure}{\numberline {9.37}{\ignorespaces Paquete ICMP echo request capturado en la interfaz qr del router de Neutron\relax }}{159}{figure.caption.191}%
\addvspace {10\p@ } \addvspace {10\p@ }
\addvspace {10\p@ } \addvspace {10\p@ }
\addvspace {10\p@ } \addvspace {10\p@ }
\contentsline {figure}{\numberline {1.1}{\ignorespaces Arquitectura diseñada para desarrollo\relax }}{172}{figure.caption.196}% \contentsline {figure}{\numberline {1.1}{\ignorespaces Arquitectura diseñada para desarrollo\relax }}{172}{figure.caption.195}%
\contentsline {figure}{\numberline {1.2}{\ignorespaces Arquitectura diseñada para producción\relax }}{173}{figure.caption.197}% \contentsline {figure}{\numberline {1.2}{\ignorespaces Arquitectura diseñada para producción\relax }}{173}{figure.caption.196}%
\addvspace {10\p@ } \addvspace {10\p@ }
\addvspace {10\p@ } \addvspace {10\p@ }
\addvspace {10\p@ } \addvspace {10\p@ }
\contentsline {figure}{\numberline {3.1}{\ignorespaces Nueva conexión en virt-manager.\relax }}{219}{figure.caption.200}% \contentsline {figure}{\numberline {3.1}{\ignorespaces Nueva conexión en virt-manager.\relax }}{218}{figure.caption.199}%
\contentsline {figure}{\numberline {3.2}{\ignorespaces Configuración de redes virtuales en virt-manager.\relax }}{220}{figure.caption.201}% \contentsline {figure}{\numberline {3.2}{\ignorespaces Configuración de redes virtuales en virt-manager.\relax }}{219}{figure.caption.200}%
\contentsfinish \contentsfinish
...@@ -10,24 +10,24 @@ ...@@ -10,24 +10,24 @@
\addvspace {10\p@ } \addvspace {10\p@ }
\addvspace {10\p@ } \addvspace {10\p@ }
\addvspace {10\p@ } \addvspace {10\p@ }
\contentsline {table}{\numberline {9.1}{\ignorespaces Sabores creados para análisis de red\relax }}{83}{table.caption.91}% \contentsline {table}{\numberline {9.1}{\ignorespaces Sabores creados para análisis de red\relax }}{83}{table.caption.90}%
\contentsline {table}{\numberline {9.2}{\ignorespaces Imágenes creadas para análisis de red\relax }}{83}{table.caption.92}% \contentsline {table}{\numberline {9.2}{\ignorespaces Imágenes creadas para análisis de red\relax }}{83}{table.caption.91}%
\contentsline {table}{\numberline {9.3}{\ignorespaces Redes provider creadas para análisis de red\relax }}{84}{table.caption.93}% \contentsline {table}{\numberline {9.3}{\ignorespaces Redes provider creadas para análisis de red\relax }}{84}{table.caption.92}%
\contentsline {table}{\numberline {9.4}{\ignorespaces Subredes provider creadas para análisis de red\relax }}{84}{table.caption.94}% \contentsline {table}{\numberline {9.4}{\ignorespaces Subredes provider creadas para análisis de red\relax }}{84}{table.caption.93}%
\contentsline {table}{\numberline {9.5}{\ignorespaces Escenario 1: detalles de la subred 1\relax }}{85}{table.caption.95}% \contentsline {table}{\numberline {9.5}{\ignorespaces Escenario 1: detalles de la subred 1\relax }}{85}{table.caption.94}%
\contentsline {table}{\numberline {9.6}{\ignorespaces Escenario 1: detalles de las instancias\relax }}{85}{table.caption.96}% \contentsline {table}{\numberline {9.6}{\ignorespaces Escenario 1: detalles de las instancias\relax }}{85}{table.caption.95}%
\contentsline {table}{\numberline {9.7}{\ignorespaces Escenario 2: detalles de la subred 1\relax }}{86}{table.caption.97}% \contentsline {table}{\numberline {9.7}{\ignorespaces Escenario 2: detalles de la subred 1\relax }}{86}{table.caption.96}%
\contentsline {table}{\numberline {9.8}{\ignorespaces Escenario 2: detalles de la subred 2\relax }}{86}{table.caption.98}% \contentsline {table}{\numberline {9.8}{\ignorespaces Escenario 2: detalles de la subred 2\relax }}{86}{table.caption.97}%
\contentsline {table}{\numberline {9.9}{\ignorespaces Escenario 2: detalles de las instancias\relax }}{86}{table.caption.99}% \contentsline {table}{\numberline {9.9}{\ignorespaces Escenario 2: detalles de las instancias\relax }}{86}{table.caption.98}%
\contentsline {table}{\numberline {9.10}{\ignorespaces Escenario 2: detalles del router\relax }}{86}{table.caption.100}% \contentsline {table}{\numberline {9.10}{\ignorespaces Escenario 2: detalles del router\relax }}{86}{table.caption.99}%
\contentsline {table}{\numberline {9.11}{\ignorespaces Escenario 3: detalles de la subred 1\relax }}{87}{table.caption.101}% \contentsline {table}{\numberline {9.11}{\ignorespaces Escenario 3: detalles de la subred 1\relax }}{87}{table.caption.100}%
\contentsline {table}{\numberline {9.12}{\ignorespaces Escenario 3: detalles de la subred provider vlan\relax }}{87}{table.caption.102}% \contentsline {table}{\numberline {9.12}{\ignorespaces Escenario 3: detalles de la subred provider vlan\relax }}{87}{table.caption.101}%
\contentsline {table}{\numberline {9.13}{\ignorespaces Escenario 3: detalles de las instancias\relax }}{87}{table.caption.103}% \contentsline {table}{\numberline {9.13}{\ignorespaces Escenario 3: detalles de las instancias\relax }}{87}{table.caption.102}%
\contentsline {table}{\numberline {9.14}{\ignorespaces Escenario 3: detalles del router\relax }}{87}{table.caption.104}% \contentsline {table}{\numberline {9.14}{\ignorespaces Escenario 3: detalles del router\relax }}{87}{table.caption.103}%
\contentsline {table}{\numberline {9.15}{\ignorespaces Escenario 4: detalles de la subred 1\relax }}{88}{table.caption.105}% \contentsline {table}{\numberline {9.15}{\ignorespaces Escenario 4: detalles de la subred 1\relax }}{88}{table.caption.104}%
\contentsline {table}{\numberline {9.16}{\ignorespaces Escenario 4: detalles de la subred provider vlan\relax }}{89}{table.caption.106}% \contentsline {table}{\numberline {9.16}{\ignorespaces Escenario 4: detalles de la subred provider vlan\relax }}{89}{table.caption.105}%
\contentsline {table}{\numberline {9.17}{\ignorespaces Escenario 4: detalles de las instancias\relax }}{89}{table.caption.107}% \contentsline {table}{\numberline {9.17}{\ignorespaces Escenario 4: detalles de las instancias\relax }}{89}{table.caption.106}%
\contentsline {table}{\numberline {9.18}{\ignorespaces Escenario 4: detalles del router\relax }}{89}{table.caption.108}% \contentsline {table}{\numberline {9.18}{\ignorespaces Escenario 4: detalles del router\relax }}{89}{table.caption.107}%
\addvspace {10\p@ } \addvspace {10\p@ }
\addvspace {10\p@ } \addvspace {10\p@ }
\addvspace {10\p@ } \addvspace {10\p@ }
......
...@@ -33,88 +33,89 @@ ...@@ -33,88 +33,89 @@
\BOOKMARK [2][-]{subsection.5.2.1}{Convenciones}{section.5.2}% 33 \BOOKMARK [2][-]{subsection.5.2.1}{Convenciones}{section.5.2}% 33
\BOOKMARK [2][-]{subsection.5.2.2}{Inventario}{section.5.2}% 34 \BOOKMARK [2][-]{subsection.5.2.2}{Inventario}{section.5.2}% 34
\BOOKMARK [2][-]{subsection.5.2.3}{openstack\137user\137config.yml}{section.5.2}% 35 \BOOKMARK [2][-]{subsection.5.2.3}{openstack\137user\137config.yml}{section.5.2}% 35
\BOOKMARK [1][-]{section.5.3}{Ejecuci\363n de playbooks}{chapter.5}% 36 \BOOKMARK [2][-]{subsection.5.2.4}{user\137variables.yml}{section.5.2}% 36
\BOOKMARK [2][-]{subsection.5.3.1}{setup-hosts.yml}{section.5.3}% 37 \BOOKMARK [1][-]{section.5.3}{Ejecuci\363n de playbooks}{chapter.5}% 37
\BOOKMARK [2][-]{subsection.5.3.2}{install-haproxy.yml}{section.5.3}% 38 \BOOKMARK [2][-]{subsection.5.3.1}{setup-hosts.yml}{section.5.3}% 38
\BOOKMARK [2][-]{subsection.5.3.3}{setup-infrastructure.yml}{section.5.3}% 39 \BOOKMARK [2][-]{subsection.5.3.2}{install-haproxy.yml}{section.5.3}% 39
\BOOKMARK [2][-]{subsection.5.3.4}{setup-openstack.yml}{section.5.3}% 40 \BOOKMARK [2][-]{subsection.5.3.3}{setup-infrastructure.yml}{section.5.3}% 40
\BOOKMARK [1][-]{section.5.4}{Verificaci\363n}{chapter.5}% 41 \BOOKMARK [2][-]{subsection.5.3.4}{setup-openstack.yml}{section.5.3}% 41
\BOOKMARK [0][-]{chapter.6}{Dise\361o}{}% 42 \BOOKMARK [1][-]{section.5.4}{Verificaci\363n}{chapter.5}% 42
\BOOKMARK [1][-]{section.6.1}{Dise\361o de arquitectura}{chapter.6}% 43 \BOOKMARK [0][-]{chapter.6}{Dise\361o}{}% 43
\BOOKMARK [2][-]{subsection.6.1.1}{Arquitectura desarrollo}{section.6.1}% 44 \BOOKMARK [1][-]{section.6.1}{Dise\361o de arquitectura}{chapter.6}% 44
\BOOKMARK [2][-]{subsection.6.1.2}{Arquitectura producci\363n}{section.6.1}% 45 \BOOKMARK [2][-]{subsection.6.1.1}{Arquitectura desarrollo}{section.6.1}% 45
\BOOKMARK [2][-]{subsection.6.1.3}{Distribuci\363n de los servicios}{section.6.1}% 46 \BOOKMARK [2][-]{subsection.6.1.2}{Arquitectura producci\363n}{section.6.1}% 46
\BOOKMARK [1][-]{section.6.2}{Ambiente de trabajo}{chapter.6}% 47 \BOOKMARK [2][-]{subsection.6.1.3}{Distribuci\363n de los servicios}{section.6.1}% 47
\BOOKMARK [2][-]{subsection.6.2.1}{Hardware utilizado}{section.6.2}% 48 \BOOKMARK [1][-]{section.6.2}{Ambiente de trabajo}{chapter.6}% 48
\BOOKMARK [2][-]{subsection.6.2.2}{Conexi\363n remota hacia el servidor renata}{section.6.2}% 49 \BOOKMARK [2][-]{subsection.6.2.1}{Hardware utilizado}{section.6.2}% 49
\BOOKMARK [2][-]{subsection.6.2.3}{Especificaciones servidor renata}{section.6.2}% 50 \BOOKMARK [2][-]{subsection.6.2.2}{Conexi\363n remota hacia el servidor renata}{section.6.2}% 50
\BOOKMARK [2][-]{subsection.6.2.4}{Acceso al exterior desde nodos}{section.6.2}% 51 \BOOKMARK [2][-]{subsection.6.2.3}{Especificaciones servidor renata}{section.6.2}% 51
\BOOKMARK [0][-]{chapter.7}{Interaccci\363n}{}% 52 \BOOKMARK [2][-]{subsection.6.2.4}{Acceso al exterior desde nodos}{section.6.2}% 52
\BOOKMARK [1][-]{section.7.1}{Configuraciones de administrador}{chapter.7}% 53 \BOOKMARK [0][-]{chapter.7}{Interaccci\363n}{}% 53
\BOOKMARK [1][-]{section.7.2}{Interacci\363n de un usuario}{chapter.7}% 54 \BOOKMARK [1][-]{section.7.1}{Configuraciones de administrador}{chapter.7}% 54
\BOOKMARK [1][-]{section.7.3}{Acceso a una instancia}{chapter.7}% 55 \BOOKMARK [1][-]{section.7.2}{Interacci\363n de un usuario}{chapter.7}% 55
\BOOKMARK [2][-]{subsection.7.3.1}{Por SPICE}{section.7.3}% 56 \BOOKMARK [1][-]{section.7.3}{Acceso a una instancia}{chapter.7}% 56
\BOOKMARK [2][-]{subsection.7.3.2}{Por SSH}{section.7.3}% 57 \BOOKMARK [2][-]{subsection.7.3.1}{Por SPICE}{section.7.3}% 57
\BOOKMARK [2][-]{subsection.7.3.3}{Por virsh}{section.7.3}% 58 \BOOKMARK [2][-]{subsection.7.3.2}{Por SSH}{section.7.3}% 58
\BOOKMARK [0][-]{chapter.8}{Gesti\363n del Datacenter}{}% 59 \BOOKMARK [2][-]{subsection.7.3.3}{Por virsh}{section.7.3}% 59
\BOOKMARK [1][-]{section.8.1}{Recuperaci\363n ante fallas}{chapter.8}% 60 \BOOKMARK [0][-]{chapter.8}{Gesti\363n del Datacenter}{}% 60
\BOOKMARK [2][-]{subsection.8.1.1}{Verificar el estado general de OpenStack}{section.8.1}% 61 \BOOKMARK [1][-]{section.8.1}{Recuperaci\363n ante fallas}{chapter.8}% 61
\BOOKMARK [2][-]{subsection.8.1.2}{Verificar estado de los componentes de la infraestructura}{section.8.1}% 62 \BOOKMARK [2][-]{subsection.8.1.1}{Verificar el estado general de OpenStack}{section.8.1}% 62
\BOOKMARK [2][-]{subsection.8.1.3}{Solucionar problemas}{section.8.1}% 63 \BOOKMARK [2][-]{subsection.8.1.2}{Verificar estado de los componentes de la infraestructura}{section.8.1}% 63
\BOOKMARK [2][-]{subsection.8.1.4}{Problemas con Ceph}{section.8.1}% 64 \BOOKMARK [2][-]{subsection.8.1.3}{Solucionar problemas}{section.8.1}% 64
\BOOKMARK [1][-]{section.8.2}{Agregar y remover nodos}{chapter.8}% 65 \BOOKMARK [2][-]{subsection.8.1.4}{Problemas con Ceph}{section.8.1}% 65
\BOOKMARK [2][-]{subsection.8.2.1}{Agregar nodo de C\363mputo}{section.8.2}% 66 \BOOKMARK [1][-]{section.8.2}{Agregar y remover nodos}{chapter.8}% 66
\BOOKMARK [2][-]{subsection.8.2.2}{Eliminar un nodo de c\363mputo}{section.8.2}% 67 \BOOKMARK [2][-]{subsection.8.2.1}{Agregar nodo de C\363mputo}{section.8.2}% 67
\BOOKMARK [2][-]{subsection.8.2.3}{Infraestructura}{section.8.2}% 68 \BOOKMARK [2][-]{subsection.8.2.2}{Eliminar un nodo de c\363mputo}{section.8.2}% 68
\BOOKMARK [2][-]{subsection.8.2.4}{Storage}{section.8.2}% 69 \BOOKMARK [2][-]{subsection.8.2.3}{Infraestructura}{section.8.2}% 69
\BOOKMARK [1][-]{section.8.3}{Actualizar versi\363n}{chapter.8}% 70 \BOOKMARK [2][-]{subsection.8.2.4}{Storage}{section.8.2}% 70
\BOOKMARK [0][-]{chapter.9}{An\341lisis del m\363dulo de red}{}% 71 \BOOKMARK [1][-]{section.8.3}{Actualizar versi\363n}{chapter.8}% 71
\BOOKMARK [1][-]{section.9.1}{Escenarios de prueba}{chapter.9}% 72 \BOOKMARK [0][-]{chapter.9}{An\341lisis del m\363dulo de red}{}% 72
\BOOKMARK [2][-]{subsection.9.1.1}{Escenario 1: tr\341fico este-oeste \(misma red tenant\)}{section.9.1}% 73 \BOOKMARK [1][-]{section.9.1}{Escenarios de prueba}{chapter.9}% 73
\BOOKMARK [2][-]{subsection.9.1.2}{Escenario 2: tr\341fico este-oeste \(distintas redes tenant\)}{section.9.1}% 74 \BOOKMARK [2][-]{subsection.9.1.1}{Escenario 1: tr\341fico este-oeste \(misma red tenant\)}{section.9.1}% 74
\BOOKMARK [2][-]{subsection.9.1.3}{Escenario 3: tr\341fico norte-sur \(acceso hacia el exterior\)}{section.9.1}% 75 \BOOKMARK [2][-]{subsection.9.1.2}{Escenario 2: tr\341fico este-oeste \(distintas redes tenant\)}{section.9.1}% 75
\BOOKMARK [2][-]{subsection.9.1.4}{Escenario 4: tr\341fico norte-sur \(acceso desde el exterior\)}{section.9.1}% 76 \BOOKMARK [2][-]{subsection.9.1.3}{Escenario 3: tr\341fico norte-sur \(acceso hacia el exterior\)}{section.9.1}% 76
\BOOKMARK [1][-]{section.9.2}{Linux bridge}{chapter.9}% 77 \BOOKMARK [2][-]{subsection.9.1.4}{Escenario 4: tr\341fico norte-sur \(acceso desde el exterior\)}{section.9.1}% 77
\BOOKMARK [2][-]{subsection.9.2.1}{Escenario 1}{section.9.2}% 78 \BOOKMARK [1][-]{section.9.2}{Linux bridge}{chapter.9}% 78
\BOOKMARK [2][-]{subsection.9.2.2}{Escenario 2}{section.9.2}% 79 \BOOKMARK [2][-]{subsection.9.2.1}{Escenario 1}{section.9.2}% 79
\BOOKMARK [2][-]{subsection.9.2.3}{Escenario 3}{section.9.2}% 80 \BOOKMARK [2][-]{subsection.9.2.2}{Escenario 2}{section.9.2}% 80
\BOOKMARK [2][-]{subsection.9.2.4}{Escenario 4}{section.9.2}% 81 \BOOKMARK [2][-]{subsection.9.2.3}{Escenario 3}{section.9.2}% 81
\BOOKMARK [1][-]{section.9.3}{Open vSwitch}{chapter.9}% 82 \BOOKMARK [2][-]{subsection.9.2.4}{Escenario 4}{section.9.2}% 82
\BOOKMARK [2][-]{subsection.9.3.1}{Escenario 1}{section.9.3}% 83 \BOOKMARK [1][-]{section.9.3}{Open vSwitch}{chapter.9}% 83
\BOOKMARK [2][-]{subsection.9.3.2}{Escenario 2}{section.9.3}% 84 \BOOKMARK [2][-]{subsection.9.3.1}{Escenario 1}{section.9.3}% 84
\BOOKMARK [2][-]{subsection.9.3.3}{Escenario 3}{section.9.3}% 85 \BOOKMARK [2][-]{subsection.9.3.2}{Escenario 2}{section.9.3}% 85
\BOOKMARK [2][-]{subsection.9.3.4}{Escenario 4}{section.9.3}% 86 \BOOKMARK [2][-]{subsection.9.3.3}{Escenario 3}{section.9.3}% 86
\BOOKMARK [1][-]{section.9.4}{Comparativa de drivers}{chapter.9}% 87 \BOOKMARK [2][-]{subsection.9.3.4}{Escenario 4}{section.9.3}% 87
\BOOKMARK [1][-]{section.9.5}{Funcionalidades avanzadas}{chapter.9}% 88 \BOOKMARK [1][-]{section.9.4}{Comparativa de drivers}{chapter.9}% 88
\BOOKMARK [2][-]{subsection.9.5.1}{Layer 3 High Availability}{section.9.5}% 89 \BOOKMARK [1][-]{section.9.5}{Funcionalidades avanzadas}{chapter.9}% 89
\BOOKMARK [0][-]{chapter.10}{Trabajo a futuro}{}% 90 \BOOKMARK [2][-]{subsection.9.5.1}{Layer 3 High Availability}{section.9.5}% 90
\BOOKMARK [0][-]{chapter.11}{Conclusiones}{}% 91 \BOOKMARK [0][-]{chapter.10}{Trabajo a futuro}{}% 91
\BOOKMARK [0][-]{chapter*.194}{Referencias bibliogr\341ficas}{}% 92 \BOOKMARK [0][-]{chapter.11}{Conclusiones}{}% 92
\BOOKMARK [0][-]{chapter*.194}{Glosario}{}% 93 \BOOKMARK [0][-]{chapter*.193}{Referencias bibliogr\341ficas}{}% 93
\BOOKMARK [0][-]{section*.195}{Ap\351ndices}{}% 94 \BOOKMARK [0][-]{chapter*.193}{Glosario}{}% 94
\BOOKMARK [0][-]{appendix.Alph1}{Im\341genes}{}% 95 \BOOKMARK [0][-]{section*.194}{Ap\351ndices}{}% 95
\BOOKMARK [0][-]{section*.198}{Anexos}{}% 96 \BOOKMARK [0][-]{appendix.Alph1}{Im\341genes}{}% 96
\BOOKMARK [0][-]{appendix.Anexo.1}{Instalaci\363n versi\363n Queens}{}% 97 \BOOKMARK [0][-]{section*.197}{Anexos}{}% 97
\BOOKMARK [1][-]{section.Anexo.1.1}{Preparaci\363n de nodos}{appendix.Anexo.1}% 98 \BOOKMARK [0][-]{appendix.Anexo.1}{Instalaci\363n versi\363n Queens}{}% 98
\BOOKMARK [1][-]{section.Anexo.1.2}{Configuraci\363n}{appendix.Anexo.1}% 99 \BOOKMARK [1][-]{section.Anexo.1.1}{Preparaci\363n de nodos}{appendix.Anexo.1}% 99
\BOOKMARK [2][-]{subsection.Anexo.1.2.1}{Configuraci\363n claves SSH}{section.Anexo.1.2}% 100 \BOOKMARK [1][-]{section.Anexo.1.2}{Configuraci\363n}{appendix.Anexo.1}% 100
\BOOKMARK [2][-]{subsection.Anexo.1.2.2}{Archivos de configuraci\363n OSA}{section.Anexo.1.2}% 101 \BOOKMARK [2][-]{subsection.Anexo.1.2.1}{Configuraci\363n claves SSH}{section.Anexo.1.2}% 101
\BOOKMARK [2][-]{subsection.Anexo.1.2.3}{Generaci\363n de claves}{section.Anexo.1.2}% 102 \BOOKMARK [2][-]{subsection.Anexo.1.2.2}{Archivos de configuraci\363n OSA}{section.Anexo.1.2}% 102
\BOOKMARK [2][-]{subsection.Anexo.1.2.4}{Correcciones}{section.Anexo.1.2}% 103 \BOOKMARK [2][-]{subsection.Anexo.1.2.3}{Generaci\363n de claves}{section.Anexo.1.2}% 103
\BOOKMARK [1][-]{section.Anexo.1.3}{Inconvenientes}{appendix.Anexo.1}% 104 \BOOKMARK [2][-]{subsection.Anexo.1.2.4}{Correcciones}{section.Anexo.1.2}% 104
\BOOKMARK [2][-]{subsection.Anexo.1.3.1}{Bloqueo de paquetes}{section.Anexo.1.3}% 105 \BOOKMARK [1][-]{section.Anexo.1.3}{Inconvenientes}{appendix.Anexo.1}% 105
\BOOKMARK [2][-]{subsection.Anexo.1.3.2}{M\363dulo de seguridad SELinux}{section.Anexo.1.3}% 106 \BOOKMARK [2][-]{subsection.Anexo.1.3.1}{Bloqueo de paquetes}{section.Anexo.1.3}% 106
\BOOKMARK [2][-]{subsection.Anexo.1.3.3}{Percona-release en playbook setup-infrastructure}{section.Anexo.1.3}% 107 \BOOKMARK [2][-]{subsection.Anexo.1.3.2}{M\363dulo de seguridad SELinux}{section.Anexo.1.3}% 107
\BOOKMARK [2][-]{subsection.Anexo.1.3.4}{Subred reservada}{section.Anexo.1.3}% 108 \BOOKMARK [2][-]{subsection.Anexo.1.3.3}{Percona-release en playbook setup-infrastructure}{section.Anexo.1.3}% 108
\BOOKMARK [2][-]{subsection.Anexo.1.3.5}{Versiones de librer\355as y SO}{section.Anexo.1.3}% 109 \BOOKMARK [2][-]{subsection.Anexo.1.3.4}{Subred reservada}{section.Anexo.1.3}% 109
\BOOKMARK [2][-]{subsection.Anexo.1.3.6}{Soporte para CentOS}{section.Anexo.1.3}% 110 \BOOKMARK [2][-]{subsection.Anexo.1.3.5}{Versiones de librer\355as y SO}{section.Anexo.1.3}% 110
\BOOKMARK [0][-]{appendix.Anexo.2}{Instalaci\363n versi\363n Stein}{}% 111 \BOOKMARK [2][-]{subsection.Anexo.1.3.6}{Soporte para CentOS}{section.Anexo.1.3}% 111
\BOOKMARK [1][-]{section.Anexo.2.1}{Preparaci\363n de nodos}{appendix.Anexo.2}% 112 \BOOKMARK [0][-]{appendix.Anexo.2}{Instalaci\363n versi\363n Stein}{}% 112
\BOOKMARK [1][-]{section.Anexo.2.2}{Configuraci\363n archivos OSA}{appendix.Anexo.2}% 113 \BOOKMARK [1][-]{section.Anexo.2.1}{Preparaci\363n de nodos}{appendix.Anexo.2}% 113
\BOOKMARK [1][-]{section.Anexo.2.3}{Ejecuci\363n de playbooks}{appendix.Anexo.2}% 114 \BOOKMARK [1][-]{section.Anexo.2.2}{Configuraci\363n archivos OSA}{appendix.Anexo.2}% 114
\BOOKMARK [1][-]{section.Anexo.2.4}{Cambios para driver OVS}{appendix.Anexo.2}% 115 \BOOKMARK [1][-]{section.Anexo.2.3}{Ejecuci\363n de playbooks}{appendix.Anexo.2}% 115
\BOOKMARK [0][-]{appendix.Anexo.3}{Virtualizaci\363n con KVM}{}% 116 \BOOKMARK [1][-]{section.Anexo.2.4}{Cambios para driver OVS}{appendix.Anexo.2}% 116
\BOOKMARK [1][-]{section.Anexo.3.1}{Utilizaci\363n virt-manager}{appendix.Anexo.3}% 117 \BOOKMARK [0][-]{appendix.Anexo.3}{Virtualizaci\363n con KVM}{}% 117
\BOOKMARK [2][-]{subsection.Anexo.3.1.1}{Conexi\363n remota}{section.Anexo.3.1}% 118 \BOOKMARK [1][-]{section.Anexo.3.1}{Utilizaci\363n virt-manager}{appendix.Anexo.3}% 118
\BOOKMARK [2][-]{subsection.Anexo.3.1.2}{Creaci\363n de una red}{section.Anexo.3.1}% 119 \BOOKMARK [2][-]{subsection.Anexo.3.1.1}{Conexi\363n remota}{section.Anexo.3.1}% 119
\BOOKMARK [2][-]{subsection.Anexo.3.1.3}{Crear nodo}{section.Anexo.3.1}% 120 \BOOKMARK [2][-]{subsection.Anexo.3.1.2}{Creaci\363n de una red}{section.Anexo.3.1}% 120
\BOOKMARK [2][-]{subsection.Anexo.3.1.3}{Crear nodo}{section.Anexo.3.1}% 121
No preview for this file type
No preview for this file type
...@@ -72,8 +72,9 @@ ...@@ -72,8 +72,9 @@
\contentsline {subsubsection}{\numberline {5.1.1.1}Interfaces de red}{38}{subsubsection.5.1.1.1}% \contentsline {subsubsection}{\numberline {5.1.1.1}Interfaces de red}{38}{subsubsection.5.1.1.1}%
\contentsline {section}{\numberline {5.2}Configuración OSA}{40}{section.5.2}% \contentsline {section}{\numberline {5.2}Configuración OSA}{40}{section.5.2}%
\contentsline {subsection}{\numberline {5.2.1}Convenciones}{40}{subsection.5.2.1}% \contentsline {subsection}{\numberline {5.2.1}Convenciones}{40}{subsection.5.2.1}%
\contentsline {subsection}{\numberline {5.2.2}Inventario}{42}{subsection.5.2.2}% \contentsline {subsection}{\numberline {5.2.2}Inventario}{41}{subsection.5.2.2}%
\contentsline {subsection}{\numberline {5.2.3}openstack\_user\_config.yml}{43}{subsection.5.2.3}% \contentsline {subsection}{\numberline {5.2.3}openstack\_user\_config.yml}{42}{subsection.5.2.3}%
\contentsline {subsection}{\numberline {5.2.4}user\_variables.yml}{43}{subsection.5.2.4}%
\contentsline {section}{\numberline {5.3}Ejecución de playbooks}{43}{section.5.3}% \contentsline {section}{\numberline {5.3}Ejecución de playbooks}{43}{section.5.3}%
\contentsline {subsection}{\numberline {5.3.1}setup-hosts.yml}{43}{subsection.5.3.1}% \contentsline {subsection}{\numberline {5.3.1}setup-hosts.yml}{43}{subsection.5.3.1}%
\contentsline {subsection}{\numberline {5.3.2}install-haproxy.yml}{44}{subsection.5.3.2}% \contentsline {subsection}{\numberline {5.3.2}install-haproxy.yml}{44}{subsection.5.3.2}%
...@@ -136,77 +137,77 @@ ...@@ -136,77 +137,77 @@
\contentsline {subsection}{\numberline {9.2.1}Escenario 1}{89}{subsection.9.2.1}% \contentsline {subsection}{\numberline {9.2.1}Escenario 1}{89}{subsection.9.2.1}%
\contentsline {subsubsection}{\numberline {9.2.1.1}Análisis de componentes}{90}{subsubsection.9.2.1.1}% \contentsline {subsubsection}{\numberline {9.2.1.1}Análisis de componentes}{90}{subsubsection.9.2.1.1}%
\contentsline {subsubsection}{\numberline {9.2.1.2}Análisis de tráfico}{93}{subsubsection.9.2.1.2}% \contentsline {subsubsection}{\numberline {9.2.1.2}Análisis de tráfico}{93}{subsubsection.9.2.1.2}%
\contentsline {subparagraph}{Paso 1}{93}{section*.110}% \contentsline {subparagraph}{Paso 1}{93}{section*.109}%
\contentsline {subparagraph}{Paso 2}{93}{section*.111}% \contentsline {subparagraph}{Paso 2}{93}{section*.110}%
\contentsline {subparagraph}{Paso 3}{97}{section*.116}% \contentsline {subparagraph}{Paso 3}{97}{section*.115}%
\contentsline {subparagraph}{Paso 4}{98}{section*.119}% \contentsline {subparagraph}{Paso 4}{98}{section*.118}%
\contentsline {subsection}{\numberline {9.2.2}Escenario 2}{99}{subsection.9.2.2}% \contentsline {subsection}{\numberline {9.2.2}Escenario 2}{99}{subsection.9.2.2}%
\contentsline {subsubsection}{\numberline {9.2.2.1}Análisis de componentes}{99}{subsubsection.9.2.2.1}% \contentsline {subsubsection}{\numberline {9.2.2.1}Análisis de componentes}{99}{subsubsection.9.2.2.1}%
\contentsline {subsubsection}{\numberline {9.2.2.2}Análisis de tráfico}{105}{subsubsection.9.2.2.2}% \contentsline {subsubsection}{\numberline {9.2.2.2}Análisis de tráfico}{105}{subsubsection.9.2.2.2}%
\contentsline {subparagraph}{Paso 1}{105}{section*.121}% \contentsline {subparagraph}{Paso 1}{105}{section*.120}%
\contentsline {subparagraph}{Paso 2}{105}{section*.122}% \contentsline {subparagraph}{Paso 2}{105}{section*.121}%
\contentsline {subparagraph}{Paso 3}{105}{section*.123}% \contentsline {subparagraph}{Paso 3}{105}{section*.122}%
\contentsline {subparagraph}{Paso 4}{106}{section*.125}% \contentsline {subparagraph}{Paso 4}{106}{section*.124}%
\contentsline {subparagraph}{Paso 5}{106}{section*.126}% \contentsline {subparagraph}{Paso 5}{106}{section*.125}%
\contentsline {subparagraph}{Paso 6}{106}{section*.127}% \contentsline {subparagraph}{Paso 6}{106}{section*.126}%
\contentsline {subparagraph}{Paso 7}{106}{section*.129}% \contentsline {subparagraph}{Paso 7}{106}{section*.128}%
\contentsline {subsection}{\numberline {9.2.3}Escenario 3}{107}{subsection.9.2.3}% \contentsline {subsection}{\numberline {9.2.3}Escenario 3}{107}{subsection.9.2.3}%
\contentsline {subsubsection}{\numberline {9.2.3.1}Análisis de componentes}{108}{subsubsection.9.2.3.1}% \contentsline {subsubsection}{\numberline {9.2.3.1}Análisis de componentes}{108}{subsubsection.9.2.3.1}%
\contentsline {subsubsection}{\numberline {9.2.3.2}Análisis de tráfico}{111}{subsubsection.9.2.3.2}% \contentsline {subsubsection}{\numberline {9.2.3.2}Análisis de tráfico}{111}{subsubsection.9.2.3.2}%
\contentsline {subparagraph}{Paso 1}{111}{section*.131}% \contentsline {subparagraph}{Paso 1}{111}{section*.130}%
\contentsline {subparagraph}{Paso 2}{111}{section*.132}% \contentsline {subparagraph}{Paso 2}{111}{section*.131}%
\contentsline {subparagraph}{Paso 3}{111}{section*.133}% \contentsline {subparagraph}{Paso 3}{111}{section*.132}%
\contentsline {subparagraph}{Paso 4}{112}{section*.135}% \contentsline {subparagraph}{Paso 4}{112}{section*.134}%
\contentsline {subparagraph}{Paso 5}{112}{section*.136}% \contentsline {subparagraph}{Paso 5}{112}{section*.135}%
\contentsline {subparagraph}{Paso 6}{113}{section*.138}% \contentsline {subparagraph}{Paso 6}{113}{section*.137}%
\contentsline {subparagraph}{Paso 7}{114}{section*.140}% \contentsline {subparagraph}{Paso 7}{114}{section*.139}%
\contentsline {subsection}{\numberline {9.2.4}Escenario 4}{115}{subsection.9.2.4}% \contentsline {subsection}{\numberline {9.2.4}Escenario 4}{115}{subsection.9.2.4}%
\contentsline {subsubsection}{\numberline {9.2.4.1}Análisis de componentes}{115}{subsubsection.9.2.4.1}% \contentsline {subsubsection}{\numberline {9.2.4.1}Análisis de componentes}{115}{subsubsection.9.2.4.1}%
\contentsline {subsubsection}{\numberline {9.2.4.2}Análisis de tráfico}{117}{subsubsection.9.2.4.2}% \contentsline {subsubsection}{\numberline {9.2.4.2}Análisis de tráfico}{117}{subsubsection.9.2.4.2}%
\contentsline {subparagraph}{Paso 1}{117}{section*.142}% \contentsline {subparagraph}{Paso 1}{117}{section*.141}%
\contentsline {subparagraph}{Paso 2}{117}{section*.143}% \contentsline {subparagraph}{Paso 2}{117}{section*.142}%
\contentsline {subparagraph}{Paso 3}{117}{section*.144}% \contentsline {subparagraph}{Paso 3}{117}{section*.143}%
\contentsline {subparagraph}{Paso 4}{118}{section*.147}% \contentsline {subparagraph}{Paso 4}{118}{section*.146}%
\contentsline {subparagraph}{Paso 5}{118}{section*.148}% \contentsline {subparagraph}{Paso 5}{118}{section*.147}%
\contentsline {subparagraph}{Paso 6}{119}{section*.150}% \contentsline {subparagraph}{Paso 6}{119}{section*.149}%
\contentsline {section}{\numberline {9.3}Open vSwitch}{119}{section.9.3}% \contentsline {section}{\numberline {9.3}Open vSwitch}{119}{section.9.3}%
\contentsline {subsubsection}{\numberline {9.3.0.1}Archivos de configuración}{121}{subsubsection.9.3.0.1}% \contentsline {subsubsection}{\numberline {9.3.0.1}Archivos de configuración}{121}{subsubsection.9.3.0.1}%
\contentsline {subsection}{\numberline {9.3.1}Escenario 1}{124}{subsection.9.3.1}% \contentsline {subsection}{\numberline {9.3.1}Escenario 1}{124}{subsection.9.3.1}%
\contentsline {subsubsection}{\numberline {9.3.1.1}Análisis de componentes}{124}{subsubsection.9.3.1.1}% \contentsline {subsubsection}{\numberline {9.3.1.1}Análisis de componentes}{124}{subsubsection.9.3.1.1}%
\contentsline {subsubsection}{\numberline {9.3.1.2}Análisis de tráfico}{130}{subsubsection.9.3.1.2}% \contentsline {subsubsection}{\numberline {9.3.1.2}Análisis de tráfico}{130}{subsubsection.9.3.1.2}%
\contentsline {subparagraph}{Paso 1}{130}{section*.153}% \contentsline {subparagraph}{Paso 1}{130}{section*.152}%
\contentsline {subparagraph}{Paso 2}{131}{section*.154}% \contentsline {subparagraph}{Paso 2}{131}{section*.153}%
\contentsline {subparagraph}{Paso 3}{138}{section*.159}% \contentsline {subparagraph}{Paso 3}{138}{section*.158}%
\contentsline {subparagraph}{Paso 4}{140}{section*.162}% \contentsline {subparagraph}{Paso 4}{140}{section*.161}%
\contentsline {subsection}{\numberline {9.3.2}Escenario 2}{141}{subsection.9.3.2}% \contentsline {subsection}{\numberline {9.3.2}Escenario 2}{141}{subsection.9.3.2}%
\contentsline {subsubsection}{\numberline {9.3.2.1}Análisis de componentes}{141}{subsubsection.9.3.2.1}% \contentsline {subsubsection}{\numberline {9.3.2.1}Análisis de componentes}{141}{subsubsection.9.3.2.1}%
\contentsline {subsubsection}{\numberline {9.3.2.2}Análisis de tráfico}{145}{subsubsection.9.3.2.2}% \contentsline {subsubsection}{\numberline {9.3.2.2}Análisis de tráfico}{145}{subsubsection.9.3.2.2}%
\contentsline {subparagraph}{Paso 1}{146}{section*.164}% \contentsline {subparagraph}{Paso 1}{146}{section*.163}%
\contentsline {subparagraph}{Paso 2}{146}{section*.165}% \contentsline {subparagraph}{Paso 2}{146}{section*.164}%
\contentsline {subparagraph}{Paso 3}{146}{section*.166}% \contentsline {subparagraph}{Paso 3}{146}{section*.165}%
\contentsline {subparagraph}{Paso 4}{146}{section*.168}% \contentsline {subparagraph}{Paso 4}{146}{section*.167}%
\contentsline {subparagraph}{Paso 5}{147}{section*.169}% \contentsline {subparagraph}{Paso 5}{147}{section*.168}%
\contentsline {subparagraph}{Paso 6}{147}{section*.170}% \contentsline {subparagraph}{Paso 6}{147}{section*.169}%
\contentsline {subparagraph}{Paso 7}{147}{section*.172}% \contentsline {subparagraph}{Paso 7}{147}{section*.171}%
\contentsline {subsection}{\numberline {9.3.3}Escenario 3}{148}{subsection.9.3.3}% \contentsline {subsection}{\numberline {9.3.3}Escenario 3}{148}{subsection.9.3.3}%
\contentsline {subsubsection}{\numberline {9.3.3.1}Análisis de componentes}{148}{subsubsection.9.3.3.1}% \contentsline {subsubsection}{\numberline {9.3.3.1}Análisis de componentes}{148}{subsubsection.9.3.3.1}%
\contentsline {subsubsection}{\numberline {9.3.3.2}Análisis de tráfico}{151}{subsubsection.9.3.3.2}% \contentsline {subsubsection}{\numberline {9.3.3.2}Análisis de tráfico}{151}{subsubsection.9.3.3.2}%
\contentsline {subparagraph}{Paso 1}{151}{section*.174}% \contentsline {subparagraph}{Paso 1}{151}{section*.173}%
\contentsline {subparagraph}{Paso 2}{151}{section*.175}% \contentsline {subparagraph}{Paso 2}{151}{section*.174}%
\contentsline {subparagraph}{Paso 3}{152}{section*.176}% \contentsline {subparagraph}{Paso 3}{152}{section*.175}%
\contentsline {subparagraph}{Paso 4}{152}{section*.178}% \contentsline {subparagraph}{Paso 4}{152}{section*.177}%
\contentsline {subparagraph}{Paso 5}{152}{section*.179}% \contentsline {subparagraph}{Paso 5}{152}{section*.178}%
\contentsline {subparagraph}{Paso 6}{154}{section*.181}% \contentsline {subparagraph}{Paso 6}{154}{section*.180}%
\contentsline {subparagraph}{Paso 7}{154}{section*.183}% \contentsline {subparagraph}{Paso 7}{154}{section*.182}%
\contentsline {subsection}{\numberline {9.3.4}Escenario 4}{155}{subsection.9.3.4}% \contentsline {subsection}{\numberline {9.3.4}Escenario 4}{155}{subsection.9.3.4}%
\contentsline {subsubsection}{\numberline {9.3.4.1}Análisis de componentes}{155}{subsubsection.9.3.4.1}% \contentsline {subsubsection}{\numberline {9.3.4.1}Análisis de componentes}{155}{subsubsection.9.3.4.1}%
\contentsline {subsubsection}{\numberline {9.3.4.2}Análisis de tráfico}{156}{subsubsection.9.3.4.2}% \contentsline {subsubsection}{\numberline {9.3.4.2}Análisis de tráfico}{156}{subsubsection.9.3.4.2}%
\contentsline {subparagraph}{Paso 1}{157}{section*.185}% \contentsline {subparagraph}{Paso 1}{157}{section*.184}%
\contentsline {subparagraph}{Paso 2}{157}{section*.186}% \contentsline {subparagraph}{Paso 2}{157}{section*.185}%
\contentsline {subparagraph}{Paso 3}{157}{section*.187}% \contentsline {subparagraph}{Paso 3}{157}{section*.186}%
\contentsline {subparagraph}{Paso 4}{159}{section*.190}% \contentsline {subparagraph}{Paso 4}{159}{section*.189}%
\contentsline {subparagraph}{Paso 5}{159}{section*.191}% \contentsline {subparagraph}{Paso 5}{159}{section*.190}%
\contentsline {subparagraph}{Paso 6}{159}{section*.193}% \contentsline {subparagraph}{Paso 6}{159}{section*.192}%
\contentsline {section}{\numberline {9.4}Comparativa de drivers}{159}{section.9.4}% \contentsline {section}{\numberline {9.4}Comparativa de drivers}{159}{section.9.4}%
\contentsline {section}{\numberline {9.5}Funcionalidades avanzadas}{159}{section.9.5}% \contentsline {section}{\numberline {9.5}Funcionalidades avanzadas}{159}{section.9.5}%
\contentsline {subsection}{\numberline {9.5.1}Layer 3 High Availability}{159}{subsection.9.5.1}% \contentsline {subsection}{\numberline {9.5.1}Layer 3 High Availability}{159}{subsection.9.5.1}%
...@@ -216,15 +217,15 @@ ...@@ -216,15 +217,15 @@
\contentsline {subsubsection}{\numberline {10.0.0.3}Brindar conexión directa a Internet}{161}{subsubsection.10.0.0.3}% \contentsline {subsubsection}{\numberline {10.0.0.3}Brindar conexión directa a Internet}{161}{subsubsection.10.0.0.3}%
\contentsline {subsubsection}{\numberline {10.0.0.4}Gestión de Openstack en operación}{161}{subsubsection.10.0.0.4}% \contentsline {subsubsection}{\numberline {10.0.0.4}Gestión de Openstack en operación}{161}{subsubsection.10.0.0.4}%
\contentsline {chapter}{\numberline {11}Conclusiones}{162}{chapter.11}% \contentsline {chapter}{\numberline {11}Conclusiones}{162}{chapter.11}%
\contentsline {chapter}{Referencias bibliográficas}{163}{chapter*.194}% \contentsline {chapter}{Referencias bibliográficas}{163}{chapter*.193}%
\contentsline {chapter}{Glosario}{169}{chapter*.194}% \contentsline {chapter}{Glosario}{169}{chapter*.193}%
\contentsline {chapter}{\textbf {Apéndices}}{170}{section*.195}% \contentsline {chapter}{\textbf {Apéndices}}{170}{section*.194}%
\ttl@change@i {\@ne }{chapter}{13pt}{}{ Apéndice\ \thecontentslabel \quad }{}{\titlerule *[1pc]{.}\contentspage }\relax \ttl@change@i {\@ne }{chapter}{13pt}{}{ Apéndice\ \thecontentslabel \quad }{}{\titlerule *[1pc]{.}\contentspage }\relax
\ttl@change@v {chapter}{}{}{}\relax \ttl@change@v {chapter}{}{}{}\relax
\contentsline {chapter}{\numberline {1}Imágenes}{171}{appendix.Alph1}% \contentsline {chapter}{\numberline {1}Imágenes}{171}{appendix.Alph1}%
\ttl@change@i {\@ne }{chapter}{0pt}{\vspace *{0.45cm}}{\thecontentslabel \quad }{}{\bfseries \hfill \contentspage }\relax \ttl@change@i {\@ne }{chapter}{0pt}{\vspace *{0.45cm}}{\thecontentslabel \quad }{}{\bfseries \hfill \contentspage }\relax
\ttl@change@v {chapter}{}{}{}\relax \ttl@change@v {chapter}{}{}{}\relax
\contentsline {chapter}{\textbf {Anexos}}{174}{section*.198}% \contentsline {chapter}{\textbf {Anexos}}{174}{section*.197}%
\ttl@change@i {\@ne }{chapter}{13pt}{}{ Anexo\ \thecontentslabel \quad }{}{\titlerule *[1pc]{.}\contentspage }\relax \ttl@change@i {\@ne }{chapter}{13pt}{}{ Anexo\ \thecontentslabel \quad }{}{\titlerule *[1pc]{.}\contentspage }\relax
\ttl@change@v {chapter}{}{}{}\relax \ttl@change@v {chapter}{}{}{}\relax
\contentsline {chapter}{\numberline {1}Instalación versión Queens}{175}{appendix.Anexo.1}% \contentsline {chapter}{\numberline {1}Instalación versión Queens}{175}{appendix.Anexo.1}%
...@@ -238,37 +239,37 @@ ...@@ -238,37 +239,37 @@
\contentsline {subsection}{\numberline {1.2.1}Configuración claves SSH}{184}{subsection.Anexo.1.2.1}% \contentsline {subsection}{\numberline {1.2.1}Configuración claves SSH}{184}{subsection.Anexo.1.2.1}%
\contentsline {subsection}{\numberline {1.2.2}Archivos de configuración OSA}{185}{subsection.Anexo.1.2.2}% \contentsline {subsection}{\numberline {1.2.2}Archivos de configuración OSA}{185}{subsection.Anexo.1.2.2}%
\contentsline {subsubsection}{\numberline {1.2.2.1}openstack\_user\_config.yml}{185}{subsubsection.Anexo.1.2.2.1}% \contentsline {subsubsection}{\numberline {1.2.2.1}openstack\_user\_config.yml}{185}{subsubsection.Anexo.1.2.2.1}%
\contentsline {subsubsection}{\numberline {1.2.2.2}user\_variables.yml}{189}{subsubsection.Anexo.1.2.2.2}% \contentsline {subsubsection}{\numberline {1.2.2.2}user\_variables.yml}{188}{subsubsection.Anexo.1.2.2.2}%
\contentsline {subsubsection}{\numberline {1.2.2.3}cinder.yml}{190}{subsubsection.Anexo.1.2.2.3}% \contentsline {subsubsection}{\numberline {1.2.2.3}cinder.yml}{190}{subsubsection.Anexo.1.2.2.3}%
\contentsline {subsection}{\numberline {1.2.3}Generación de claves}{191}{subsection.Anexo.1.2.3}% \contentsline {subsection}{\numberline {1.2.3}Generación de claves}{190}{subsection.Anexo.1.2.3}%
\contentsline {subsection}{\numberline {1.2.4}Correcciones}{191}{subsection.Anexo.1.2.4}% \contentsline {subsection}{\numberline {1.2.4}Correcciones}{190}{subsection.Anexo.1.2.4}%
\contentsline {subsubsection}{\numberline {1.2.4.1}SELinux}{191}{subsubsection.Anexo.1.2.4.1}% \contentsline {subsubsection}{\numberline {1.2.4.1}SELinux}{190}{subsubsection.Anexo.1.2.4.1}%
\contentsline {section}{\numberline {1.3}Inconvenientes}{192}{section.Anexo.1.3}% \contentsline {section}{\numberline {1.3}Inconvenientes}{191}{section.Anexo.1.3}%
\contentsline {subsection}{\numberline {1.3.1}Bloqueo de paquetes}{192}{subsection.Anexo.1.3.1}% \contentsline {subsection}{\numberline {1.3.1}Bloqueo de paquetes}{191}{subsection.Anexo.1.3.1}%
\contentsline {subsection}{\numberline {1.3.2}Módulo de seguridad SELinux}{192}{subsection.Anexo.1.3.2}% \contentsline {subsection}{\numberline {1.3.2}Módulo de seguridad SELinux}{191}{subsection.Anexo.1.3.2}%
\contentsline {subsection}{\numberline {1.3.3}Percona-release en playbook setup-infrastructure}{192}{subsection.Anexo.1.3.3}% \contentsline {subsection}{\numberline {1.3.3}Percona-release en playbook setup-infrastructure}{191}{subsection.Anexo.1.3.3}%
\contentsline {subsection}{\numberline {1.3.4}Subred reservada}{193}{subsection.Anexo.1.3.4}% \contentsline {subsection}{\numberline {1.3.4}Subred reservada}{192}{subsection.Anexo.1.3.4}%
\contentsline {subsection}{\numberline {1.3.5}Versiones de librerías y SO}{193}{subsection.Anexo.1.3.5}% \contentsline {subsection}{\numberline {1.3.5}Versiones de librerías y SO}{192}{subsection.Anexo.1.3.5}%
\contentsline {subsection}{\numberline {1.3.6}Soporte para CentOS}{194}{subsection.Anexo.1.3.6}% \contentsline {subsection}{\numberline {1.3.6}Soporte para CentOS}{193}{subsection.Anexo.1.3.6}%
\contentsline {chapter}{\numberline {2}Instalación versión Stein}{195}{appendix.Anexo.2}% \contentsline {chapter}{\numberline {2}Instalación versión Stein}{194}{appendix.Anexo.2}%
\contentsline {section}{\numberline {2.1}Preparación de nodos}{195}{section.Anexo.2.1}% \contentsline {section}{\numberline {2.1}Preparación de nodos}{194}{section.Anexo.2.1}%
\contentsline {subsubsection}{\numberline {2.1.0.1}Deploy}{195}{subsubsection.Anexo.2.1.0.1}% \contentsline {subsubsection}{\numberline {2.1.0.1}Deploy}{194}{subsubsection.Anexo.2.1.0.1}%
\contentsline {subsubsection}{\numberline {2.1.0.2}Infra1}{198}{subsubsection.Anexo.2.1.0.2}% \contentsline {subsubsection}{\numberline {2.1.0.2}Infra1}{197}{subsubsection.Anexo.2.1.0.2}%
\contentsline {subsubsection}{\numberline {2.1.0.3}Compute1}{200}{subsubsection.Anexo.2.1.0.3}% \contentsline {subsubsection}{\numberline {2.1.0.3}Compute1}{199}{subsubsection.Anexo.2.1.0.3}%
\contentsline {subsubsection}{\numberline {2.1.0.4}Compute2}{202}{subsubsection.Anexo.2.1.0.4}% \contentsline {subsubsection}{\numberline {2.1.0.4}Compute2}{201}{subsubsection.Anexo.2.1.0.4}%
\contentsline {subsubsection}{\numberline {2.1.0.5}Storage1}{202}{subsubsection.Anexo.2.1.0.5}% \contentsline {subsubsection}{\numberline {2.1.0.5}Storage1}{201}{subsubsection.Anexo.2.1.0.5}%
\contentsline {subsubsection}{\numberline {2.1.0.6}Storage2}{203}{subsubsection.Anexo.2.1.0.6}% \contentsline {subsubsection}{\numberline {2.1.0.6}Storage2}{202}{subsubsection.Anexo.2.1.0.6}%
\contentsline {subsubsection}{\numberline {2.1.0.7}HAproxy1}{203}{subsubsection.Anexo.2.1.0.7}% \contentsline {subsubsection}{\numberline {2.1.0.7}HAproxy1}{202}{subsubsection.Anexo.2.1.0.7}%
\contentsline {subsubsection}{\numberline {2.1.0.8}Router}{204}{subsubsection.Anexo.2.1.0.8}% \contentsline {subsubsection}{\numberline {2.1.0.8}Router}{203}{subsubsection.Anexo.2.1.0.8}%
\contentsline {section}{\numberline {2.2}Configuración archivos OSA}{208}{section.Anexo.2.2}% \contentsline {section}{\numberline {2.2}Configuración archivos OSA}{207}{section.Anexo.2.2}%
\contentsline {subsubsection}{\numberline {2.2.0.1}openstack\_user\_config.yml}{208}{subsubsection.Anexo.2.2.0.1}% \contentsline {subsubsection}{\numberline {2.2.0.1}openstack\_user\_config.yml}{207}{subsubsection.Anexo.2.2.0.1}%
\contentsline {subsubsection}{\numberline {2.2.0.2}user\_variables.yml}{213}{subsubsection.Anexo.2.2.0.2}% \contentsline {subsubsection}{\numberline {2.2.0.2}user\_variables.yml}{212}{subsubsection.Anexo.2.2.0.2}%
\contentsline {subsubsection}{\numberline {2.2.0.3}cinder.yml}{215}{subsubsection.Anexo.2.2.0.3}% \contentsline {subsubsection}{\numberline {2.2.0.3}cinder.yml}{214}{subsubsection.Anexo.2.2.0.3}%
\contentsline {section}{\numberline {2.3}Ejecución de playbooks}{215}{section.Anexo.2.3}% \contentsline {section}{\numberline {2.3}Ejecución de playbooks}{214}{section.Anexo.2.3}%
\contentsline {section}{\numberline {2.4}Cambios para driver OVS}{216}{section.Anexo.2.4}% \contentsline {section}{\numberline {2.4}Cambios para driver OVS}{215}{section.Anexo.2.4}%
\contentsline {chapter}{\numberline {3}Virtualización con KVM}{219}{appendix.Anexo.3}% \contentsline {chapter}{\numberline {3}Virtualización con KVM}{218}{appendix.Anexo.3}%
\contentsline {section}{\numberline {3.1}Utilización virt-manager}{219}{section.Anexo.3.1}% \contentsline {section}{\numberline {3.1}Utilización virt-manager}{218}{section.Anexo.3.1}%
\contentsline {subsection}{\numberline {3.1.1}Conexión remota}{219}{subsection.Anexo.3.1.1}% \contentsline {subsection}{\numberline {3.1.1}Conexión remota}{218}{subsection.Anexo.3.1.1}%
\contentsline {subsection}{\numberline {3.1.2}Creación de una red}{220}{subsection.Anexo.3.1.2}% \contentsline {subsection}{\numberline {3.1.2}Creación de una red}{219}{subsection.Anexo.3.1.2}%
\contentsline {subsection}{\numberline {3.1.3}Crear nodo}{222}{subsection.Anexo.3.1.3}% \contentsline {subsection}{\numberline {3.1.3}Crear nodo}{221}{subsection.Anexo.3.1.3}%
\contentsfinish \contentsfinish
\relax \relax
\xwmnewlabel{xwmlastpage}{{3.1.3}{225}{Crear nodo\relax }{Item.265}{}} \xwmnewlabel{xwmlastpage}{{3.1.3}{224}{Crear nodo\relax }{Item.265}{}}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment