netquest_documentation
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |||
netquest_documentation [2012/03/02 17:10] – dodger | netquest_documentation [2018/04/17 08:54] (current) – removed dodger | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Descripcion ====== | ||
- | Documentación de la prueba para netquest. | ||
- | |||
- | ====== Bitacora ====== | ||
- | ===== pre ===== | ||
- | * Configurado JVM para jboss con los siguientes parámetros: | ||
- | < | ||
- | -Xms128m -Xmx1024m -XX: | ||
- | </ | ||
- | |||
- | ===== 27/02 ===== | ||
- | * Configuro Mysql en el jboss como DefaultDS | ||
- | * Configuro Mysql en el jboss para JMS, elimino hypersonic | ||
- | * La aplicación está configurada para usar un DS propio con credenciales de root. | ||
- | |||
- | ===== 28/02 ===== | ||
- | * Configuro el DS de la aplicación en JBOSS con unas credenciales con menos privilegios | ||
- | * Reempaqueto la aplicación sin el DS para que use la de JBOSS | ||
- | * Sincronizo JBOSS en el nodo2 | ||
- | * Sincronizo MySQL en el nodo2 | ||
- | * Sincronizo /etc en el nodo2 | ||
- | * Comienzo la configuración de réplica en mysql. | ||
- | |||
- | ===== 29/02 ===== | ||
- | Objetivo: | ||
- | * Configurar la réplica de mysql | ||
- | * Eliminar nginx de rh y compilarlo con los módulos " | ||
- | * Configurar nginx con los 2 servidores de jboss en el pool | ||
- | |||
- | DONE: | ||
- | * Configurar réplica para la bbdd " | ||
- | * Eliminado nginx, instalada la última versión "from source": | ||
- | < | ||
- | nginx version: nginx/ | ||
- | built by gcc 4.4.5 20110214 (Red Hat 4.4.5-6) (GCC) | ||
- | TLS SNI support enabled | ||
- | </ | ||
- | * Done, configurados los 2 jboss' | ||
- | |||
- | ===== 01/03 ===== | ||
- | Objetivo: | ||
- | * Configurar caché y el purgado de nginx | ||
- | |||
- | DONE: | ||
- | * Caché de nginx configurada, | ||
- | < | ||
- | http:// | ||
- | </ | ||
- | Si la URL que queremos purgar es: | ||
- | < | ||
- | http:// | ||
- | </ | ||
- | La limpieza de caché se debe realizar desde la ip local (localhost), | ||
- | |||
- | |||
- | ===== 02/03 ===== | ||
- | Objetivo: | ||
- | * Instalar y configurar MysqlProxy | ||
- | |||
- | DONE: | ||
- | * Instalado, actualmente el datasource de " | ||
- | < | ||
- | mysql --port=4040 --host=server02 -p -u exam | ||
- | mysql --port=4040 --host=server01 -p -u exam | ||
- | </ | ||
- | |||
- | ===== 0x/03 ===== | ||
- | Objetivo: | ||
- | * Cambios en las ips de los nodos. | ||
- | * < | ||
- | DONE: | ||
- | * Programado script para arranque en frio (ver [[netquest_documentation# | ||
- | |||
- | |||
- | ====== Management ====== | ||
- | Resumen de las acciones principales del sistema: | ||
- | ===== nginx ===== | ||
- | ==== start ==== | ||
- | < | ||
- | </ | ||
- | ==== stop ==== | ||
- | < | ||
- | </ | ||
- | ==== restart ==== | ||
- | < | ||
- | </ | ||
- | ==== Limpieza de la caché ==== | ||
- | Sin usar el método recomendado (por URL), podemos limpiar la caché mediante: | ||
- | < | ||
- | / | ||
- | </ | ||
- | |||
- | ==== Configuración ==== | ||
- | La configuración ha de realizarse en los directorios: | ||
- | * ''/ | ||
- | * ''/ | ||
- | * ''/ | ||
- | |||
- | |||
- | ===== mysql ===== | ||
- | ==== start ==== | ||
- | < | ||
- | </ | ||
- | ==== stop ==== | ||
- | < | ||
- | </ | ||
- | ==== restart ==== | ||
- | < | ||
- | </ | ||
- | |||
- | ==== Acceso al " | ||
- | El acceso debería realizarse mediante el servicio mysql-proxy o en su defecto por el nodo1 del servicio para no romper la réplica. | ||
- | Para conectarse: | ||
- | < | ||
- | </ | ||
- | ==== Replica ==== | ||
- | Conectados al/los nodos SLAVE. | ||
- | === Parar === | ||
- | < | ||
- | </ | ||
- | === Arrancar === | ||
- | < | ||
- | </ | ||
- | === Slave Status === | ||
- | < | ||
- | </ | ||
- | === Master status === | ||
- | Conectado al nodo MASTER: | ||
- | < | ||
- | </ | ||
- | |||
- | |||
- | ===== mysql-proxy ===== | ||
- | ==== start ==== | ||
- | < | ||
- | </ | ||
- | ==== stop ==== | ||
- | < | ||
- | </ | ||
- | ==== restart ==== | ||
- | < | ||
- | </ | ||
- | |||
- | ===== jboss ===== | ||
- | ==== start ==== | ||
- | < | ||
- | </ | ||
- | ==== stop ==== | ||
- | < | ||
- | </ | ||
- | ==== restart ==== | ||
- | < | ||
- | </ | ||
- | |||
- | ===== Arranque frío ===== | ||
- | Para un cold start, se ha programado un script: | ||
- | < | ||
- | </ | ||
- | Que realiza las siguientes acciones: | ||
- | * Actualiza el fichero de hosts local con la nueva ip local y las ips locales del resto de los nodos. | ||
- | * Da la opción de reiniciar los servicios asociados: | ||
- | * mysql | ||
- | * mysql-proxy | ||
- | * jboss | ||
- | * nginx | ||
- | |||
- | Notas adicionales: | ||
- | * [[netquest_documentation# | ||
- | * Es recomendable para evitar problemas de réplica, lanzar primero el script de arranque desde el Master primero. | ||
- | * Este script necesita que estén los nodos arrancados (que esté funcionando sshd). | ||
- | |||
- | ====== Objetivo Final (WIP) ====== | ||
- | {{: | ||
- | ===== Descripción de la arquitectura ===== | ||
- | De arriba a abajo: | ||
- | * Mediante las herramientas de Amazon se balancearán los webservers | ||
- | * Ambos webservers están configurados de manera que ataquen a ambos jboss pero priorizando el jboss local, de tal forma que el 2º JBOSS se usará en caso de caída. | ||
- | * Para obtener el máximo rendimiento de nginx, hemos de separar contenido estático de dinámico, de tal forma que el estático siempre se servirá desde nginx. | ||
- | * Adicionalmente se usará lo máximo posible la caché de nginx para reducir en la medida de lo posible los accesos a JBOSS. Se proporcionará a los programadores de un sistema de borrado de caché desde la propia aplicación. | ||
- | * Hay que concretar con el equipo de desarrollo donde sí y donde no se puede instalar la caché dentro de la aplicación web. | ||
- | * Para evitar el uso del sistema de clustering de jboss se debería tener en cuenta por parte de los programadores un sistema de recuperación de la sesión del cliente desde BBDD para que en caso de caída de un nodo, al balancearse la carga al otro, este sea capaz de comprobar mediante la COOKIE del cliente, las credenciales del mismo y que ya estaba logado. | ||
- | * En ambos nodos habrá un mysqlproxy de tal forma que cada jboss atacará al mysqlproxy local y este realizará el balanceo de querys de la forma que se puede ver en el esquema. | ||
- | |||
netquest_documentation.1330708208.txt.gz · Last modified: 2012/03/02 17:10 by dodger