Nginx+keepalived配置的實現步驟
更新時間:2025年05月13日 11:01:02 作者:向陽而生,一路生花
本文主要介紹了Nginx+keepalived配置的實現步驟,實現配置Nginx和keepalived、編寫腳本以及測試配置,具有一定的參考價值,感興趣的可以了解一下
一、需要的服務
Nginx、keepalived、epel-release -y
二、安裝命令
yum install -y keepalived #安裝nginx以及拓展源 yum install epel-release -y yum install -y nginx
三、配置web服務
1、web1的nginx配置
[root@nginx1 ~]# vim /etc/nginx/conf.d/web.conf
server{
listen 8080;
root /usr/share/nginx/html;
index test.html;
}
[root@nginx1 ~]# echo "<h1>This is web1</h1>" > /usr/share/nginx/html/test.html2、web2的nginx配置
[root@nginx2 ~]# vim /etc/nginx/conf.d/web.conf
server{
listen 8080;
root /usr/share/nginx/html;
index test.html;
}
[root@nginx2 ~]# echo "<h1>This is web2</h1>" > /usr/share/nginx/html/test.html3、#啟動
nginx -t nginx
四、 配置keepalived
以192.168.95.128 作為web1的master,192.168.95.129 作為web2為例
web1配置keepalived
vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
acassen@firewall.loc
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 192.168.95.128
smtp_connect_timeout 30
router_id LVS_DEVEL
vrrp_skip_check_adv_addr
vrrp_strict
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.95.128
}
}
virtual_server 192.168.95.128 443 {
delay_loop 6
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
real_server 192.168.95.128 443 {
weight 1
SSL_GET {
url {
path /
digest ff20ad2481f97b1754ef3e12ecd3a9cc
}
url {
path /mrtg/
digest 9b3a0c85a887a256d6939da88aabd8cd
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
web2配置keepalived
vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
acassen@firewall.loc
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 192.168.95.129
smtp_connect_timeout 30
router_id LVS_DEVEL
vrrp_skip_check_adv_addr
vrrp_strict
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.95.129
}
}
virtual_server 192.168.95.129 443 {
delay_loop 6
lb_algo rr
lb_kind NAT
persistence_timeout 50
protocol TCP
real_server 192.168.95.129 443 {
weight 1
SSL_GET {
url {
path /
digest ff20ad2481f97b1754ef3e12ecd3a9cc
}
url {
path /mrtg/
digest 9b3a0c85a887a256d6939da88aabd8cd
}
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
}
五、腳本編寫
mkdir /tools
cd /tools
# keepalived通知腳本
vim master.sh
ip=$(hostname -I | awk '{print $1}')
dt=$(date+'%Y%m%d %H:%M:%S')
echo "$0--${ip}--${dt}" >> /tmp/kp.log
vim backup.sh
ip=$(hostname -I | awk '{print $1}')
dt=$(date+'%Y%m%d %H:%M:%S')
echo "$0--${ip}--${dt}" >> /tmp/kp.log
vim fault.sh
ip=$(ip addr|grep inet| grep 192.168 |awk '{print $2}')
dt=$(date +'%Y%m%d %H:%M:%S')
echo "$0--${ip}--${dt}" >> /tmp/kp.log
vim stop.sh
ip=$(ip addr|grep inet| grep 192.168| awk '{print $2}')
dt=$(date +'%Y%m%d %H:%M:%S')
echo "$0--${ip}--${dt}" >> /tmp/kp.log
## keepalived健康檢查腳本
vim nginx_check.sh
#!/bin/bash
result=`pidof nginx`
if [ ! -z "${result}" ];
then
exit 0
else
exit 1
fi
# 注意腳本授權,重啟keepalived
cd /tools/ && chmod +x *.sh
systemctl restart keepalived.service六、放在瀏覽器測試

到此這篇關于Nginx+keepalived配置的實現步驟的文章就介紹到這了,更多相關Nginx keepalived配置內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Nginx?502?Bad?Gateway錯誤解決詳細指南與實例
這篇文章主要介紹了Nginx?502?Bad?Gateway錯誤解決的相關資料,502BadGateway錯誤是Web開發(fā)和運維中常見的錯誤,表示一個服務器在充當網關或代理時,從上游服務器收到了一個無效的響應,需要的朋友可以參考下2024-11-11
Kubernetes中Nginx服務啟動失敗排查流程分析(Error:?ImagePullBackOff)
這篇文章主要介紹了Kubernetes中Nginx服務啟動失敗排查流程(Error:?ImagePullBackOff),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03
nginx配置https://localhost/index報404
本文主要介紹了Nginx配置導致頁面刷新時報404錯誤的問題,主要因為靜態(tài)文件路徑配置錯誤、前端路由問題和反向代理配置錯誤這幾種錯誤,下面就來介紹一下解決方法2024-12-12

