12 LVS+keepalived高可用群集

LVS+keepalived高可用群集linux

一 Keepalived双机热备安全

·keepalived概述服务器

Keepalived是专门针对LVS设计的一款强大的辅助工具,主要用来提供故障自动切换节点健状态检查功能,如判断LVS负载调度器、节点服务器的可用性,及时隔离并替换为新的服务器,当故障主机恢复后将其从新加入群集。在非LVS群集环境中使用时Keepalived也能够做为热备软件使用;官方网站:http://www.keepalived.org/负载均衡

·keepalived的热备方式ide

Keepalived采用VRRP(virtual router redundancy protocol,虚拟路由冗余协议)热备份协议,以软件的方式实现linux服务器的多机热备功能工具

VRRP是针对路由器的一种备份解决方案-----由多台路由器组成一个热备组。经过共用的虚拟IP地址对外提供服务;每一个热备组内同一时刻只有一台主服务器提供服务,其余服务器处于冗余状态,若当前在线的服务器失败,其余服务器会自动接替(优先级决定接替顺序)虚拟IP地址,以继续提供服务开发工具

热备组内的每台服务器均可以成为主服务器,虚拟IP地址(VIP)能够在热备组内的服务器之间进行转移,因此也称为漂移IP地址,使用Keepalived时,漂移地址的实现不须要手动创建虚拟接口配置文件(如eth0:0),而是由Keepalived根据配置文件自动管理测试

二 LVS+keepalived高可用群集网站

使用Keepalived构建LVS群集更加简便易用,主要优点体如今:对LVS负载调度器实现热备切换,提升可用性,对WEB服务器池中的节点进行分健康检查,自动移除失败节点,恢复后再从新加入ui

在基于LVS-Keepalived实现的LVS群集结构中,至少包括两台热备的负载调度器,两台以上的节点服务器,本例将以DR模式的LVS群集为基础,增长一台从负载调度器,使用Keepalived来实现主、从调度器的热备,从而构建建有负载均衡、高可用两种能力的LVS网站群集平台

·实验环境:如图所示

其中节点服务器都是双网卡

·配置主调度器

1安装keepalived支持软件

在编译安装Keepalived以前,必须先安装内核开发包kernel-devel以及openssl-devel、popt-devel等支持库(RHEL6中在装系统时若是勾选开发软件和开发工具,则会自动安装)

除此以外,在LVS群集环境中应用时,也须要用到ipvsadm管理工具,先加载ip_vs模块

2编译安装Keepalived

源码包从官网下载

使用指定的linux内核位置对keepalived进行配置,并将安装路径指定为根目录,这样就无需额外建立连接文件了

3配置为系统服务

安装完后会自动生成/etc/init.d/keepalived脚本文件,但还须要手动添加为系统服务,这样就可使用service、chkconfig工具来对keepalived服务程序进行管理了

4主服务器的配置文件

Keepalived服务的配置目录位于/etc/keepalived。其中keepalived.conf是主配置文件,另外包括一个子目录samples/,提供了许多配置样列做为参考。在keepalived的配置文件中,使用"global_defs {……}"区段指定全局参数。使用"vrrp_instance 实例名称 {……}"区段指定VRRP热备参数,注释文字以"!"符号开头

全局参数

只需定义ID便可,其它自定义或默认

实例参数

这里只需指定虚拟IP便可,实际环境中最好修改密码字串确保安全;其它所有默认

优先级中,MASTER表示主服务器;SLAVE表示备用服务器;当有多台备用的服务器,热备状态改成 BACKUP,此状态是由 priority 的值来决定的,当前priority 的值小于备机的值,那么将会失去 MASTER 状态

热备参数

根据如下参数进行配置,其它多余内容所有删除便可

5重启keepalived服务并配置防火墙

重启服务配置生效,并设置防火墙使主从之间可以通讯(VRRP协议的通告报文使用固定的组播地址224.0.0.18,用IP 报文做为传输协议进行协议报文的传送)

·配置从调度器

从调度器的配置与主调度器基本相同,只需调整keepalived配置文件中的router_id、state、prority参数便可,其他内容彻底相同

安装支持软件

安装keepalived软件包

调整配置文件

直接从主服务器中复制一份配置文件过来

只需修改一下三处便可

重启服务配置防火墙

总结:在同一个keepalived热备组内,全部服务器的keepalived配置文件基本相同。不一样之处主要在于服务器的名称标识、热备状态、优先级

·测试主、从服务器的配置

当以上状态配置完成后,

实际状态为MASTER的主服务器取得VIP控制权,并将eth0接口自动添加VIP地址,经过ip addr show dev eth0命令能够查看(注意:ifconfig命令看不到)(我这里配置ip时为eth1)

主服务器

从服务器

备用服务器中将不会为eth0接口添加VIP地址

Keepalived的日志消息保存在/var/log/messages文件中,在测试主、从故障自动切换功能时,能够跟踪此日志文件来观察热备状态的变化

在internet的测试机上执行ping 172.16.16.172 –t,(172.16.16.172为VIP地址),可以正常ping通,说明主服务器以接管VIP地址,并及时响应客户机的请求

禁用主服务器的eth0网卡,发现ping测试会中断3~4个包即恢复正常,说明已有其余服务器接替VIP地址,并及时响应客户机的请求

从新启用主服务器的eth0网卡,发现ping测试再次中断3~4个包即恢复正常,说明主服务器已恢复正常,并夺回VIP地址的控制权

在上述过程当中能够查看日志记录来了解MASTER、SLAVE状态的迁移记录

·配置共享存储服务器

配置以下

修改/etc/exports文件,内容以下:

/opt/wwwroot 192.168.7.0/24(rw,sync,no_root_squash)

容许192.168.7.0/24网段的主机访问NFS的共享

·配置节点服务器

节点服务器的配置与在DR模式中节点服务器的配置彻底同样

1调整/proc响应参数

2配置虚拟IP地址

3添加VIP本地访问路由

4链接共享目录

5安装httpd服务,开启服务并建立测试页

6配置防火墙策略

其余节点服务器一样的配置

·测试访问

使用VIP进行访问

在主调度器上观察

在从调度器上观察

模拟主调度器宕机(关闭网卡),再测试

查看从调度器,能够看出从调度器自动担任了主调度器的角色

至此有关LVS+keepalived群集配置完毕,这样即实现了lvs负载平衡又实现了调度器的热备

相关文章
相关标签/搜索