Instalacion servidor

ballester.david en gmail.com ballester.david en gmail.com
Jue Jun 21 16:41:13 BST 2007


El jue, 21-06-2007 a las 11:52 -0300, Emilio M. Alvarado escribió:
> Estoy encarando la instalación de servidores que utilizaran Ubuntu
> como SO
> 
> Las necesidades son Apache – PHP – MySQL
> 
> Pero necesito poder escalar la capacidad de espacio en disco, es
> decir, configurar el SO para que me permita sumar discos rígidos a
> medida que crezca la necesidad, si existe la posibilidad y mecanismo
> para que los discos puedan estar en otros cpu (corriendo la misma
> versión de Ubuntu) buscando la forma de no limitar el espacio en disco
> y permitirme una gran escalabilidad.
> 

Usa LVM ( la partición /boot que sea ext3 pura y dura, fuera de
cualquier volumen lógico )

Crea una partición ( fdisk ) LVM suficiente para albergar el sistema
operativo + SWAP ( ¿ 10GB ? ).

Crea un grupo de volúmenes ( vgcreate ) asignado a esa partición
anterior ( physical disk en nomenclatura LVM )

Crea distintos logicalVolumes ( lvcreate ) asignados al volume group
anterior. Aquí, los volúmenes lógicos serán las 'particiones' que
montarás en el sistema.

El swap te recomiendo formarlo por varias particiones ( logicalVolumes )
distintas, no un solo lv ( 'partición' ) grande.


Con el resto de espacio sin particionar del disco, crea otro physical
disk, otro VolumeGroup y logicalVolumes para hospedar la base de datos y
otros datos de la aplicación. Dependiendo del ratio y tipo de
lectura/escritura sería deseable modificar el tamaño de bloque de los
LogicalVolume y de los filesystems que para optimizar en lo posible la
entrada/salida.

LVM junto con las características actuales de ext3 te permitirá la
adición de nuevo espacio y redimensionamiento de las particiones en
caliente, sin tener que desmontar/montar y evitar la pérdida de servicio
durante esas operaciones.

El storage es un disco 'tal cual' o estará protegido por algún tipo de
raid? si es intensivo en escritura, NO USES RAID5. Si no se harán
backups de la máquina de forma frecuente ( nocturnos ) NO USES RAID5.


> Y otro tema es el Load Balancing, necesito saber como manejar este
> punto, desconozco las variables de aplicación, es decir, los
> servidores serán básicamente servidores web que contendrán un sitio de
> alta demanda, como se configuraría el sistema para que, de llegar al
> máximo de la capacidad del servidor 1 pase al servidor 2 y asi
> sucesivamente. No se si se configura desde Ubuntu o desde Apache, me
> gustaría saber que opciones tengo para armar este esquema.

Apache tiene directrices/módulos para facilitar el load-balancing, si no recuerdo mal, mira en google, busca por 

apache load balancing


El tema es que tipo de balanceo y como se aplica.

Los datos que presenta el apache son de una sola base de datos o cada
máquina tiene su propia copia de los datos sin interactuar entre ellas ?

Si fuera el primer caso, ningún problema, siempre que el módulo de
apache para el balanceo esté programado para hacer seguimiento de las
transacciones y control de quien es cada cosa. ( Si fuera este el caso
doy por entendido que el storage es común a las 2 máquinas )

Si es el segundo caso, una sesión en en nodo1 tiene que empezar y
terminar en el nodo1, no se puede fragmentar entre los N nodos del
cluster.En ese caso te recomiendo que el balanceo se haga fuera del
cluster, algo tipo round-robin ( sesion1 al nodo1, sesion2 al nodo2,
sesion3 al nodo3, etc... ) se puede hacer vía dns, con un Load
Director...



También tendrás que tener en cuenta como redirigir las nuevas sesiones
entrantes en caso de caída de un nodo.


Links interesantes:

http://www.linux-ha.org/ te permitirá pivotar las direcciones ip y/o
servicios de una máquina a otra en caso de caída de un nodoç


http://db.glug-bom.org/Documentation/HOWTO/Apache-Overview-HOWTO-7.html
módulos que dan distintos tipos de capacidad de load balancing en apache

http://bulma.net/body.phtml?nIdNoticia=1217 un poco antiguo pero sigue
siendo igual de válido. round robin con bind ( dns ) y load balancing



HTH

D.

-- 
http://dballester.blogspot.com
The Ubuntu Counter Project - user number # 4472
counter.li.org #206389





Más información sobre la lista de distribución ubuntu-es