Todos sabemos que el sheriff de los servidores web es apache, pero hay otras alternativas que también funcionan muy bien, como pueden ser: lighttpd, cherokee o nginx.
En el caso que vamos a ver, crearemos un cluster con el servidor web nginx para balancear la carga de unos cuantos servidores web, clones entre si, para repartir la carga de datos.
Instalación de nginx y edición del fichero de configuración:
su aptitude install nginx nano /etc/nginx/nginx.conf
Ejemplo de configuración:
# usuario y grupo, ponedlo a vuestro gusto
user zital zital;
worker_processes 4;
pid /var/run/nginx.pid;
events {
worker_connections 15;
multi_accept on;
}
http {
##
# Basic Settings
##
sendfile off;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 3;
types_hash_max_size 2048;
##
# Logging Settings
##
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
##
# Mime types
##
#include /etc/nginx/mime.types;
#default_type application/octet-stream;
##
# Virtual Host Configs
##
upstream appcluster {
server localhost:81;
server 127.0.0.1:81;
server 10.126.2.52:80;
}
server {
## aquí tu IP pública, ejemplo
listen 10.126.252.10:80;
server_name hispabyte.net hispabyte.net;
location / {
proxy_pass http://appcluster;
}
}
}
Como vemos en el apartado upstream appcluster, escribiremos todos los servidores clones ahí para que luego nginx sepa a que máquinas hacer llegar la petición que le piden a él mismo.
server localhost:81; server 127.0.0.1:81; server 10.126.2.52:80;
No olvidéis editar el usuario y el grupo de nginx en el fichero de configuración: /etc/nginx/nginx.conf

