LVS-DR部署
[客戶端]
node1
192.168.157.148
[lvs]
node2
192.168.157.142
[web服務器]
node3
192.168.157.145
node4
192.168.157.146
(1)[lvs]
yum install -y ipvsadm.x86_64
配置LVS負載均衡服務
(1)手動添加LVS轉發1)用戶訪問:www.uolookking.com-->vip 192.168.157.200 ##==>這個是在DNS配置沒有配置DNS可以使用hosts文件配置方式來實現域名解析。192.168.157.200 www.hzitedu.com2)配置LVS虛擬IP(VIP)[root@localhost ~]# ifconfig ens33:200 192.168.157.200/24 (2)[web服務器:node3,node4](1)安裝配置http服務(2) 綁定vip(192.168.157.200)systemctl restart network重啟網絡服務node3: 創建環回接口[root@localhost ~]# ifconfig lo:200 192.168.157.200 netmask 255.255.255.255 up添加本機訪問VIP的路由[root@RS1 ~]# route add -host 192.168.157.200 dev lonode4:創建環回接口[root@localhost ~]# ifconfig lo:200 192.168.157.200 netmask 255.255.255.255 up添加本機訪問VIP的路由[root@RS1 ~]# route add -host 192.168.157.200 dev lo(3) 手工在RS端抑制ARP響應每臺real server端執行調整內核參數,關閉arp響應node3: [root@RS1 ~]# echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore[root@RS1 ~]# echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce[root@RS1 ~]# echo "1" > /proc/sys/net/ipv4/conf/ens33/arp_ignore (/ens33/arp_ignore此處寫RS使用的網卡)[root@RS1 ~]# echo "2" > /proc/sys/net/ipv4/conf/ens33/arp_announce(/ens33/arp_announce此處寫RS使用的網卡)(3)[lvs]手工執行配置添加LVS服務并增加兩臺RS[root@localhost ~]# ipvsadm -A -t 192.168.157.200:80 -s rr[root@localhost ~]# ipvsadm -a -t 192.168.157.200:80 -r 192.168.157.145:80 -g[root@localhost ~]# ipvsadm -a -t 192.168.157.200:80 -r 192.168.157.146:80 -g[刪除方法]# ipvsadm -D -t 192.168.79.110:80 -s wrr# ipvsadm -d -t 192.168.79.110:80 -r 192.168.79.118:80[相關參數說明][root@Directory ~]# ipvsadm –help-A 添加虛擬服務器-t 設置群集地址(VIP,Virtual IP)-s 指定負載調度算法-a 添加真實服務器-d 刪除真實服務器-r 指定真實服務器(Real Server)的地址-m 使用NAT模式;-g、-i分別對應DR、TUN模式-w 為節點服務器設置權重,默認為1[root@Directory ~]# ipvsadm –Ln查看負載均衡
nginx負載均衡
配置
[client]
node1[service:nginx]
node2
#安裝nginx做負載均衡[web]
node3
node4
#vim /etc/nginx/conf.d/vhost.conf
[service:nginx]
upstream pools {server 192.168.157.145:80 weight=1;server 192.168.157.146:80 weight=1;
}server {listen 80;server_name www.pool.com;location / {proxy_pass http://pools;}access_log /usr/share/nginx/logs/node4/access_pool.log ;error_log /usr/share/nginx/logs/node4/access_pool_error.log ;}
####################################################
Nginx做負載均衡訪問網頁時報錯:HTTP Status 400 – 錯誤的請求
可能原因:
根據瀏覽器報錯的提示消息,意思為:在一個域名中使用字符“_”是不正確的;
原來問題出在了nginx主配置文件中給后端tomcat服務器池起的名字上,不支持下劃線
[web]
使用http服務
[node3]
[root@localhost ~]# cat /var/www/html/index.html node3 [node4]
[root@localhost ~]# cat /var/www/html/index.html
node4
[client]
#vim /etc/hosts
192.168.157.142 www.node3.com www.node4.com www.pool.com
(添加域名)
結果: