centos7+keepalived+lvs+httpd


 1 #!/bin/bash
 2 
 3 # client(ens33 nat-nic 172.16.0.129/24)
 4 # router(ens33 host-only-nic 10.0.0.57/8, ens37 nat-nic 172.16.0.128/24)
 5 # lvs-dr1(ens33:1 10.0.0.77/32, ens33 host-only-nic 10.0.0.91/24, ipvsadm+keepalived)
 6 # lvs-dr2(ens33:1 10.0.0.77/32, ens33 host-only-nic 10.0.0.92/24, ipvsadm+keepalived)
 7 # lvs-rs1(lo:0 10.0.0.77/32, ens33 host-only-nic 10.0.0.93/24, httpd)
 8 # lvs-rs2(lo:0 10.0.0.77/32, ens33 host-only-nic 10.0.0.94/24, httpd)
 9 
10 ROUTERID=91
11 VROUTERID=77
12 MCASTIP=224.0.0.$VROUTERID
13 MYIP=10.0.0.$ROUTERID
14 VIPADDR=10.0.0.$VROUTERID
15 ISBACKUP=0
16 KSTATE=MASTER
17 #KSTATE=BACKUP
18 KPRIORITY=100
19 #KPRIORITY=80
20 
21 setenforce 0
22 sed -i '/^SELINUX=/c SELINUX=disabled/' /etc/selinux/config
23 systemctl disable --now firewalld
24 iptables -F
25 iptables -t nat -F
26 
27 
28 #echo 1 > /proc/sys/net/ipv4/ip_forward
29 
30 ###----keepalived
31 
32 if [ $ISBACKUP -eq 1 ]; then
33   KSTATE=BACKUP
34   KPRIORITY=80
35 fi
36 
37 
38 yum -y install keepalived ipvsadm
39 #apt -y install keepalived ipvsadm
40 
41 cp /etc/keepalived/keepalived.conf{,.bak}
42 
43 cat > /etc/keepalived/keepalived.conf <<EOF
44 ! Configuration File for keepalived 
45 global_defs {  
46    router_id ka-lvs-$ROUTERID
47    #vrrp_skip_check_adv_addr
48    #vrrp_garp_interval 0
49    #vrrp_gna_interval 0
50    #vrrp_mcast_group4 $MCASTIP
51 }   
52 vrrp_instance VI_1 {
53     state $KSTATE
54     interface ens33
55     virtual_router_id $VROUTERID
56     priority $KPRIORITY
57     authentication {   
58         auth_type PASS
59         auth_pass 1111
60     }
61     virtual_ipaddress {
62         $VIPADDR/32 dev ens33 label ens33:1
63     }
64 }
65 
66 virtual_server $VIPADDR 80 {
67     delay_loop 3
68     lb_algo rr
69     lb_kind DR
70     persistence_timeout 50
71     protocol TCP
72     real_server 10.0.0.93 80 {
73         weight 1
74         TCP_CHECK {
75           connect_port 80
76           connect_timeout 3
77           retry 3
78           delay_before_retry 3
79         }
80     }
81     real_server 10.0.0.94 80 {
82         weight 1
83         TCP_CHECK {
84           connect_port 80
85           connect_timeout 3
86           retry 3
87           delay_before_retry 3
88         }
89     }
90 }
91 EOF
92 
93 #ipvsadm --save > /etc/sysconfig/ipvsadm
94 systemctl enable --now keepalived
95 
96 echo $(date +"%F %T")

 

原创文章,作者:1402239773,如若转载,请注明出处:https://blog.ytso.com/274454.html

(0)
上一篇 2022年7月15日
下一篇 2022年7月15日

相关推荐

发表回复

登录后才能评论