返回顶部
分享到

Nginx+keepalived配置的实现步骤

nginx 来源:互联网 作者:佚名 发布时间:2025-05-13 20:56:39 人浏览
摘要

一、需要的服务 Nginx、keepalived、epel-release -y 二、安装命令 1 2 3 4 5 6 7 yum install -y keepalived #安装nginx以及拓展源 yum install epel-release -y yum install -y nginx 三、配置web服务 1、web1的nginx配置 1 2 3 4 5

一、需要的服务

Nginx、keepalived、epel-release -y

二、安装命令

1

2

3

4

5

6

7

yum install -y keepalived

 

#安装nginx以及拓展源

 

yum install epel-release -y

 

yum install -y nginx

三、配置web服务

1、web1的nginx配置

1

2

3

4

5

6

7

8

[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.html

2、web2的nginx配置

1

2

3

4

5

6

7

8

[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.html

3、#启动

1

2

nginx -t

nginx

四、 配置keepalived

以192.168.95.128 作为web1的master,192.168.95.129 作为web2为例

 web1配置keepalived

1

vim /etc/keepalived/keepalived.conf

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

! 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 

1

vim /etc/keepalived/keepalived.conf

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

! 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

        }

    }

}

五、脚本编写

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

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

六、放在浏览器测试


版权声明 : 本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务和不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权, 违法违规的内容, 请发送邮件至2530232025#qq.cn(#换@)举报,一经查实,本站将立刻删除。
原文链接 :
相关文章
  • Nginx+keepalived配置的实现步骤

    Nginx+keepalived配置的实现步骤
    一、需要的服务 Nginx、keepalived、epel-release -y 二、安装命令 1 2 3 4 5 6 7 yum install -y keepalived #安装nginx以及拓展源 yum install epel-release -y yum ins
  • nginx中重定向的实现
    一、location 1、 location匹配 location匹配的就是后面的URI /wordpress 192.168.100.11/wordpress 2、 location匹配的分类 2.1 精确匹配 location = / 对字符串进行
  • nginx配置多域名共用服务器80端口
    多个域名,比如两个域名,这两个域名其实共用一台服务器(意味着域名解析到同一个IP),一个域名为abc.com(可以是http://abc.com或者www.a
  • nginx upstream六种方式分配介绍
    1 轮询(默认) 每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。 2 weight 指定轮询几率,weight和访问
  • Nginx之upstream被动式重试机制的实现
    我们使用Nginx通过反向代理做负载均衡时,如果被代理的其中一个服务发生错误或者超时的时候,通常希望Nginx自动重试其他的服务,从而实
  • Nginx搭建自己的CDN服务器的方法
    nginx安装 1 2 sudo apt update sudo apt install nginx nginx配置文件 /etc/nginx/nginx.conf或/etc/nginx/sites-available/default 设置缓存 在Nginx配置中启用缓存,这样
  • Nginx实现动态封禁IP的步骤
    在日常的生产环境中,网站可能会遭遇恶意请求、DDoS 攻击或其他有害的访问行为。为了应对这些情况,动态封禁 IP 是一项十分重要的安全
  • Nginx HTTP Status 400 –错误的请求问题解决

    Nginx HTTP Status 400 –错误的请求问题解决
    第一:实验故障 今天小编在搭建完Nginx反向代理两个Tomcat站点,实现负载均衡的实验,访问网页内容时,提示如下报错: HTTP Status 400 错误的
  • nginx反向代理java项目方式
    nginx反向代理java项目 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 server { listen 80; server_name ***.***.com; location / { proxy_pass http://127.0.0.1:8686; } #一键申请SSL证
  • 使用Nginx解决前端跨域问题
    1. 理解 CORS 和同源策略 1.1 同源策略 同源策略是一种浏览器安全机制,用于阻止不同源(不同域名、协议或端口)的 Web 应用相互访问数据。
  • 本站所有内容来源于互联网或用户自行发布,本站仅提供信息存储空间服务,不拥有版权,不承担法律责任。如有侵犯您的权益,请您联系站长处理!
  • Copyright © 2017-2022 F11.CN All Rights Reserved. F11站长开发者网 版权所有 | 苏ICP备2022031554号-1 | 51LA统计