keepalived+lvs는 고가용성을 달성합니다.

목차

환경

1. 실제 서버 서버 구성

2. keepalived 및 lvs 구성

3. 테스트:

개요

keepalived+lvs는 고가용성을 달성합니다.

lvs는 백엔드 서버를 모니터링하고 서버가 다운되면 장애 조치할 수 있습니다.

Keepalived는 VIP를 감지하는 것으로 특정 호스트의 VIP가 잘못되면 다른 노드로 VIP를 드리프트합니다.

환경

5개의 호스트---(2개의 호스트--유지, lvs 2개의 호스트--실제 서버 서버, 1개의 호스트--클라이언트)

1. 실제 서버 서버 구성

后端服务器---real-serer

1.yum install -y httpd

2.编写lvs脚本
vim  /etc/init.d/lvs_rs
(脚本过长)

3.给脚本权限
chmod +x /etc/init.d/lvs_rs

4.添加为系统服务
chkconfig --add lvs_rs

4.当前启动
/etc/init.d/lvs_rs start

5.查看本机IP是否产生vip
6.配置服务器页面
echo "xxxxx" > /var/www/html/index.html

2. keepalived 및 lvs 구성

主备节点都需要配置
1.keepalived中自带了lvs的模块,所以下载ipvsadm后配置在keepalived的配置文件里即可
yum install -y ipvsadm
2.对于keepalived的配置之前有,这里显示keepalived中lvs的配置
vim /etc/keepalived/keepalived.conf
[root@localhost ~]# vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
[email protected]
}
notification_email_from [email protected]
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id LVS_DEVEL1
}
vrrp_instance VI_1 {
state MASTER
interface ens33
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.27.135
}
}
virtual_server 192.168.27.135 80 {       设置的vip
    delay_loop 6
    lb_algo rr
    lb_kind DR
    protocol TCP
real_server 192.168.27.122 80 {          后端的real-server服务器的ip
    weight 1
TCP_CHECK {
    connect_timeout 3
    nb_get_retry 3
    delay_before_retry 3
    connect_port 80
}
}
real_server 192.168.27.123 80 {
    weight 1
TCP_CHECK {
    connect_timeout 3
    nb_get_retry 3
    delay_before_retry 3
    connect_port 80
}
}
}

keepalived를 다시 시작하고 VIP가 있는지 확인하십시오.

3. 테스트:

클라이언트는 VIP를 사용하여 다음에 액세스합니다.

for ((i=1;i<=6;i++));do curl vip ;done

 반환되는 페이지는 서로 다른 백엔드 서버에서 제공하는 페이지로 실제 서버 중 하나가 다운되면 다운타임 서버에 대한 장기 요청을 방지하기 위해 다른 서버로 요청을 전송합니다.

프런트 엔드에서 하나의 keepalived가 다운되면 vip 드리프트가 수행되고 다른 keepalived가 마스터 노드의 모든 서비스를 인계받으며 클라이언트는 계속 액세스할 수 있습니다.

おすすめ

転載: blog.csdn.net/weixin_62173637/article/details/132355040