部署环境
操作系统:CentOS 6.5 Kernel 2.6.32-431 el6.x86_64
Keepalived版本:Keepalived for Linux - Version 1.2.13
双机IP:192.168.1.201(主),192.168.1.202(备)
虚拟IP:192.168.1.254
测试说明
通过vrrp配置双机高可用,在201和202两台服务器上安装keepalived,并虚拟192.168.1.254 IP,客户机通过虚拟IP访问两台设备上的httpd服务,测试用例包括以下方式:
1、两台设备服务正常运行,通过访问VIP,客户机应能访问Master(201)主机的http页面;
2、关闭Master(201)主机,VIP切换到Slave(202)上,通过访问VIP,客户机能访问到Slave(202)主机的http页面;
3、重新开启Master(201)主机,VIP切换回Master(201)上,通过访问VIP,客户机能访问到Master(201)主机的http页面;
4、关闭Slave(202)主机,通过访问VIP,客户机能访问到Master(201)主机的http页面;
配置文件修改
keepalived安装目录提供了一些样例配置文件,可以在/usr/local/etc/keepalived/samples目录下找到,可以看到samples目录下的文件有:
[root@centos-server-01 samples]# ll
总用量 100
-rw-r--r--. 1 root root 1745 7月 19 16:48 client.pem
-rw-r--r--. 1 root root 245 7月 19 16:48 dh1024.pem
-rw-r--r--. 1 root root 433 7月 19 16:48 keepalived.conf.fwmark
-rw-r--r--. 1 root root 684 7月 19 16:48 keepalived.conf.HTTP_GET.port
-rw-r--r--. 1 root root 746 7月 19 16:48 keepalived.conf.inhibit
-rw-r--r--. 1 root root 895 7月 19 16:48 keepalived.conf.IPv6
-rw-r--r--. 1 root root 550 7月 19 16:48 keepalived.conf.misc_check
-rw-r--r--. 1 root root 538 7月 19 16:48 keepalived.conf.misc_check_arg
-rw-r--r--. 1 root root 2467 7月 19 16:48 keepalived.conf.quorum
-rw-r--r--. 1 root root 919 7月 19 16:48 keepalived.conf.sample
-rw-r--r--. 1 root root 2760 7月 19 16:48 keepalived.conf.SMTP_CHECK
-rw-r--r--. 1 root root 1587 7月 19 16:48 keepalived.conf.SSL_GET
-rw-r--r--. 1 root root 842 7月 19 16:48 keepalived.conf.status_code
-rw-r--r--. 1 root root 735 7月 19 16:48 keepalived.conf.track_interface
-rw-r--r--. 1 root root 887 7月 19 16:48 keepalived.conf.virtualhost
-rw-r--r--. 1 root root 1087 7月 19 16:48 keepalived.conf.virtual_server_group
<span style="color:#ff0000;"><strong>-rw-r--r--. 1 root root 1425 7月 19 16:48 keepalived.conf.vrrp</strong></span>
-rw-r--r--. 1 root root 3019 7月 19 16:48 keepalived.conf.vrrp.localcheck
-rw-r--r--. 1 root root 1083 7月 19 16:48 keepalived.conf.vrrp.lvs_syncd
-rw-r--r--. 1 root root 888 7月 19 16:48 keepalived.conf.vrrp.routes
-rw-r--r--. 1 root root 1146 7月 19 16:48 keepalived.conf.vrrp.scripts
-rw-r--r--. 1 root root 591 7月 19 16:48 keepalived.conf.vrrp.static_ipaddress
-rw-r--r--. 1 root root 1742 7月 19 16:48 keepalived.conf.vrrp.sync
-rw-r--r--. 1 root root 802 7月 19 16:48 root.pem
-rw-r--r--. 1 root root 323 7月 19 16:48 sample.misccheck.smbcheck.sh
将keepalived.conf.vrrp文件复制到/etc/keepalived目录下,并重命名为keepalived.conf,修改文件内容如下:
#Master(192.168.1.201)上的配置
global_defs {
router_id LVS_DEVEL
}
vrrp_instance VI_1 {
state MASTER # 主机是MASTER,备机是BACKUP
interface eth0
garp_master_delay 10
smtp_alert
virtual_router_id 51
priority 100 #优先级设定,主机优先级最高,备机要比这个数值低
advert_int 1 # 每一秒进行一次通信
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.254
}
}
<pre name="code" class="plain">#Backup(192.168.1.202)上的配置
global_defs {
router_id LVS_DEVEL
}
vrrp_instance VI_1 {
state <span style="font-family: Arial, Helvetica, sans-serif;">BACKUP </span># 主机是MASTER,备机是BACKUP
interface eth0
garp_master_delay 10
smtp_alert
virtual_router_id 51
priority 80 #优先级设定,主机优先级最高,备机要比这个数值低
advert_int 1 # 每一秒进行一次通信
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.254
}
}
测试过程和结果
在192.168.1.201上建立html页面:[root@centos-server-02 keepalived]# vi /var/www/html/index.html
页面内容如下:
<html>
<body>111111111111111</body>
</html>
在192.168.1.202上建立html页面:
[root@centos-server-02 keepalived]# vi /var/www/html/index.html
页面内容如下:
<html>
<body>22222222222222222</body>
</html>
分别启动两台机器的httpd服务:service httpd start
按照测试说明,执行测试步骤,可得到预期结果!