天气多云,微风不燥。
1:首先我们要知道keeplived起初是专门针对lvs设计的一款辅助工具,主要用来提供故障切换和健康检查功能;
用来判断lvs负载调度器,节点服务器的可用性,当故障机恢复后将其重新加入群集。

2: keepaived:采用VRRP(虚拟路由器冗余协议)热备份协议,以软件的方式实现Linux服务器的多机热备功能。

举个栗子:

Centos7配置 mysql双机热备 linux 双机热备教程_高可用负载均衡群集


如上图:VRRP是针对路由器的一种备份方案:由多台路由器组成一个热备组通过公共的虚拟IP地址对外提供服务;每个热备组同一时刻只有一台主路由器提供服务,其它是冗余状态,只要主的坏了,其它的路由器会根据各自的优先级和mac地址来选择谁做主路由器。

**热备组内的每台路由器都可能成为主路由器,虚拟路由器的IP地址(VIP)可以在热备组内的路由器之间进行转移,所以也称为漂移地址。**使用keeplived时;漂移地址不需要手动建立虚接口配置文件,由自己自动管理。

实验案例:LVS+Keepalived高可用群集

Centos7配置 mysql双机热备 linux 双机热备教程_高可用负载均衡群集_02


实验要求:

Centos7配置 mysql双机热备 linux 双机热备教程_keepalived_03


Centos7配置 mysql双机热备 linux 双机热备教程_Linux_04


实验步骤:

1:实验环境:其中客户机用真实机代替访问:

http://www.keepalived.org/为keppalived官网

Centos7配置 mysql双机热备 linux 双机热备教程_lvs+keepalived群集_05


2:实验要求:(群集IP地址为200.0.0.100,所有主机关闭防火墙和NetworkManager服务)

3:先安装centOS7光盘,编译yum;用yum编译安装keepalived环境中也需要安装ipvsadm管理工具。

主从都需要安装下图是keepalived

Centos7配置 mysql双机热备 linux 双机热备教程_Linux_06


配置地址与漂移地址:

Centos7配置 mysql双机热备 linux 双机热备教程_高可用负载均衡群集_07


Centos7配置 mysql双机热备 linux 双机热备教程_lvs+keepalived群集_08


Centos7配置 mysql双机热备 linux 双机热备教程_keepalived_09


Centos7配置 mysql双机热备 linux 双机热备教程_lvs+keepalived群集_10


从调度器IP配置:

Centos7配置 mysql双机热备 linux 双机热备教程_keepalived_11


(2)修改内核参数( /etc/sysctl.conf)文件,关闭ICMP重定向。

Centos7配置 mysql双机热备 linux 双机热备教程_高可用负载均衡群集_12


Centos7配置 mysql双机热备 linux 双机热备教程_高可用负载均衡群集_13


(3)keepalived.conf的配置

(4)安装Nginx,及配置(节点1 与节点2 除网页内容不同外其余配置一样)1:编译yum ,安装支持的软件包并创建组:

Centos7配置 mysql双机热备 linux 双机热备教程_Linux_14


Centos7配置 mysql双机热备 linux 双机热备教程_lvs+keepalived群集_15


2:编译安装Nginx

Centos7配置 mysql双机热备 linux 双机热备教程_高可用负载均衡群集_16


Centos7配置 mysql双机热备 linux 双机热备教程_keepalived_17


Centos7配置 mysql双机热备 linux 双机热备教程_lvs+keepalived群集_18


启动Nginx服务:

Centos7配置 mysql双机热备 linux 双机热备教程_keepalived_19


Centos7配置 mysql双机热备 linux 双机热备教程_lvs+keepalived群集_20


Centos7配置 mysql双机热备 linux 双机热备教程_Centos7配置 mysql双机热备_21


改配置文件:在server配置项修改参数,在其下添加访问日志状态统计信息

Centos7配置 mysql双机热备 linux 双机热备教程_Linux_22


Centos7配置 mysql双机热备 linux 双机热备教程_Linux_23

Centos7配置 mysql双机热备 linux 双机热备教程_Linux_24


重启服务:因为没有编写nx服务脚本所以需要杀两次;

Centos7配置 mysql双机热备 linux 双机热备教程_keepalived_25


创建一个目录用于更改网页内容

Centos7配置 mysql双机热备 linux 双机热备教程_Centos7配置 mysql双机热备_26


测试:在浏览器中访问

Centos7配置 mysql双机热备 linux 双机热备教程_高可用负载均衡群集_27


Centos7配置 mysql双机热备 linux 双机热备教程_Linux_28


节点2同节点1:

Centos7配置 mysql双机热备 linux 双机热备教程_高可用负载均衡群集_29


Centos7配置 mysql双机热备 linux 双机热备教程_Centos7配置 mysql双机热备_30


以上是配置Nginx网页;

接下来配置节点服务器:

(1):先配置虚拟IP地址(VIP地址)

Centos7配置 mysql双机热备 linux 双机热备教程_keepalived_31


Centos7配置 mysql双机热备 linux 双机热备教程_lvs+keepalived群集_32


Centos7配置 mysql双机热备 linux 双机热备教程_keepalived_33


Centos7配置 mysql双机热备 linux 双机热备教程_lvs+keepalived群集_34


Centos7配置 mysql双机热备 linux 双机热备教程_keepalived_35


调整 /proc响应参数:

Centos7配置 mysql双机热备 linux 双机热备教程_Linux_36


Centos7配置 mysql双机热备 linux 双机热备教程_Linux_37

到这里俩节点服务器已完成。

3:主调度器配置:

先关闭防火墙:(步骤略过)

Centos7配置 mysql双机热备 linux 双机热备教程_lvs+keepalived群集_38


Centos7配置 mysql双机热备 linux 双机热备教程_lvs+keepalived群集_39


web服务器池配置;配置完成后重启服务。

Centos7配置 mysql双机热备 linux 双机热备教程_Centos7配置 mysql双机热备_40


Centos7配置 mysql双机热备 linux 双机热备教程_keepalived_41


配置从调度器:

Centos7配置 mysql双机热备 linux 双机热备教程_lvs+keepalived群集_42


Centos7配置 mysql双机热备 linux 双机热备教程_Linux_43


配置完成。

客户端测试:

Centos7配置 mysql双机热备 linux 双机热备教程_Centos7配置 mysql双机热备_44


当主坏掉时从变主网页继续访问。

Centos7配置 mysql双机热备 linux 双机热备教程_Linux_45


Centos7配置 mysql双机热备 linux 双机热备教程_lvs+keepalived群集_46