nginx反向代理服务配置
node1:128
node2:135
node3:130
node4:132
node2、node3、node4已安装nginx
nginx安装可查看https://blog.csdn.net/HealerCCX/article/details/132089836?spm=1001.2014.3001.5502
[root@node3 ~]# yum install httpd -y
[root@node4 ~]# yum install httpd -y
[root@node3 ~]# systemctl start httpd
[root@node4 ~]# systemctl start httpd
[root@node3 ~]# echo "web test page,ip is `hostname -I`." > /var/www/html/index.html
[root@node4 ~]# echo "web test page,ip is `hostname -I`." > /var/www/html/index.html
[root@node1 conf.d]# curl 192.168.40.130
web test page,ip is 192.168.40.130 .
[root@node1 conf.d]# curl 192.168.40.132
web test page,ip is 192.168.40.132 .
[root@node2 ~]# cd /etc/nginx/conf.d/
[root@node2 conf.d]# vim vhost.conf
server {
listen 80;
server_name www.open1.cn;
location / {
root /var/www/html/index.html;
proxy_pass http://192.168.40.130;
}
}
server {
listen 80;
server_name www.open2.cn;
location / {
root /var/www/html/index.html;
proxy_pass http://192.168.40.132;
}
}
#windows在C:\Windows\System32\drivers\etc\hosts下添加
#linux在/etc/hosts下添加
[root@node1 ~]# vim /etc/hosts
192.168.40.135 www.open1.cn www.open2.cn
[root@node2 conf.d]# systemctl restart nginx
[root@node2 conf.d]# curl www.open1.cn
“web test page,ip is 192.168.40.130 .”
[root@node2 conf.d]# curl www.open2.cn
“web test page,ip is 192.168.40.132 .”
Nginx负载均衡
一般轮询负载均衡
#停止httpd,启动nginx
[root@node4 ~]# systemctl stop httpd
[root@node3 ~]# systemctl stop httpd
[root@node3 ~]# systemctl start nginx
[root@node4 ~]# systemctl start nginx
[root@node3 ~]# echo "web test page,ip is `hostname -I`." > /usr/share/nginx/html/index.html
[root@node4 ~]# echo "web test page,ip is `hostname -I`." > /usr/share/nginx/html/index.html
[root@node2 conf.d]# vim vhost.conf
upstream web_pools {
server 192.168.40.130;
server 192.168.40.132;
}
server {
listen 80;
server_name www.open1.cn;
location / {
root /var/www/html/index.html;
proxy_pass http://web_pools;
}
}
[root@node1 ~]# for ((i=1;i<=10;i++)); do curl www.open1.cn; done
web test page,ip is 192.168.40.132 .
web test page,ip is 192.168.40.130 .
web test page,ip is 192.168.40.132 .
web test page,ip is 192.168.40.130 .
web test page,ip is 192.168.40.132 .
web test page,ip is 192.168.40.130 .
web test page,ip is 192.168.40.130 .
web test page,ip is 192.168.40.132 .
web test page,ip is 192.168.40.132 .
web test page,ip is 192.168.40.130 .
加权轮询负载均衡
#只需加上weight
[root@node2 nginx]# cat conf.d/vhost.conf
upstream web_pools {
server 192.168.40.130 weight=1;
server 192.168.40.132 weight=3;
}
server {
listen 80;
server_name www.open1.cn;
location / {
proxy_pass http://web_pools;
}
}