您的位置 首页 教育

LVS集群+Keepalived高可用的部署

目录 1. Keepalived介绍 1.1 什么是Keepalived 1.2 VRRP协议 2. Keep…

目录

1. Keepalived介绍

1.1 什么是Keepalived

1.2 VRRP协议

2. Keepalived体系模块及其作用

3. 部署过程

3.1 主服务器

3.2 备服务器 

 3.3 配置节点服务器

4. 测试 

5. 总结 

主备服务器配置文件中不同的地方

主备服务器配置文件中相同的地方

从服务器设置


1. Keepalived介绍

1.1 什么是Keepalived

Keepalived是一个基于VRRP协议来实现的LVS服务高可用方案,可以解决静态路由出现的单点故障问题。

Keepalived的作用是检测服务器的状态,如果有一台web服务器宕机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后Keepalived自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器。

1.2 VRRP协议

VRRP是一种选择协议,它可以把一个虚拟路由器的责任动态分配到局域网上的 VRRP 路由器中的一台。控制虚拟路由器 IP 地址的 VRRP 路由器称为主路由器,它负责转发数据包到这些虚拟 IP 地址。一旦主路由器不可用,这种选择过程就提供了动态的故障转移机制,这就允许虚拟路由器的 IP 地址可以作为终端主机的默认第一跳路由器。

2. Keepalived体系模块及其作用

  • core模块:为keepalived的核心,负责主进程的启动、维护及全局配置文件的加载和解析。
  • vrrp模块:是来实现VRRP协议的。
  • check模块:负责健康检查,常见的方式有端口检查及URL检查。

3. 部署过程

实验准备
主DR 服务器:192.168.112.89
备DR 服务器:192.168.112.99
Web 服务器1:192.168.59.100
Web 服务器2:192.168.59.101

3.1 主服务器

安装服务

修改配置文件 

(1)配置keeplived(主、备DR 服务器上都要设置)
cd /etc/keepalived/
cp keepalived.conf keepalived.conf.bak
vim keepalived.conf
......
global_defs {						#定义全局参数
--10行--修改,邮件服务指向本地
	smtp_server 127.0.0.1
--12行--修改,指定服务器(路由器)的名称,主备服务器名称须不同,主为LVS_01,备为LVS_02
	router_id LVS_01
--14行--注释掉,取消严格遵守VRRP协议功能,否则VIP无法被连接
	#vrrp_strict
}

vrrp_instance VI_1 {				#定义VRRP热备实例参数
--20行--修改,指定热备状态,主为MASTER,备为BACKUP
    state MASTER
--21行--修改,指定承载vip地址的物理接口
    interface ens33
--22行--修改,指定虚拟路由器的ID号,每个热备组保持一致	
    virtual_router_id 10
	#nopreempt		#如果设置非抢占模式,两个节点state必须为bakcup,并加上配置 nopreempt
--23行--修改,指定优先级,数值越大优先级越高,这里设置主为100,备为90
    priority 100
    advert_int 1					#通告间隔秒数(心跳频率)
    authentication {				#定义认证信息,每个热备组保持一致
		auth_type PASS				#认证类型
--27行--修改,指定验证密码,主备服务器保持一致
        auth_pass abc123
    }
    virtual_ipaddress {				#指定群集vip地址
        192.168.80.188
    }
}
--36行--修改,指定虚拟服务器地址(VIP)、端口,定义虚拟服务器和Web服务器池参数
virtual_server 192.168.80.188 80 {
    delay_loop 6					#健康检查的间隔时间(秒)
    lb_algo rr						#指定调度算法,轮询(rr)
--39行--修改,指定群集工作模式,直接路由(DR)
    lb_kind DR
    persistence_timeout 0			#连接保持时间(秒)
    protocol TCP					#应用服务采用的是 TCP协议
--43行--修改,指定第一个Web节点的地址、端口
    real_server 192.168.80.12 80 {
        weight 1					#节点的权重
--45行--删除,添加以下健康检查方式		
        TCP_CHECK {
			connect_port 80			#添加检查的目标端口
			connect_timeout 3		#添加连接超时(秒)
			nb_get_retry 3			#添加重试次数
			delay_before_retry 3	#添加重试间隔
		}
	}

	real_server 192.168.80.13 80 {		#添加第二个 Web节点的地址、端口
        weight 1
        TCP_CHECK {
			connect_port 80
			connect_timeout 3
			nb_get_retry 3
			delay_before_retry 3
		}
	}
##删除后面多余的配置##
}


systemctl start keepalived
ip addr						#查看虚拟网卡vip

3.2 备服务器 

使用以上的方法配置备服务器

 3.3 配置节点服务器

节点服务器1 192.168.112.100

准备http主页

 

 节点服务器2 192.168.112.101

准备http主页 

4. 测试 

 

 关闭主服务器keepalived服务

 查看备服务器虚拟地址

 再次通过客户端访问虚拟地址

 

仍可访问!

5. 总结 

主备服务器配置文件中不同的地方

  • 12行    指定服务器(路由器)的名称,主备服务器名称须不同,主为LVS_01,备为LVS_02
  • 20行    指定热备状态,主为MASTER,备为BACKUP
  • 23行    指定优先级,数值越大优先级越高

主备服务器配置文件中相同的地方

  • 22行   指定虚拟路由器的ID号,每个热备组保持一致
  • 27行   指定验证密码,主备服务器保持一致
  • 36行   指定虚拟服务器地址(VIP)、端口,定义虚拟服务器和Web服务器池参数

从服务器设置

  • 配置虚拟地址
  • 配置sysctl.conf文件

本文来自网络,不代表0514资讯网立场,转载请注明出处:https://www.0514zx.com/info/6409.html
0514zx.com

作者: 0514zx.com

优质职场领域创作者
联系我们

联系我们

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部