`

HA 、mycat相关介绍

阅读更多

http://blog.csdn.net/xluren/article/details/39137757

http://blog.csdn.net/xluren/article/details/39153529

 

 

1.1     环境描述

mysql5

OS: Oracle Linux Server release 6.3

Mycat server1:10.0.30.134:8806

Mycat server2:10.0.30.139:8806

Haproxy server:10.0.30.139: 8098

前期未启用VIP,所以先用Mycat server28098端口作为haproxy的对外接口

 

1.2     Mycat 安装

Mycat server1Mycat server2上进行安装Mycat

 

Linux(Unix)下,建议放在/usr/local/MyCAT目录下,如下面类似的:

 

useradd mycat

chown –R mycat.mycat /usr/local/mycat

 

启动mycat

/usr/local/mycat/bin/mycat start

 

 

1.3    Haproxy 的安装

1、添加用户并下载相关软件

useradd haproxy

#wget http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.25.tar.gz
# tar zcvf haproxy-1.3.20.tar.gz
# cd haproxy-1.3.20
# make TARGET=linux26 PREFIX=/usr/local/haproxy ARCH=x86_64
# make install

 

2、安装完毕后,进入安装目录创建配置文件
# cd /usr/local/haproxy

#chown –R haproxy.haproxy *
# vi haproxy.cfg

global

    log 127.0.0.1   local0  ##记日志的功能

    maxconn 4096

    chroot /usr/local/haproxy

    user haproxy

    group haproxy

    daemon

defaults

        log   global

        option      dontlognull

        retries      3

        option redispatch

        maxconn 2000

        contimeout      5000

        clitimeout        50000

        srvtimeout       50000

listen  admin_stats 10.0.30.139:48800  ##由于没有启用VIP,暂时用其中一台的IP和新端口

      stats uri /admin-status        ##统计页面

      stats auth  admin:admin

      mode    http

      option  httplog

listen        allmycat 10.0.30.139:8098

      mode tcp

      option tcplog

          option httpchk OPTIONS * HTTP/1.1\r\nHost:\ www

      balance        roundrobin

          server  mycat_134 10.0.30.134:8066 check port 48700 inter 5s rise 2 fall 3

      server  mycat_139 10.0.30.139:8066 check port 48700 inter 5s rise 2 fall 3

      srvtimeout 20000

默认haproxy是不记录日志的,为了记录日志还需要配置syslog模块,在oracle linux下是rsyslogd服务,yum –y install rsyslog 先安装rsyslog,然后

#vi /etc/rsyslog.d/haproxy.conf

加入以下内容

$ModLoad imudp

$UDPServerRun 514

local0.* /var/log/haproxy.log ##对应haproxy.cfg 的日志记录选项

保存,重启

service rsyslog restart

现在你就可以看到日志了

 

Mycat server1 Mycat server2上都需要添加检测端口48700的脚本,为此需要用到xinetd

首先在xinetd目录下面增加脚本与端口的映射配置文件

#vim /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是否运行的脚本

#vim /usr/local/bin/mycat_status

#!/bin/bash

#/usr/local/bin/mycat_status.sh

# This script checks if a mycat server is healthy running on localhost. It will

# return:

#

# "HTTP/1.x 200 OK\r" (if mycat is running smoothly)

#

# "HTTP/1.x 503 Internal Server Error\r" (else)

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

我是根据mycat status 返回的状态来判定mycat是否在运行的,也可以直接通过mysql –P8806 –e”select user()” 等直接执行sql的形式来检测

重启xinetd服务

#service xinetd restart

查看48700端口是否监听了

#netstat -antup|grep 48700 

 

如上图则端口的配置正确了

 

启动haproxy

/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg

 

为了使用方便可以增加一个启动,停止haproxy的脚本

启动脚本starthap内容如下

#!/bin/sh

/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg &

 

停止脚本stophap内容如下

#!/bin/sh

ps -ef | grep sbin/haproxy | grep -v grep |awk '{print $2}'|xargs kill -s 9

 

分别赋予启动权限

chmod +x starthap

chmod +x stophap

 

启动后可以通过http://10.0.30.139:48800/admin-status (用户名密码都是admin haproxy.cnfg配置的)

 

 

配置完成

 

 

 

分享到:
评论

相关推荐

    keepalived+haproxy+mycat配置文件.rar

    `mycat.properties` 和相关的 SQL 脚本则用于配置 Mycat 的数据库连接、分片规则等。所有配置完成后,将这些文件分别放置在各服务器的相应目录下,启动服务即可。 总之,`keepalived+haproxy+mycat` 的组合为 MySQL...

    mycat生产使用遇到的8大问题汇总

    确保Mycat的HA配置正确,如心跳检测、故障探测和切换策略,是保证系统稳定运行的重要环节。 7. **SQL兼容性** Mycat虽然支持多种数据库,但并非所有SQL特性都兼容。开发者需熟悉Mycat的SQL处理规则,避免使用不...

    springboot-mycat:springboot 集成mycat

    集成Mycat到Spring Boot应用的第一步是添加相关的依赖。在`pom.xml`文件中,你需要引入Spring Boot的starter-data-jpa依赖,以及Mycat的JDBC驱动。这样,你的应用就能通过JPA操作Mycat上的数据。 ```xml ...

    MYCAT读写分离+主从复制

    MYCAT是一种开源的分布式数据库系统,它主要用于解决大数据量、高并发访问的问题,通过分库分表、读写分离等技术提升系统的可用性和性能。在本配置中,我们看到MYCAT是如何实现主从复制和读写分离的。 主从复制是...

    Mycat高可用以及mycat实现mysql高可用以及mycat的mysql主从配置,负载均衡,读写分离,以及验证查询sql具体执行在主库还是从库上

    Mycat高可用是通过KP+HA实现的,而MySQL高可用是通过Mycat实现的。下面将详细讲解Mycat高可用和Mycat实现MySQL高可用。 一、Mycat高可用 Mycat高可用是通过KP+HA实现的,KP(Keepalived+Pacemaker)是一种高可用...

    mycat安装教程及使用与详细的配置文件解释与示例

    总结:这份教程将详细介绍如何安装Mycat服务器,配置Keepalived和HAProxy实现高可用,解析Mycat的配置文件,以及如何使用Mycat的Web管理界面监控系统。通过实例,用户将学习如何在实际项目中部署和管理Mycat,从而...

    HAproxy+Mycat集群搭建指南.docx

    总结来说,此指南详细介绍了如何在Oracle Linux环境下,利用HAproxy作为负载均衡器,Mycat作为数据库中间件,构建一个高可用的MySQL集群。通过这种方式,可以提高系统的稳定性和容错能力,同时提供良好的扩展性,以...

    MyCat高可用负载均衡集群实现(HAProxy+Keepalived+MyCat).pdf

    本文将详细介绍如何利用HAProxy、Keepalived以及MyCat这三个开源工具构建一个强大的高可用负载均衡集群。 #### 二、关键技术组件介绍 1. **HAProxy**:一个免费、快速且可靠的解决方案,用于提供高可用性、负载...

    数据库中间件mycat

    本文将详细介绍数据库中间件的概念、特性、架构模式、MyCAT中间件产品等方面的知识点。 一、什么是数据库中间件? 数据库中间件是一种位于应用程序和数据库之间的软件层,可以帮助应用程序和数据库之间的交互,...

    详解读写主从的mycat方案.doc

    - HA:High Availability,高可用性。 5. **各部署场景及配置方案** - **运行与支持环境**:MyCat通常运行在Linux环境下,需要兼容的Java运行环境(JRE或JDK)。 - **选取的原因**:MyCat支持MySQL协议,可透明...

    MyCat生产部署经验分享1

    HA-DataSource,作为Mycat的子项目,可以提供类似HAProxy的功能,直接在Java应用中实现高可用性,减少中间环节。 在MySQL的调优方面,首要任务是避免使用Swap内存,以减少性能损耗。对于MySQL 5.6及以上版本,可以...

    MySql HA.docx

    ### MySQL 高可用性 (HA) 技术详解 #### 一、MySQL 主从复制 **主从复制介绍** MySQL 的主从复制机制是其实现高可用性和数据冗余的关键特性之一。通过这一机制,可以在多台服务器之间同步数据,确保数据的一致性...

    HA-DB:探索高效的SAAS结构,单体应用动态切换数据库

    SAAS原型萨斯猫这是15年选择的预研方案,程序框架采用了spring,doubbo,mycat,mysql。整体方案采用mycat做为数据路由,由spring应用在执行SQL前加入mycat的路由注释解。以达到数据库动态切换的目的。但是在实践...

    找工作难? 要学到什么程度才能就业

    文章详细介绍了项目架构的演进方向,从传统的单台单体架构到多台单体架构、多台集群架构、集群高可用架构等,ครอบ盖了Nginx、Keepalived、LVS、CDN、Varnish、MySQL、Redis、ElasticSearch、Codis、MyCat等多种...

    大数据技术原理

    HDFS:H是hadoop 分布式文件系统 分布式文件系统。   Hdfs是Hadoop分布式文件系统的简称,它是Hadoop实现的一个分布式文件系统。   纱线:管理资源调度   mycat:中间件   ...MapReduce —– Ha

    mysql router vs maxscale

    - MyCat:并非直接与MySQL Router和MaxScale竞争的中间件,而是主要用于数据分片的解决方案,可看作数据库的水平分片中间件。 - TDDL(Taobao Distributed Data Layer):是阿里巴巴开源的分布式数据库层,提供...

    java架构师是什么?58套java架构师资源870G进阶架构师学习.pdf

    Java架构师在此领域的知识包括分布式一致性、CAP理论、分布式锁、分布式事务等,以及相关的中间件如Zookeeper、Dubbo和ServiceMesh。 高可用性(High Availability, HA)和高性能(High Performance, HP)是架构...

    第三讲-大型互联网高可用网站业务架构设计实践.docx

    其次,高可用性(HA)是分布式系统设计的关键因素,目标是减少服务中断时间。业界常以"9"的数量级来衡量可用性,如四九(99.99%)代表极高的可用性,意味着每年的停机时间不超过几分钟。以百度为例,其高可用性使得...

Global site tag (gtag.js) - Google Analytics