二、Keepalived实现双机热备

版权声明:转载请注明:https://blog.csdn.net/u010285974 https://blog.csdn.net/u010285974/article/details/86750425

keepalived的作用是检测后端TCP服务的状态,如果有一台提供TCP服务的后端节点死机,或者工作出现故障,keepalived会及时检测到,并将有故障的节点从系统中剔除,当提供TCP服务的节点恢复并且正常提供服务后keepalived会自动将TCP服务的节点加入到集群中。这些工作都是keepalived自动完成,不需要人工干涉,需要人工做的只是修复发生故障的服务器,以下通过示例来演示。

  前提:为了测试能顺利进行,需先关闭selinux和firewalld。

  测试环境如下:

1

2

3

4

5

keepalived主机: 10.0.0.20

keepalived备机: 10.0.0.21

http服务器1:   10.0.0.22

http服务器2:   10.0.0.23

VIP :       10.0.0.100

一、两台http服务器的安装

  1、  两台机均安装httpd

1

$ sudo yum install -y httpd

  2、  添加首页

1

2

3

4

5

6

7

$ sudo -i

#http服务器1设置

# echo “10.0.0.22” >/var/www/html/index.html

#http服务器2设置

# echo “10.0.0.23” >/var/www/html/index.html

  3、  启动并设置开机启动httpd

1

2

$ sudo systemctl start httpd

$ sudo systemctl enable httpd

二、两台keepalived主机的设置

  1、  两台机均安装keepalived

1

2

3

#安装依赖文件与keepalive

$ sudo yum install -y openssl openssl-devel keepalived

  2、  keepalived主机配置

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

$ sudo vim /etc/keepalived/keepalived.conf

  vrrp_instance VI_1 {

    #指定该节点为主节点,备用节点设置为BACKUP

    state MASTER

    #绑定虚拟IP的网络接口

    interface eno16777736

    #VRRP组名,两个节点设置一样,以指明各个节点同属一VRRP组

    virtual_router_id 51

    #主节点的优先级,数值在1~254,注意从节点必须比主节点的优先级别低

    priority 50

    ##组播信息发送间隔,两个节点需一致

    advert_int 1

    #设置验证信息,两个节点需一致

    authentication{

      auth_type PASS

      auth_pass 1111

    }

    #指定虚拟IP,两个节点需设置一样

    virtual_ipaddress{

      10.0.0.100

    }

 }

#虚拟IP服务

virtual_server 10.0.0.100 80 {

    #设定检查间隔

    delay_loop 6

   #指定LVS算法

    lb_algo rr

   #指定LVS模式

    lb_kind NAT

    nat_mask 255.255.255.0

   #持久连接设置,会话保持时间

   persistence_timeout 50

   #转发协议为TCP

   protocol TCP

  #后端实际TCP服务配置

  real_server 10.0.0.22 80 {

     weight 1

  }

  real_server 10.0.0.23 80 {

     weight 1

  }

}

  3、   keepalived备机的keepalived.conf的配置,不同之处如下:

1

2

3

4

state BACKUP

priority 30

#其它配置跟keepalived主机相同

  /etc/keepalived/keepalived.conf为keepalived的主配置文件。以上配置state表示主节点为10.0.0.20,副节点为10.0.0.21。虚拟为IP10.0.0.100。后端的真实服务器为10.0.0.22和10.0.0.23,当通过10.0.0.100访问web服务器时,自动转到后端真实服务器,后端节点的权重相同,类似轮询的模式。

三、keepalived的启动与测试

  1、  启动keepalived

1

2

$ sudo systemctl start keepalived

$ sudo systemctl enable keepalived

  2、  查看keepalived主机的IP

1

$ ip addr show

 

四、测试结果

  1、  测试前查看keepalived主机和备机的IP,结果如图:

 

  2、  重启keepalived主机后,查看keepalived备机的IP显示

 

   以上测试结果说明,当keepalived备机在keepalived主机宕机的情况会自动接管了资源。但待keepalived主机恢复正常的时候,主机会重新接管资源。

猜你喜欢

转载自blog.csdn.net/u010285974/article/details/86750425