High Availability
To deploy High Availability response systems you need multiple vDDoS Servers at the Front-end, they will IP Failover based on vDDoS failover.
Let’s say you have 2 vDDoS Servers in the Front-end and 3 IP addresses:
Install vDDoS: (on 2 servers)
MASTER SERVER:
curl -L https://github.com/duy13/vDDoS-Protection/raw/master/vddos-x.x.x-centos7 -o /usr/bin/vddos chmod 700 /usr/bin/vddos /usr/bin/vddos help /usr/bin/vddos setup /usr/bin/vddos autostart /usr/bin/vddos start
SLAVE SERVER:
curl -L https://github.com/duy13/vDDoS-Protection/raw/master/vddos-x.x.x-centos7 -o /usr/bin/vddos chmod 700 /usr/bin/vddos /usr/bin/vddos help /usr/bin/vddos setup /usr/bin/vddos autostart /usr/bin/vddos start
Install Keepalived: (on 2 servers)
MASTER SERVER:
echo "net.ipv4.ip_nonlocal_bind = 1" >> /etc/sysctl.conf sysctl -p
yum -y install keepalived mv /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak
nano /etc/keepalived/keepalived.conf global_defs { notification_email { [email protected] } notification_email_from [email protected] smtp_server 127.0.0.1 smtp_connect_timeout 30 } vrrp_script chk_curl { script "/usr/bin/curl http://16.11.16.11" interval 2 weight -4 timeout 5 fall 2 rise 2 } vrrp_instance VI_1 { state MASTER interface eno16777736 virtual_router_id 51 priority 101 advert_int 1 authentication { auth_type PASS auth_pass 123456 } virtual_ipaddress { 16.11.16.100/24 dev eno16777736 } track_script { chk_curl } }
service keepalived start chkconfig keepalived on
SLAVE SERVER:
echo "net.ipv4.ip_nonlocal_bind = 1" >> /etc/sysctl.conf sysctl -p
yum -y install keepalived mv /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak
nano /etc/keepalived/keepalived.conf global_defs { notification_email { [email protected] } notification_email_from [email protected] smtp_server 127.0.0.1 smtp_connect_timeout 30 } vrrp_script chk_curl { script "/usr/bin/curl http://16.11.16.12" interval 2 weight -4 timeout 5 fall 2 rise 2 } vrrp_instance VI_1 { state SLAVE interface eno16777736 virtual_router_id 51 priority 101 advert_int 1 authentication { auth_type PASS auth_pass 123456 } virtual_ipaddress { 16.11.16.100/24 dev eno16777736 } track_script { chk_curl } }
service keepalived start chkconfig keepalived on
eno16777736:
the network port of the vDDoS Server (eth0, eth1…)
16.11.16.100:
the virtual network address of the VIP
priority 101:
higher priority
Check Failover: