項目環境:
系統:CentOS 7.6
關閉:selinux
關閉:firewalldhtml
防火牆:外網口填寫的是電信運營商給的公網IP地址,而後映射內網vip地址,再開啓一些安全策略。前端
Nginx + Keepalived:Nginx 接受到用戶的請求後copy一份 轉給後端的某臺Web服務器,若是已經接收到請求的Web服務器down機了,此時Nginx調度器會 把請求再copy一份給另外一臺Web服務器,直至完成用戶的響應。linux
Keepalived 負責虛擬出一個虛擬IP 稱 VIPnginx
WebServer:負責解析用戶的請求抓取相應的數據給前端的Nginx調度器,關於WebServer優化,請看下集續講。web
一、Nginx負載均衡的配置文件能夠是保留用到的其它部分全註釋或者刪除後端
Nginx調度器一:IP 192.168.1.16
[root@lb1 ~]# cat /etc/nginx/conf.d/default.conf
upstream groupweb {
server 192.168.1.21:80 max_fails=2 fail_timeout=5s;
server 192.168.1.22:80 max_fails=2 fail_timeout=5s;
server 192.168.1.23:80 max_fails=2 fail_timeout=5s;
}安全
server {
listen 80;
server_name localhost;服務器
#charset koi8-r; #access_log /var/log/nginx/host.access.log main; location / { root /usr/share/nginx/html; index index.html index.htm; proxy_pass http://groupweb; }
}負載均衡
Nginx調度器二: IP 192.168.1.17
[root@lb2 ~]# cat /etc/nginx/conf.d/default.conf
upstream groupweb {
server 192.168.1.21:80 max_fails=2 fail_timeout=5s;
server 192.168.1.22:80 max_fails=2 fail_timeout=5s;
server 192.168.1.23:80 max_fails=2 fail_timeout=5s;
}ide
server {
listen 80;
server_name localhost;
#charset koi8-r; #access_log /var/log/nginx/host.access.log main; location / { root /usr/share/nginx/html; index index.html index.htm; proxy_pass http://groupweb; }
}
二、Keepalived 的配置文件的修改,保留須要的,其它部分建議註釋或者刪除
Keepalived高可用一 IP: 192.168.1.16
[root@lb1 ~]# cat /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {
state MASTER
interface ens33
virtual_router_id 51
priority 150
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.100/24
}
}
Keepalived高可用二 IP: 192.168.1.17
[root@lb2 ~]# cat /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {
state BACKUP
interface ens33
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.100/24
}
}
三、Web服務器 :爲了簡單方便 我就直接裝了Apache服務
Web服務器一 IP :192.168.1.21
[root@web1 ~]# echo web1 > /var/www/html/index.html
Web服務器二 IP :192.168.1.22
[root@web1 ~]# echo web2 > /var/www/html/index.html
Web服務器三 IP :192.168.1.23[root@web1 ~]# echo web3 > /var/www/html/index.html