實驗目的:實現Nginx的負載均衡和動靜分離
實現環境:一臺server用作Nginx代理(需要兩塊網卡,eth0連接內網,eth1連接外網),兩臺用作web服務(每臺server都定義兩個虛擬機,端口分別是80和8080),一臺客戶端用于驗證結果;
操作步驟
負載均衡的實現:
一、配置IP
1.配置A主機的IP
# ip addr add dev eth0 192.168.10.254/24
# ip addr add dev eth1 192.168.20.254/24
2.配置B主機的IP
# ip addr add dev eth0 192.168.10.2/24
3.配置C主機的IP
# ip ddr add dev eth0 192.168.10.3/24
二、配置web服務(B和C主機都做同樣配置)
1.安裝所需程序包
# yum -y install nginx php-fpm
2.配置web服務,提供默認主頁
# vim /etc/nginx/conf.d/defalut.conf
server {
index index.php index.html;
}
location / {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
# vim /usr/share/nginx/html/index.php
<?php
phpinfo();
?>
3.將php-fpm的運行用戶和組改為nginx
# vim /etc/php-fpm.d/www.conf
user = nginx
group = nginx
4.啟動php-fpm和nginx
# service php-fpm start
# service nginx start
三、配置代理,以集群方式實現負載均衡
1.安裝nginx
# yum -y install nginx
2.定義動態頁面集群組,在http{}段中定義;
# vim /etc/nginx/nginx.conf
http {
upstream websrvs {
server 192.168.10.2:80;
server 192.168.10.3:80;
}
}
3.調用定義的集群組,在server{}段的location{}段中調用;
# vim /etc/nginx/conf.d/default.conf
server {
location / {
proxy_pass http://wersrvs;\
index index.php;
}
}
4.啟動服務
# service nginx start
5.在客戶端上測試,訪問192.168.20.254地址,響應的服務器是輪詢的結果;
動靜分離的實現:
一、配置虛擬主機
1.配置虛擬主機(B和C主機都作同樣配置,默認主頁中的ip地址改為C主機的ip,以示區分)
# vim /etc/nginx/conf.d/default.conf
server {
listen 8080;
server_name _;
index index.html
location / {
root /var/www/static;
}
}
2.創建默認主頁
# mkdir -v /var/www/static
# vim /var/www/static/index.html
<h1>static page 192.168.10.2</h1>
3.檢測和重載配置
# nginx -t
# nginx -s reload
二、定義靜態頁面集群組及調用
1.定義靜態頁面集群組
# vim /etc/nginx/nginx.conf
http {
upstream statrvs {
server 192.168.10.2:8080;
server 192.168.10.3:8080;
}
}
2.調用定義的集群組,在server{}段的location{}段中調用;
# vim /etc/nginx/conf.d/default.conf
server {
location ~* \.(jpg|jpeg|png|gif|html)$ {
index index.html;
}
}
結果驗證:
1.訪問靜態頁面,在瀏覽器中輸入地址:192.168.20.254/index.html,此時響應的集群組是stasrvs,且后端的服務器輪詢響應請求;
2.訪問動態頁面,在瀏覽器中輸入地址:192.168.20.254/index.php,此時響應的集群組是websrvs,且后端的服務器輪詢響應請求;
原創文章,作者:人字拖,如若轉載,請注明出處:http://www.www58058.com/75483