keepalived+haproxy+mycat mycat集群搭建
来源:互联网 发布:linux windows传文件 编辑:程序博客网 时间:2024/05/21 07:58
一,总体架构:
241为虚拟IP,90和120为集群的IP
二,HaProxy安装
安装目录:/usr/local/haproxy
重要配置文件: haproxy.cfg
配置mycat是否存活脚本:/etc/xinetd.d/mycat_status
文本:
service mycat_status
{
flags = REUSE
socket_type = stream
port = 48700
wait = no
user = nobody
server =/usr/local/bin/mycat_status
log_on_failure += USERID
disable = no
/usr/local/bin/mycat_status
文本:
mycat=`/usr/local/mycat/bin/mycat status |grep 'not running'| wc -l`
if [ "$mycat" = "0" ];
then
/bin/echo -e "HTTP/1.1 200 OK\r\n"
else
/bin/echo -e "HTTP/1.1 503 Service Unavailable\r\n"
fi
启动/停止脚本:
/usr/local/haproxy/sbin/start:
/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg &
/usr/local/haproxy/sbin/stop:
ps -ef | grep sbin/haproxy | grep -v grep |awk '{print $2}'|xargs kill -s 9
三,keepalived安装信息:
安装目录: /usr/local/src
重要配置: /etc/keepalived/keepalived.conf
global_defs {
#notification_email {
# test@admin.com
#}
#notification_email_from admin@aidmin.com
#smtp_server 127.0.0.1
#smtp_connect_timeout 30
router_id MyCAT-ha
}
vrrp_script chk_http_port {
script"/etc/keepalived/scripts/check_haproxy.sh"
interval 2
weight 2
}
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 241
priority 100
advert_int 1
nopreempt
authentication {
auth_type PASS
auth_pass 1111
}
track_script {
chk_http_port #调用脚本check_haproxy.sh检查haproxy是否存活
}
virtual_ipaddress {
10.130.85.241 dev eth0 scope global
}
notify_master /etc/keepalived/scripts/haproxy_master.sh
notify_backup /etc/keepalived/scripts/haproxy_backup.sh
notify_fault /etc/keepalived/scripts/haproxy_fault.sh
notify_stop /etc/keepalived/scripts/haproxy_stop.sh
}
/etc/keepalived/scripts/haproxy_master.sh
STARTHAPROXY=`/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg`
STOPHAPROXY=`ps -ef | grep sbin/haproxy | grep -v grep | awk '{print $2}'| xargs kill -s 9`
LOGFILE="/usr/local/keepalived/var/log/keepalived-haproxy-state.log"
echo "[master]" >> $LOGFILE
date >> $LOGFILE
echo "Being master...." >> $LOGFILE 2>&1
echo "stop haproxy...." >> $LOGFILE 2>&1
$STOPHAPROXY >> $LOGFILE 2>&1
echo "start haproxy...." >> $LOGFILE 2>&1
$STARTHAPROXY >> $LOGFILE 2>&1
echo "haproxy stared ..." >> $LOGFILE
/etc/keepalived/scripts/haproxy_backup.sh
STARTHAPROXY=`/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg`
STOPHAPROXY=`ps -ef | grep sbin/haproxy | grep -v grep | awk '{print $2}'| xargs kill -s 9`
LOGFILE="/usr/local/keepalived/var/log/keepalived-haproxy-state.log"
echo "[backup]" >> $LOGFILE
date >> $LOGFILE
echo "Being backup...." >> $LOGFILE 2>&1
echo "stop haproxy...." >> $LOGFILE 2>&1
$STOPHAPROXY >> $LOGFILE 2>&1
echo "start haproxy...." >> $LOGFILE 2>&1
$STARTHAPROXY >> $LOGFILE 2>&1
echo "haproxy stared ..." >> $LOGFILE
/etc/keepalived/scripts/haproxy_fault.sh
LOGFILE=/usr/local/keepalived/var/log/keepalived-haproxy-state.log
echo "[fault]" >> $LOGFILE
date >> $LOGFILE
/etc/keepalived/scripts/haproxy_stop.sh
LOGFILE=/usr/local/keepalived/var/log/keepalived-haproxy-state.log
echo "[stop]" >> $LOGFILE
date >> $LOGFILE
/etc/keepalived/scripts/check_haproxy.sh
STARTHAPROXY="/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg"
STOPKEEPALIVED="/etc/init.d/keepalived stop"
LOGFILE="/usr/local/keepalived/var/log/keepalived-haproxy-state.log"
echo "[check_haproxy status]" >> $LOGFILE
A=`ps -C haproxy --no-header |wc -l`
echo "[check_haproxy status]" >> $LOGFILE
date >> $LOGFILE
if [ $A -eq 0 ];then
echo $STARTHAPROXY >> $LOGFILE
$STARTHAPROXY >> $LOGFILE 2>&1
sleep 5
fi
if [ `ps -C haproxy --no-header |wc -l` -eq 0 ];then
exit 0
else
exit 1
fi
日志目录:/usr/local/keepalived/var/log
启动/停止:service keepalived start/stop
四,Mycat安装:
安装目录: /usr/local/mycat
重要配置: /usr/local/mycat/conf/schem.xml
/usr/local/mycat/conf/rule.xml
/usr/local/mycat/conf/server.xml
/usr/local/mycat/conf/autopartition-long.txt
安装比较简单,参考官方配置即可。
========================================================================
安装可能遇到的问题:
安装haproxy 注意:
(1)修改内核参数: /etc/sysctl.conf
net.ipv4.ip_nonlocal_bind=1
保存结果,使结果生效
sysctl –p
(2)roor修改/etc/services没有权限
chattr -i /etc/services
修改后改回来
chattr +i /etc/services
阅读全文
0 0
- keepalived+haproxy+mycat mycat集群搭建
- HaProxy+keepalived+mycat集群高可用配置
- haproxy+mycat 搭建
- haproxy+mycat 搭建
- Mycat之——高可用负载均衡集群的实现(HAProxy + Keepalived + Mycat)
- HaProxy+Keepalived+Mycat高可用群集配置
- haproxy+keepalived+mycat+mysql (读写分离)
- HaProxy+keepalived+mycat分布式高可用架构
- keepalived+mycat+mysql框架搭建
- 高可用架构篇 MyCat集群部署(HAProxy + MyCat)
- 高可用架构篇 MyCat集群部署(HAProxy + MyCat)
- haproxy+mycat搭建高可用数据库
- Mycat之——Mycat集群部署(基于HAProxy + Mycat)
- LVS + Keepalived + mycat部署
- mysql集群及mycat搭建培训笔记
- zookeeper集群及mycat配置搭建
- mycat
- mycat
- 好的用户体验设计从何而来?
- 【服务器】本地运行成功,但服务器上运行却显示错误500
- Codevs 2370 小机房的树
- CloudStack的基本使用
- 利用Linux信号SIGUSR1调试嵌入式程序
- keepalived+haproxy+mycat mycat集群搭建
- idea创建python项目
- uri获取图片路径
- 日本海淘转运运输方式对比及如何选择转运渠道
- 渠道统计,免填邀请码,一键跳转尽在openinstall
- 什么软件可以将难以编辑的PDF文件进行修改
- Android LevelListDrawable
- 王爽汇编第三版课程设计1
- Ajax工作原理以及同步与异步的区别