共计 1834 个字符,预计需要花费 5 分钟才能阅读完成。
实验介绍
Nginx 作为负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务,
也可以支持作为 HTTP 代理服务器对外进行服务。Nginx 采用 C 进行编写,
不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好很多
此次应用 Nginx 实现多台 web 服务器的简单负载均衡,直观了解负载均衡的工作原理
实验架构如下图
第一步:搭建实验环境
centos6.0(64 位),nginx-0.7.51,httpd-2.2.15
主 Nginx:192.168.5.221
备 Nginx:192.168.5.222(此次未涉及 keepalived,故没有备份 Nginx)
Web1 服务器:192.168.5.225
Web2 服务器:192.168.5.226
第二步:安装 Nginx 负载均衡器及相关配置脚本(主 Nginx)
先安装 Nginx 负载均衡器,nginx 负载的配置就用一般的模板来配置了
点击 (此处) 折叠或打开
groupadd www
useradd -g www www
wget http://ftp.exim.llorien.org/pcre/pcre-7.8.tar.gz
tar zxvf pcre-7.8.tar.gz
cd pcre-7.8/
./configure
make && make install
wget http://sysoev.ru/nginx/nginx-0.7.51.tar.gz
tar zxvf nginx-0.7.51.tar.gz
cd nginx-0.7.51/
./configure –user=www –group=www –prefix=/usr/local/webserver/nginx –with-http_stub_status_module –with-http_ssl_module
make && make install
配置 nginx 负载均衡器的配置文件 vim /usr/local/nginx/conf/nginx.conf
user www www;
worker_processes 10;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
#最大文件描述符
worker_rlimit_nofile 51200;
events
{
use epoll;
worker_connections 51200;
}
http
{
include mime.types;
default_type application/octet-stream;
keepalive_timeout 120;
tcp_nodelay on;
upstream www.dylan0718.org
{
server 192.168.5.225:80;
server 192.168.5.226:80;
}
server
{
listen 80;
server_name localhost;
location / {
proxy_pass http://www.dylan0718.org;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
log_format www_dylan0718_org ‘$remote_addr – $remote_user [$time_local] $request ‘
‘”$status” $body_bytes_sent “$http_referer” ‘
‘”$http_user_agent” “$http_x_forwarded_for”‘;
access_log /var/log/www.log www_dylan0718_org;
}
}
第三步:web 服务器配置(web1,web2)
最小化安装两台 centos6.0 server 安装 http 包
然后分别在 web1,web2 的 /var/www/html/ 目录 分别写入 index.html 并在里面分别标记出 web1 和 web2
第四步:启动服务
启动主 Nginx 的服务进程 并启动 web1,web2 的 httpd 服务
在浏览器输入 Nginx 入口地址 http://192.168.5.221/ 重复刷新便会交替 web1,web2 的主页 观察到了真实的服务器地址
如图所示