7 votos

Equilibrio de carga de Drupal servidores: una buena manera de compartir los datos entre los servidores?

Estoy tratando de obtener una visión general de cómo iba a ir sobre la creación de un equilibrio de carga de la configuración del servidor web. Configuración de la real equilibrador de carga y la adición de dos o más servidores web parece bastante justo. Sin embargo, no puedo decidir cuál es la mejor configuración para los archivos.

Los servidores web estará en funcionamiento un sistema de gestión de contenidos (en este caso Drupal). Podría ser archivos subidos por los usuarios que se refiere a los contenidos, y esto debe ser accesible a todos los servidores web. Ahora, yo estaba pensando en tener un archivo designado servidor y montar un directorio de archivos en cada servidor web para que los diferentes servidores web puede acceder a estos "compartir archivos".

Sin embargo, esta solución, ser un cuello de botella si estamos hablando de alrededor de 4-5 servidores? Me gustaría pensar que el montaje se llevaría a cabo a través de SSH.

Toda la ayuda muy apreciada!

Actualización (15 De Enero De 2013)

Me decidí a ir con una combinación de Csync2 y Lsyncd. Yo, a continuación, configurar dos servidores que actúa como espejos. Lsyncd escucha cambios en ciertos directorios (y sus subdirectorios) y se invoca Csync2 que se encarga de sincronizar los archivos a otro servidor. Si usted está interesado en saber más, echa un vistazo a este tutorial.

10voto

Skyhawk Puntos 12386

Juan y Cailin's de cinco pasos del tutorial sobre la ampliación de Drupal va a ser muy útil para usted.

Los dos primeros pasos son como sigue:

Paso 1: Separar el servidor web de su servidor de base de datos.

Paso 2: Configurar servidores web redundantes y equilibrio de carga.

Línea de base: no va a querer escalar horizontalmente (la adición de múltiples servidores con funciones idénticas) sin escala vertical (la separación de las funciones que actualmente residen en el mismo servidor en diferentes niveles).

8voto

Sean Milheim Puntos 156

Antes de que me mudé a la CDN yo tenía una granja de servidores web de unos 20 servidores. Empecé con NFS hasta que llegué a un bug en el kernel de linux de unos 3 años atrás, que causó un problema con no montar el volumen y no fue error correctamente.

Entonces creé un rsync de secuencia de comandos que la sincronización de los directorios de cada 5 minutos para cada servidor de imágenes. Esta no fue la ideal, pero funcionó y no tengo problemas con él.

El paso siguiente me cambié a lsyncd que utiliza inotify monitorear un directorio y cuando se modifica un archivo se genera un proceso de sincronización de archivos. Por defecto está rsync. Que la solución era sólido, y si no para la economía de un CDN hubiera continuado con eso.

Lsyncd: http://code.google.com/p/lsyncd/

Espero que ayude.

5voto

ciupinet Puntos 112

He utilizado glusterfs (http://www.gluster.org/) para compartir archivos entre el equilibrio de carga de servidores web. Traté de compartir la base de datos MySQL de archivos entre los servidores, así como con glusterfs, pero sin éxito - recomiendo para separar la web desde el servidor de base de datos como el primer cartel sugiere.

Otras soluciones para compartir archivos entre servidores lustre (http://wiki.lustre.org/index.php/Main_Page) y, dependiendo del equilibrador de carga de la instalación, también se podría utilizar lsyncd (http://code.google.com/p/lsyncd/) para sincronizar archivos entre servidores.

0voto

Dragos Puntos 275

Se puede establecer una alta disponibilidad de recurso compartido de NFS y montarlo en cada servidor http para servir a sus archivos.

Por favor, encontrar un tutorial para una alta disponibilidad cluster MySQL: http://www.howtoforge.com/loadbalanced_mysql_cluster_debian

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X