Finish Nginx and MariaDB sections.
This commit is contained in:
		
							
								
								
									
										
											BIN
										
									
								
								2/ASO/assignments/openbsd-project/imgs/01-nginx-test.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								2/ASO/assignments/openbsd-project/imgs/01-nginx-test.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 9.2 KiB | 
							
								
								
									
										
											BIN
										
									
								
								2/ASO/assignments/openbsd-project/imgs/02-load-wrk-test.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								2/ASO/assignments/openbsd-project/imgs/02-load-wrk-test.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 131 KiB | 
										
											Binary file not shown.
										
									
								
							| @@ -103,10 +103,122 @@ root# pkg_add nginx mariadb-server mariadb-client \ | |||||||
|  |  | ||||||
| \section{Configuración de Servicios} | \section{Configuración de Servicios} | ||||||
|  |  | ||||||
|  | El control de los servicios en OpenBSD se hace con el comando {\tt rcctl}, ya | ||||||
|  | que OpenBSD no usa Systemd. Generalmente se usa de una forma muy similar a | ||||||
|  | Systemd, usando los subcomandos siguientes: | ||||||
|  |  | ||||||
|  | \begin{itemize} | ||||||
|  | 	\item {\tt start}: iniciar un servicio. | ||||||
|  | 	\item {\tt stop}: parar un servicio. | ||||||
|  | 	\item {\tt enable}: habilitar un servicio para iniciarse al arrancar la | ||||||
|  | 		máquina. | ||||||
|  | 	\item {\tt disable}: deshabilitar un servicio para que no se inicie cuando | ||||||
|  | 		arranque la máquina. | ||||||
|  | 	\item {\tt ls}: mostrar una lista de los servicios. | ||||||
|  | \end{itemize} | ||||||
|  |  | ||||||
| \subsection{Nginx} | \subsection{Nginx} | ||||||
|  |  | ||||||
|  | \begin{table}[!ht] | ||||||
|  | 	\centering | ||||||
|  | 	\begin{tabular}{|c|c|} | ||||||
|  | 		\hline | ||||||
|  | 		{\bf Nombre} & Nginx \\ \hline | ||||||
|  | 		{\bf Descripción} & Un servidor web moderno. \\ \hline | ||||||
|  | 		{\bf Dir. Config.} & {\tt /etc/nginx/} \\ \hline | ||||||
|  | 		{\bf Dir. Logs} & {\tt /etc/nginx/logs/} \\ \hline | ||||||
|  | 	\end{tabular} | ||||||
|  | 	\label{tbl:nginx-descriptor} | ||||||
|  | 	\caption{Datos sobre Nginx.} | ||||||
|  | \end{table} | ||||||
|  |  | ||||||
|  | En nuestra configuración de Nginx vamos a crear una página simple que se pueda | ||||||
|  | acceder desde fuera en el puerto 80. Por defecto, Nginx en OpenBSD usa el | ||||||
|  | directorio {\tt /var/www/htdocs/} como raíz del servidor. Aquí añadiremos un | ||||||
|  | archivo {\tt index.html} para que responda con un código {\tt 200 OK}. Iniciamos | ||||||
|  | el servicio (y lo habilitamos) con el comando siguiente: | ||||||
|  |  | ||||||
|  | \begin{verbatim} | ||||||
|  | root# rcctl enable nginx | ||||||
|  | root# rcctl start nginx | ||||||
|  | nginx(ok) | ||||||
|  | \end{verbatim} | ||||||
|  |  | ||||||
|  | \begin{figure} | ||||||
|  | 	\centering | ||||||
|  | 	\includegraphics[width=0.75\textwidth]{imgs/01-nginx-test.png} | ||||||
|  | 	\caption{Prueba de Nginx.} | ||||||
|  | 	\label{fig:nginx-test} | ||||||
|  | \end{figure} | ||||||
|  |  | ||||||
|  | Ahora, si probamos acceder a nuestro servidor, veremos el archivo que hemos | ||||||
|  | creado (figura \ref{fig:nginx-test}). | ||||||
|  |  | ||||||
|  | A este servidor le podemos hacer un {\it stress test} utilizando la herramienta | ||||||
|  | {\it wrk}, que sirve para hacer {\it benchmarking} de servicios HTTP. Desde un | ||||||
|  | cliente corremos el comando siguiente, que nos hará una prueba de 50 conexiones | ||||||
|  | paralelas, sobre 10 hilos, durante 20 segundos. Vemos que el {\it load} aumenta | ||||||
|  | de forma considerable (figura \ref{fig:load-wrk-test}). | ||||||
|  |  | ||||||
|  | \begin{verbatim} | ||||||
|  | $ wrk -c 50 -t 10 -d 20 http://172.16.40.3/ | ||||||
|  | \end{verbatim} | ||||||
|  |  | ||||||
|  | \begin{figure} | ||||||
|  | 	\centering | ||||||
|  | 	\includegraphics[width=0.75\textwidth]{imgs/02-load-wrk-test.png} | ||||||
|  | 	\caption{{\it Load} resultante de una prueba con {\it wrk}.} | ||||||
|  | 	\label{fig:load-wrk-test} | ||||||
|  | \end{figure} | ||||||
|  |  | ||||||
| \subsection{MariaDB} | \subsection{MariaDB} | ||||||
|  |  | ||||||
|  | \begin{table}[!ht] | ||||||
|  | 	\centering | ||||||
|  | 	\begin{tabular}{|c|c|} | ||||||
|  | 		\hline | ||||||
|  | 		{\bf Nombre} & MariaDB \\ \hline | ||||||
|  | 		{\bf Descripción} & Sistema de gestión de bases de datos. \\ \hline | ||||||
|  | 		{\bf Archivo Conf.} & {\tt /etc/my.cnf} \\ \hline | ||||||
|  | 	\end{tabular} | ||||||
|  | 	\label{tbl:mariadb-descriptor} | ||||||
|  | 	\caption{Datos sobre MariaDB.} | ||||||
|  | \end{table} | ||||||
|  |  | ||||||
|  | MariaDB requiere de una configuración inicial más manual, así que en primer | ||||||
|  | lugar se tendrá que inicializar (y habilitar) el servicio, que se denomina {\tt | ||||||
|  | mysqld} -- esto es porque MariaDB tiene como objetivo ser un reemplazo {\it | ||||||
|  | in-place} de MySQL. | ||||||
|  |  | ||||||
|  | \begin{verbatim} | ||||||
|  | root# rcctl enable mysqld | ||||||
|  | root# rcctl start mysqld | ||||||
|  | mysqld(ok) | ||||||
|  | \end{verbatim} | ||||||
|  |  | ||||||
|  | Posteriormente lo configuramos usando el comando {\tt mysql\_secure\_install}. | ||||||
|  | Esto instalará las tablas dentro del directorio {\tt /var/mysql/} y podremos | ||||||
|  | definir la contraseña de {\it root}, que será {\tt Rooty} (y algunas opciones de | ||||||
|  | MariaDB). Podemos acceder a este base de datos usando el comando siguiente desde | ||||||
|  | el usuario {\it root}, e introduciendo la contraseña que hemos asignado: | ||||||
|  |  | ||||||
|  | \begin{verbatim} | ||||||
|  | puffy-nortega# mysql -u root -p | ||||||
|  | Enter password: | ||||||
|  | Welcome to the MariaDB monitor.  Commands end with ; or \g. | ||||||
|  | Your MariaDB connection id is 13 | ||||||
|  | Server version: 10.9.3-MariaDB OpenBSD port: | ||||||
|  | mariadb-server-10.9.3v1 | ||||||
|  |  | ||||||
|  | Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and | ||||||
|  | others. | ||||||
|  |  | ||||||
|  | Type 'help;' or '\h' for help. Type '\c' to clear the current | ||||||
|  | input statement. | ||||||
|  |  | ||||||
|  | MariaDB [(none)]> | ||||||
|  | \end{verbatim} | ||||||
|  |  | ||||||
| \subsection{Servicio RSync} | \subsection{Servicio RSync} | ||||||
|  |  | ||||||
| \section{Conclusión} | \section{Conclusión} | ||||||
|   | |||||||
| @@ -4,7 +4,7 @@ | |||||||
| \contentsline {section}{\numberline {3}Instalación de Paquetes}{3}{section.3}% | \contentsline {section}{\numberline {3}Instalación de Paquetes}{3}{section.3}% | ||||||
| \contentsline {section}{\numberline {4}Configuración de Servicios}{4}{section.4}% | \contentsline {section}{\numberline {4}Configuración de Servicios}{4}{section.4}% | ||||||
| \contentsline {subsection}{\numberline {4.1}Nginx}{4}{subsection.4.1}% | \contentsline {subsection}{\numberline {4.1}Nginx}{4}{subsection.4.1}% | ||||||
| \contentsline {subsection}{\numberline {4.2}MariaDB}{4}{subsection.4.2}% | \contentsline {subsection}{\numberline {4.2}MariaDB}{5}{subsection.4.2}% | ||||||
| \contentsline {subsection}{\numberline {4.3}Servicio RSync}{4}{subsection.4.3}% | \contentsline {subsection}{\numberline {4.3}Servicio RSync}{6}{subsection.4.3}% | ||||||
| \contentsline {section}{\numberline {5}Conclusión}{4}{section.5}% | \contentsline {section}{\numberline {5}Conclusión}{6}{section.5}% | ||||||
| \contentsline {section}{\numberline {6}Derechos de Autor y Licencia}{5}{section.6}% | \contentsline {section}{\numberline {6}Derechos de Autor y Licencia}{7}{section.6}% | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user