keepalived root权限必须用root用吗

Linux开源集群架构之keepalived应用详解_图文_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
Linux开源集群架构之keepalived应用详解
上传于||文档简介
&&k​e​e​p​a​l​i​v​e​d​安​装​
​
​应​用​
​
​架​设​高​可​用​M​Y​S​Q​L​
​
​整​合​L​V​S
阅读已结束,如果下载本文需要使用
想免费下载本文?
下载文档到电脑,查找使用更方便
还剩83页未读,继续阅读
你可能喜欢使用keepalived 实现MYSQL 高可用-mysql-电脑编程网使用keepalived 实现MYSQL 高可用作者:  和相关&&使用keepalived 实现MYSQL 高可用
keepalived
下载地址:http://www.keepalived.org/download.html
master:192.168.215.80
slave :192.168.215.28
VIP
:192.168.215.34
安装 keepalived
#=======================================================================
1:#wget http://www.keepalived.org/software/keepalived-1.1.20.tar.gz
2:#tar zxvf keepalived-1.1.20.tar.gz
3:#cd keepalived-1.1.20
4:#./configure
在这一步,可能看到的是如下:
#========================================================================
Keepalived configuration
------------------------
Keepalived version
: 1.1.20
Compiler
: gcc
Compiler flags
: -g -O2
Extra Lib
: -lpopt -lssl -lcrypto
Use IPVS Framework
: No
IPVS sync daemon support : No
Use VRRP Framework
: Yes
Use Debug flags
: No
#==========================================================================
出现3个NO,一个YES。解决的办法是编译时带上内核文件夹重新编译
# ./configure --with-kernel-dir=/usr/src/kernels/2.6.18-194.26.1.el5-x86_64/
Keepalived configuration
------------------------
Keepalived version
: 1.1.20
Compiler
: gcc
Compiler flags
: -g -O2
Extra Lib
: -lpopt -lssl -lcrypto
Use IPVS Framework
: Yes
IPVS sync daemon support : Yes
Use VRRP Framework
: Yes
Use Debug flags
: No
#==========================================================================
5:#make && make install
#=======================================================================
到这里,安装完成。下面写配置文件。
配置 keepalived(master,192.168.215.80)
#=======================================================================
#mkdir /etc/keepalived
#默认的配置文件获取的路径
#vi /etc/keepalived/keepalived.conf
#配置文件的名称(把下面复制即可)
! Configuration File for keepalived
global_defs {
#全局定义
&&&&&notification_email {
#告警邮件地址组(故障发邮件在这里没有测试,我把它放到健康检查脚本里面了)
&&&&&
#发生故障,发告警的邮件地址,一般不用,可以随便写
&&&&&}
&&&&&notification_email_from
#邮件发送地址
&&&&&smtp_server 127.0.0.1
#SMTPIP
&&&&&smtp_connect_timeout 30
#邮件连接超时最长时间
&&&&&router_id MySQL-ha
#路由标识。在全局定义里只有这个是必须的,其他都可以不要。
&&&&&}
vrrp_script check__alived {
#检查MYSQL状态的函数(注意这里的花括号和名称之间有空格)
&&&&script "/root/-moniter.sh"
#这里定义脚本,注意本行需要缩进,我原来没注意,在这上面整了很长时间。可以在这个脚本里检查MYSQL是否还活着,服务器的负载是否过高等,以及什么条件做什么操作。
&&&&&&&&interval 1
#运行上面检查脚本的时间间隔,单位为妙。keepalive的守护进程执行这个脚本
&&&&&&&&weight 5
#本脚本的运行权重,权重越高的,越优先检查(只有一个检查脚本,就无所谓了)
}
vrrp_instance VI_1 {
&&&&&state BACKUP
#两台配置此处均是BACKUP,一台宕机,另外一台把VIP抢过去。
&&&&&interface eth1
#在这里要注意,虚拟IP用的是哪个网卡进行通讯。我这里机器上的eth1是内网的,eth0是外网的。
&&&&&virtual_router_id 51
#虚拟路由ID。这个标识是同一个vrrp实例使用唯一的标识。即同一个vrrp_stance,MASTER和BACKUP的virtual_router_id是一致的,同时在整个vrrp内是唯一的。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&#keepalived通过发送和接受组广播包中的同一个virtual_router_id中的成员的存活,来确定对方的不可用,一旦检测到对方不可用,立即切换他的备份角色为主。
&&&&&priority 100
#权重,数值越大,权重越大,Master必须大于Slave。另一台改为90。
&&&&&advert_int 1
#Master和Slave负载均衡器之间同步检查的时间间隔,单位:秒
&&&&&#nopreempt
#抢占,在MASTER恢复后,把VIP抢过来。在SLAVE端也一样,如果MASTER出问题了,SLAVE就把VIP抢过来。
&&&&&authentication {
#Master和Slave之间认证的方式
&&&&&auth_type PASS
&&&&&auth_pass 1111
#认证的密码
&&&&&}
&&&&&track_script{
# 使用的VRRP脚本(检查健康脚步),上面是定义,这里是使用。
&&&&&&&&&check_mysql_alived
&&&&&}
&&&&&virtual_ipaddress {
#VIP的地址
&&&&&&&&&192.168.215.34
&&&
virtual_server 192.168.215.34 3306 {
&&&&&lb_algo wrr
&&&&&lb_kind DR
&&&&&persistence_timeout 60
#会话保持时间,单位为秒,当用户从远程帐号过行登陆网站时,有了这个会话保持功能,就能把用户的请求转发到同一个应用服务器
&&&&&protocol TCP
&&&&&real_server 192.168.215.80 3306 {
#真实IP(每台机器必须指定各自的真实IP)
&&&&&TCP_CHECK {
connect_timeout 10
#连接超时时间
nb_get_retry 3
delay_before_retry 3
#重连间隔时间
connect_port 3306
#健康检查端口
&&&&&&&&&&&&&}
&&&&&&&&&}
&&&&&}
#==========================================================================
MATER端配置到此结束。
编写健康服务检测的脚本
#==========================================================================
[root@l10ntermwiki bruce]# cat mysql-moniter.sh
#monitor mysql service status and server load
#!/bin/bash
function Send_Email()
#发邮件的函数。
{
ADMIN=""
MESSAGE_FILE="/tmp/monitor.log"
#邮件里面带上本机IP地址和时间,信息更明确。
&&&&&&&&echo "VIP has been changed AT `date`,IP:`cat /etc/hosts |grep -v "127.0.0.1"|awk '{print $1}'`,please check it. Message:$1" & $MESSAGE_FILE
&&&&&&&&/bin/mail -s "VIP has been changed" $ADMIN & $MESSAGE_FILE
rm -r $MESSAGE_FILE
}
CPU_NUMBER=`cat /proc/cpuinfo |grep processor |wc -l`
#获取CPU个数。
MAX_LOAD=`echo $CPU_NUMBER*2|bc`
#最大负载认为是CPU*2。设置成CPU个数更好。
if [ `service mysql status |awk '{print $2}'` = 'running' ] #检查mysql是否活着,这里用mysql作为服务名称,有些用mysqld作为服务名称。
then
&&&LOAD=`uptime`
&&&LOAD=${LOAD##* }
#
if [ `expr $LOAD \& $CPU_LOAD` = 1 ]
# another method,compare integer and decimal
&&&if [ `echo "$LOAD & $MAX_LOAD" | bc` = 1 ]
#如果负载过高。
&&&then
&&&&&&pkill keepalived
# if load is greater than max load then kill keepalived,take VIP point to another server.
&&&&&&Send_Email "Mysql is alived,Average load is busy,so kill keepalived"
&&&fi
else
#mysql服务挂了,VIP漂移走。
&&&pkill keepalived # if mysql service is not running ,then kill keepalived,take VIP point to another server.
&&&Send_Email "Mysql service is not alived,so kill keepalived."
fi
echo `date`&&/tmp/pk.log
#这里只是为了检查脚本是否被正常执行,实际使用删除掉。
#健康检查脚本完毕。
#chmod +x /home/bruce/MySQL.sh
#分配执行权限
#==========================================================================
启动keepalvice
#==========================================================================
[root@ldc2095 keepalived-1.1.20]# keepalived -D
#-D参数,会把日志记录到/var/log/message里面
[root@ldc2095 keepalived-1.1.20]# ps aux |grep keep
root
0:00 keepalived -D
root
0:00 keepalived -D
root
0:00 keepalived -D
root
0:00 grep keep
#===========================================================================
另外一个机器的配置和上面的一样。除了修改修改的几个地方。
健康检查脚本也一致。相关资料:|||||||使用keepalived 实现MYSQL 高可用来源网络,如有侵权请告知,即处理!编程Tags:                &                    dngood 的BLOG
用户名:dngood
文章数:177
评论数:396
访问量:1754889
注册日期:
阅读量:24883
阅读量:235739
阅读量:980595
阅读量:140504
51CTO推荐博文
本文为& &haproxy + keepalived 一键安装包&& 的 第四篇
目的:帮助快速设置haproxy 与 keepalived 配置文档
(keepalived 为haproxy 做 HA 高可用)
第四篇 haproxy + keepalived &一键安装包&& 配置与测试HOWTO
一 haproxy.sh 与 keepalived.sh 服务脚本&
[root@four&cluster]#&ls&/usr/local/sbin/*.ah&haproxy.sh&&keepalived.sh&
二 设置自动启动 haproxy.sh 与 keepalived.sh
[root@four&cluster]#&cat&/etc/rc.local&&#!/bin/sh&#&#&This&script&will&be&executed&*after*&all&the&other&init&scripts.&#&You&can&put&your&own&initialization&stuff&in&here&if&you&don't&#&want&to&do&the&full&Sys&V&style&init&stuff.&&touch&/var/lock/subsys/local&ulimit&-SHn&65535&&/usr/local/sbin/haproxy.sh&start&/usr/local/sbin/keepalived.sh&start&
三 haproxy 相关配置
3.1&haroxy&程序目录&#ls&/usr/local/haproxy&doc&&haproxy.cfg&&html&&logs&&sbin&&share&&3.2&haproxy&配置文档&[root@four&cluster]#&file&/usr/local/haproxy/haproxy.cfg&&/usr/local/haproxy/haproxy.cfg:&UTF-8&Unicode&text&&3.3&编辑haproxy&配置文档&[root@four&cluster]#&vim&/usr/local/haproxy/haproxy.cfg&&第37&行&定义健康检查html文档,所以你需要在你的web服务上建立check.html文件用于haproxy&健康检查,也可以跟具需要自定义检查文档。&option&&httpchk&HEAD&/check.html&#用来做健康检查html文档&第38&39&行修10.0.1.252/253&替换成你的web&服务器ip地址&server&server1&10.0.1.252:80&cookie&server1&check&inter&2000&rise&3&&&&&fall&3&weight&3&server&server2&10.0.1.253:80&cookie&server2&check&inter&2000&rise&3&&&&&fall&3&maxconn&120&weight&3&&3.4&启动haproxy&输入如下命令&&[root@four&cluster]#&haproxy.sh&start&&3.5&检查是否有haproxy&进程&[root@four&cluster]#&ps&aux&|&grep&haproxy&|&grep&-v&'grep'&nobody&&&&&&0.2&&&&?&&&&&&&&Ss&&&20:35&&&0:00&/usr/local/haproxy/sbin/haproxy&-f&/usr/local/haproxy/haproxy.cfg&&3.6&检查haproxy&是否监听80&端口&[root@four&cluster]#&lsof&-i&:80&COMMAND&&PID&&&USER&&&FD&&&TYPE&DEVICE&SIZE&NODE&NAME&haproxy&4216&nobody&&&&4u&&IPv4&&&8229&&&&&&&TCP&*:http&(LISTEN)&&3.7&简单测试&haproxy&看看否返回&&200&OK&&[root@four&cluster]#&curl&-IL&http://10.0.1.254&(换成你的ip&)&HTTP/1.1&200&OK&Server:&nginx/1.0.5&Date:&Wed,&28&Dec&:30&GMT&Content-Type:&text/html&Content-Length:&159&Last-Modified:&Sat,&03&Dec&:10&GMT&Connection:&close&Accept-Ranges:&bytes&
四 keepalived 相关配置
4.1&keepalived&程序目录&[root@four&cluster]#&ls&/usr/local/keepalived&bin&&etc&&haproxy_check.sh&&keepalived.conf&&sbin&&share&&4.2&haproxy_check.sh&shell脚本监控程序,用于检查&80端口,来判断haproxy&是否可用&[root@four&cluster]#&file&/usr/local/keepalived/haproxy_check.sh&&/usr/local/keepalived/haproxy_check.sh:&Bourne-Again&shell&script&text&executable&&4.3&keepalived&配置文档&[root@four&cluster]#&file&/usr/local/keepalived/keepalived.conf&&/usr/local/keepalived/keepalived.conf:&ASCII&text&&4.4&编辑keepalived&配置文档&[root@four&cluster]#&vim&/usr/local/keepalived/keepalived.conf&&第16&行&interface&默认值&eth1&,改成你的haproxy&外网卡(公网ip网卡)&interface&eth0&&第&34&行&默认值&10.0.1.250/24&dev&eth1&,10.0.1.250&替换成你virtual&ip&地址,dev&eth1&改成你的haproxy&外网卡(与第16行一致)&10.0.1.250/24&dev&eth0&scope&global&&4.5&启动keepalived&输入如下命令&&[root@four&cluster]#&keepalived.sh&start&[root@four&cluster]#&4242&&&&&&&&&&&&&&&&#此处返回的是keepalived&进程id,敲下回车键即可&&4.6&检查是否有keepalived&进程&#&ps&aux&|&grep&keepalived&|&grep&-v&'grep'&&root&&&&&&&&0.0&&63844&&&464&pts/0&&&&S&&&&20:52&&&0:00&/bin/bash&/usr/local/sbin/keepalived.sh&start&root&&&&&&&&0.1&&35776&&&608&?&&&&&&&&Ss&&&20:52&&&0:00&/usr/local/keepalived/sbin/keepalived&-f&/usr/local/keepalived/keepalived.conf&root&&&&&&&&0.1&&3&?&&&&&&&&S&&&&20:52&&&0:00&/usr/local/keepalived/sbin/keepalived&-f&/usr/local/keepalived/keepalived.conf&root&&&&&&&&0.2&&6&pts/0&&&&S&&&&20:52&&&0:00&/bin/bash&/usr/local/keepalived/haproxy_check.sh&start&&4.7&查看keepalived&输出日志&[root@four&cluster]#&tail&/var/log/messages&&Dec&28&20:52:28&four&Keepalived_vrrp:&Registering&Kernel&netlink&reflector&Dec&28&20:52:28&four&Keepalived_vrrp:&Registering&Kernel&netlink&command&channel&Dec&28&20:52:28&four&Keepalived_vrrp:&Registering&gratutious&ARP&shared&channel&Dec&28&20:52:28&four&Keepalived:&Starting&VRRP&child&process,&pid=4241&Dec&28&20:53:08&four&Keepalived_vrrp:&Opening&file&'/usr/local/keepalived/keepalived.conf'.&&Dec&28&20:53:08&four&Keepalived_vrrp:&Configuration&is&using&:&63577&Bytes&Dec&28&20:53:08&four&Keepalived_vrrp:&Using&LinkWatch&kernel&netlink&reflector...&Dec&28&20:53:08&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&BACKUP&STATE&Dec&28&20:53:12&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Transition&to&MASTER&STATE&Dec&28&20:53:13&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&MASTER&STATE&&&&&&&&&&&&&&#当前keepalived&状态为master&
五 haproxy 与 keepalived 整体测试
5.1&查看&haproxy&与&keepalived&进程树&[root@four&cluster]#&pstree&&init─┬─crond&&&&&&├─events/0&&&&&&├─events/1&&&&&&├─haproxy&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&#haproxy&进程&&&&&&├─keepalived───keepalived&&&&&&&&&&&&&&&&&&&&&&#keepalived&进程(2个)&&&&&&├─keepalived.sh───haproxy_check.s───sleep&&&&&&#keepalived.sh&调用&haproxy_check.sh&(监控脚本)&调用&sleep&(用于控检查间隔时间,2s)&&&5.2&模拟网络故障&haproxy&切换测试&&haproxy&1&日志&[root@one&~]#&tail&/var/log/messages&-f&Dec&28&21:09:43&one&kernel:&NFSD:&starting&90-second&grace&period&Dec&28&21:09:44&one&Keepalived:&Starting&Keepalived&v1.2.2&(12/25,2011)&&Dec&28&21:09:44&one&Keepalived_vrrp:&Registering&Kernel&netlink&reflector&Dec&28&21:09:44&one&Keepalived_vrrp:&Registering&Kernel&netlink&command&channel&Dec&28&21:09:44&one&Keepalived_vrrp:&Registering&gratutious&ARP&shared&channel&Dec&28&21:09:44&one&Keepalived:&Starting&VRRP&child&process,&pid=1993&Dec&28&21:10:24&one&Keepalived_vrrp:&Opening&file&'/usr/local/keepalived/keepalived.conf'.&&Dec&28&21:10:24&one&Keepalived_vrrp:&Configuration&is&using&:&63597&Bytes&Dec&28&21:10:24&one&Keepalived_vrrp:&Using&LinkWatch&kernel&netlink&reflector...&Dec&28&21:10:24&one&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&BACKUP&STATE&&haproxy&2&日志&[root@four&cluster]#&ifdown&eth0&[root@four&cluster]#&tail&/var/log/messages&&Dec&28&20:52:28&four&Keepalived:&Starting&VRRP&child&process,&pid=4241&Dec&28&20:53:08&four&Keepalived_vrrp:&Opening&file&'/usr/local/keepalived/keepalived.conf'.&&Dec&28&20:53:08&four&Keepalived_vrrp:&Configuration&is&using&:&63577&Bytes&Dec&28&20:53:08&four&Keepalived_vrrp:&Using&LinkWatch&kernel&netlink&reflector...&Dec&28&20:53:08&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&BACKUP&STATE&Dec&28&20:53:12&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Transition&to&MASTER&STATE&Dec&28&20:53:13&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&MASTER&STATE&Dec&28&21:12:07&four&Keepalived_vrrp:&Kernel&is&reporting:&interface&eth0&DOWN&Dec&28&21:12:07&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&FAULT&STATE&Dec&28&21:12:07&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Now&in&FAULT&state&&&&&&&&&&&&&&&&&#keepalived&fault&状态&&haproxy&1&日志&[root@one&~]#&tail&/var/log/messages&-f&Dec&28&21:09:43&one&kernel:&NFSD:&starting&90-second&grace&period&Dec&28&21:09:44&one&Keepalived:&Starting&Keepalived&v1.2.2&(12/25,2011)&&Dec&28&21:09:44&one&Keepalived_vrrp:&Registering&Kernel&netlink&reflector&Dec&28&21:09:44&one&Keepalived_vrrp:&Registering&Kernel&netlink&command&channel&Dec&28&21:09:44&one&Keepalived_vrrp:&Registering&gratutious&ARP&shared&channel&Dec&28&21:09:44&one&Keepalived:&Starting&VRRP&child&process,&pid=1993&Dec&28&21:10:24&one&Keepalived_vrrp:&Opening&file&'/usr/local/keepalived/keepalived.conf'.&&Dec&28&21:10:24&one&Keepalived_vrrp:&Configuration&is&using&:&63597&Bytes&Dec&28&21:10:24&one&Keepalived_vrrp:&Using&LinkWatch&kernel&netlink&reflector...&Dec&28&21:10:24&one&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&BACKUP&STATE&Dec&28&21:12:08&one&Keepalived_vrrp:&VRRP_Instance(VI_1)&Transition&to&MASTER&STATE&Dec&28&21:12:09&one&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&MASTER&STATE&&&&&&&&&&&&&#成功切换为&master&&&haproxy&1&检查vip&&[root@one&~]#&ip&add&1:&lo:&,UP,LOWER_UP&mtu&16436&qdisc&noqueue&&&&&&link/loopback&00:00:00:00:00:00&brd&00:00:00:00:00:00&&&&&inet&127.0.0.1/8&scope&host&lo&&&&&inet6&::1/128&scope&host&&&&&&&&&valid_lft&forever&preferred_lft&forever&2:&eth0:&,MULTICAST,UP,LOWER_UP&mtu&1500&qdisc&pfifo_fast&qlen&1000&&&&&link/ether&08:00:27:74:3c:05&brd&ff:ff:ff:ff:ff:ff&&&&&inet&10.0.2.251/24&brd&10.0.2.255&scope&global&eth0&&&&&inet6&fe80::a00:27ff:fe74:3c05/64&scope&link&&&&&&&&&valid_lft&forever&preferred_lft&forever&3:&eth1:&,MULTICAST,UP,LOWER_UP&mtu&1500&qdisc&pfifo_fast&qlen&1000&&&&&link/ether&08:00:27:3e:9a:2b&brd&ff:ff:ff:ff:ff:ff&&&&&inet&10.0.1.251/24&brd&10.0.1.255&scope&global&eth1&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &&&&inet&10.0.1.250/24&scope&global&secondary&eth1&
#virtual ip&&&&inet6&fe80::a00:27ff:fe3e:9a2b/64&scope&link&&&&&&&&&valid_lft&forever&preferred_lft&forever&4:&sit0:&&mtu&1480&qdisc&noop&&&&&&link/sit&0.0.0.0&brd&0.0.0.0&&5.3&模拟haproxy&80端口故障&keepalived&切换测试&&haproxy&2&恢复&[root@four&cluster]#&ifup&eth0&haproxy&2&日志&[root@four&cluster]#&tail&/var/log/messages&-f&Dec&28&20:53:08&four&Keepalived_vrrp:&Configuration&is&using&:&63577&Bytes&Dec&28&20:53:08&four&Keepalived_vrrp:&Using&LinkWatch&kernel&netlink&reflector...&Dec&28&20:53:08&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&BACKUP&STATE&Dec&28&20:53:12&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Transition&to&MASTER&STATE&Dec&28&20:53:13&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&MASTER&STATE&Dec&28&21:12:07&four&Keepalived_vrrp:&Kernel&is&reporting:&interface&eth0&DOWN&Dec&28&21:12:07&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&FAULT&STATE&Dec&28&21:12:07&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Now&in&FAULT&state&Dec&28&21:15:34&four&kernel:&e1000:&eth0&NIC&Link&is&Up&1000&Mbps&Full&Duplex,&Flow&Control:&RX&Dec&28&21:15:35&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&BACKUP&STATE&&&haproxy&1&进程&[root@one&~]#&pstree&init─┬─crond&&&&&&├─dbus-daemon&&&&&&├─events/0&&&&&&├─haproxy&&&&&&├─keepalived───keepalived&&&&&&├─keepalived.sh───haproxy_check.s───sleep&&停止&haproxy&进程&[root@one&~]#&killall&haproxy&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&#停止haproxy&进程&[root@one&~]#&tail&/usr/local/keepalived/fault.log&&&&&&&&&&&&&&&&&&&#fault&log&&_21:17:50&http://10.0.1.251:80&1&&&&&&fault&&_21:17:51&http://10.0.1.251:80&2&&&&&&fault&&_21:17:52&http://10.0.1.251:80&3&&&&&&fault&&_21:17:53&http://10.0.1.251:80&4&&&&&&fault&&_21:17:54&http://10.0.1.251:80&5&&&&&&fault&&_21:17:55&http://10.0.1.251:80&6&&&&&&fault&&_21:17:56&http://10.0.1.251:80&7&&&&&&fault&&_21:17:57&http://10.0.1.251:80&8&&&&&&fault&&haproxy&1&日志&[root@one&~]#&tail&/var/log/messages&&Dec&28&21:12:09&one&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&MASTER&STATE&Dec&28&21:17:58&one&Keepalived:&Terminating&on&signal&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&Dec&28&21:17:58&one&Keepalived:&Stopping&Keepalived&v1.2.2&(12/25,2011)&&&&&&&&&&&&&&&&&&&#keepalived&被haproxy_check.sh&监控脚本关闭&Dec&28&21:17:58&one&Keepalived_vrrp:&Terminating&VRRP&child&process&on&signal&Dec&28&21:17:58&one&kernel:&ADDRCONF(NETDEV_UP):&eth0:&link&is&not&ready&Dec&28&21:17:58&one&kernel:&e1000:&eth0&NIC&Link&is&Up&1000&Mbps&Full&Duplex,&Flow&Control:&RX&Dec&28&21:17:58&one&kernel:&ADDRCONF(NETDEV_CHANGE):&eth0:&link&becomes&ready&Dec&28&21:18:00&one&kernel:&ADDRCONF(NETDEV_UP):&eth1:&link&is&not&ready&Dec&28&21:18:00&one&kernel:&e1000:&eth1&NIC&Link&is&Up&1000&Mbps&Full&Duplex,&Flow&Control:&RX&Dec&28&21:18:00&one&kernel:&ADDRCONF(NETDEV_CHANGE):&eth1:&link&becomes&ready&&&haproxy&2&日志&[root@four&cluster]#&tail&/var/log/messages&-f&Dec&28&20:53:08&four&Keepalived_vrrp:&Configuration&is&using&:&63577&Bytes&Dec&28&20:53:08&four&Keepalived_vrrp:&Using&LinkWatch&kernel&netlink&reflector...&Dec&28&20:53:08&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&BACKUP&STATE&Dec&28&20:53:12&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Transition&to&MASTER&STATE&Dec&28&20:53:13&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&MASTER&STATE&Dec&28&21:12:07&four&Keepalived_vrrp:&Kernel&is&reporting:&interface&eth0&DOWN&Dec&28&21:12:07&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&FAULT&STATE&Dec&28&21:12:07&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Now&in&FAULT&state&Dec&28&21:15:34&four&kernel:&e1000:&eth0&NIC&Link&is&Up&1000&Mbps&Full&Duplex,&Flow&Control:&RX&Dec&28&21:15:35&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&BACKUP&STATE&Dec&28&21:18:02&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Transition&to&MASTER&STATE&Dec&28&21:18:03&four&Keepalived_vrrp:&VRRP_Instance(VI_1)&Entering&MASTER&STATE&&&&&&&&&&#keepalived&状态为&master&&&&&&&&&&&&&[root@four&cluster]#&ip&add&&&&&&&&&&&&&&&&&1:&lo:&,UP,LOWER_UP&mtu&16436&qdisc&noqueue&&&&&&link/loopback&00:00:00:00:00:00&brd&00:00:00:00:00:00&&&&&inet&127.0.0.1/8&scope&host&lo&&&&&inet6&::1/128&scope&host&&&&&&&&&valid_lft&forever&preferred_lft&forever&2:&eth0:&,MULTICAST,UP,LOWER_UP&mtu&1500&qdisc&pfifo_fast&qlen&1000&&&&&link/ether&08:00:27:27:ef:a6&brd&ff:ff:ff:ff:ff:ff&&&&&inet&10.0.2.254/24&brd&10.0.2.255&scope&global&eth0&&&&&inet6&fe80::a00:27ff:fe27:efa6/64&scope&link&&&&&&&&&valid_lft&forever&preferred_lft&forever&3:&eth1:&,MULTICAST,UP,LOWER_UP&mtu&1500&qdisc&pfifo_fast&qlen&1000&&&&&link/ether&08:00:27:cd:f3:db&brd&ff:ff:ff:ff:ff:ff&&&&&inet&10.0.1.254/24&brd&10.0.1.255&scope&global&eth1&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &&&&inet&10.0.1.250/24&scope&global&secondary&eth1&
#virtual ip &&&&inet6&fe80::a00:27ff:fecd:f3db/64&scope&link&&&&&&&&&valid_lft&forever&preferred_lft&forever&4:&sit0:&&mtu&1480&qdisc&noop&&&&&&link/sit&0.0.0.0&brd&0.0.0.0&
脚本默认监控&eth1&网卡,所以你需要根据自己的需要调整,如果你haproxy&virtual&ip&在eth0&网卡,那么你需要做如下更改:&6.1&使用&#&号注释掉&第14行&第16行,取消掉&第15行&第17行&#eth1_ip=$(/sbin/ifconfig&eth1&&|&sed&-n&'/inet&addr:/&s/inet&addr://pg'&|&awk&-F&&&&'{print&$1}')&eth0_ip=$(/sbin/ifconfig&eth0&&|&sed&-n&'/inet&addr:/&s/inet&addr://pg'&|&awk&-F&&&&'{print&$1}')&#eth1_url=&http://${eth1_ip}:80&&eth0_url=&http://${eth0_ip}:80&&&6.2&将第35行&$eth1_url,替换成&$eth0_url&if&curl&-IL&-A&&haproxy_check&&&$eth1_url&&&/dev/null&2&1&;then&6.3 将第48行 $eth1_url,替换成 $eth0_urlif&!&curl&-IL&-A&&haproxy_check&&&$eth1_url&&&/dev/null&2&1&;then
5.2&模拟网络故障&haproxy&切换测试&与&5.3&模拟haproxy&80端口故障&keepalived&切换测试&&五&haproxy&与&keepalived&整体测试,反过来测试也是没有问题的,不过要保证&haproxy.sh&keepalived.sh&这两个服务脚本已经启动了,可以使用pstree&查看&如:[root@four&cluster]#&pstree&init─┬─crond&&&&&&├─events/0&&&&&&├─events/1&&&&&&├─haproxy&&&&&&├─keepalived───keepalived&&&&&&├─keepalived.sh───haproxy_check.s───sleep&
&本文出自 “” 博客,转载请与作者联系!
了这篇文章
类别:┆阅读(0)┆评论(0)
19:49:13 13:38:08 11:23:29}

我要回帖

更多关于 keepalived 使用 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信