Haproxy+mysqlcluster(MySQL集群)配置(一)

2015-01-25 19:49:48 · 作者: · 浏览: 7

一、准备

1、准备服务器

建立有2个节点的MySQL CLuster体系,使用6台服务器建立Haproxy+mysql cluster( MySQL 集群) 体系

节点配置说明
节点 对应的IP和端口
Haproxy负载均衡(1个) centos 6.3 1.1.1.11
管理节点(1个) centos 6.3 1.1.1.30
SQL节点 (2个) centos 6.3 1.1.1.21
1.1.1.22
数据节点 (2个) centos 6.3 1.1.1.31
1.1.1.32

二、Haproxy负载均衡安装配置

[root@HAPROXY001 ~]# yum install haproxy*

在/etc/haproxy/目录下创建haproxy.cfg配置文件

--------------------------------------------------------------------------------

[root@HAPROXY001 ~]# vim /etc/haproxy/haproxy.cfg

?

# this config needs haproxy-1.1.28 or haproxy-1.2.1

global

log 127.0.0.1 local0 info #日志相关

log 127.0.0.1 local1 notice

maxconn 4096

chroot /usr/local/haproxy

uid root

gid root

daemon

#debug

#quiet

pidfile /usr/local/haproxy/haproxy.pid

defaults

log global

mode http

#option httplog

option dontlognull

retries 3

option redispatch

maxconn 8000

contimeout 3000

clitimeout 30000

srvtimeout 30000

?

listen mysql

bind 0.0.0.0:3306 #代理端口

mode tcp #模式 TCP

option mysql-check #user root #mysql健康检查 root为mysql登录用户名

balance roundrobin #调度算法

server mysql1 1.1.1.21:3306 check port 3306#weight 1 check inter 1s rise 2 fall 2 #健康检查加上check

server mysql2 1.1.1.22:3306 check port 3306#weight 1 check inter 1s rise 2 fall 2

?

listen stats #监控

mode http

bind 0.0.0.0:8888

stats enable

stats uri /dbs

stats realm Global\ statistics

stats auth admin:hello123

--------------------------------------------------------------------------------

启动服务:/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg

?

登录浏览器查看:  输入admin hello123登录

wKioL1R8RuOwLCEWAAYmE9A0L_4625.jpg

?

三、mysql cluster安装

1,mysql cluster 各节点安装,以管理节点为例

[root@MYSQLMANAGER ~]# wget http://cdn.mysql.com/Downloads/MySQL-Cluster-7.3/mysql-cluster-gpl-7.3.7-linux-glibc2.5-x86_64.tar.gz

[root@MYSQLMANAGER ~]# groupadd mysql

[root@MYSQLMANAGER ~]# useradd mysql -g mysql

[root@MYSQLMANAGER ~]# tar -xvf mysql-cluster-gpl-7.3.7-linux-glibc2.5-x86_64.tar.gz

[root@MYSQLMANAGER ~]# mv mysql-cluster-gpl-7.3.7-linux-glibc2.5-x86_64 /usr/local/mysql

[root@MYSQLMANAGER ~]# cd /usr/local/

[root@MYSQLMANAGER ~]# chown -R mysql:mysql mysql/

[root@MYSQLMANAGER ~]# cd mysql/

[root@MYSQLMANAGER ~]# scripts/mysql_install_db --user=mysql

?

2,节点配置

管理节点:

[root@MYSQLMANAGER ~]# vi /var/lib/mysql-cluster/config.ini

--------------------------------------------------------------------------------

[NDBD DEFAULT]

NoOfReplicas=2 #副本数量,建议使用默认的2

MaxNoOfConcurrentOperations=10000

DataMemory=1024M #每个数据节点中给数据分配的内存

IndexMemory=500M #每个数据节点中给索引分配的内存

BackupMemory: 50M

[NDB_MGMD]

#管理节点配置项

Nodeid= 1

HostName=1.1.1.30 #管理节点IP

DataDir=/usr/local/mysql/data #管理节点日志、配置目录

ArbitrationRank: 1 #该节点的优先级别等级

[NDBD]

#数据节点配置项

Nodeid = 2 #第一个数据节点

HostName=1.1.1.31 #数据节点IP

DataDir=/usr/local/mysql/data #数据节点存放数据的目录

[NDBD]

Nodeid = 3 #第二个数据节点

HostName=1.1.1.32

DataDir=/usr/local/mysql/data

[mysqld]

#SQL节点配置项

Nodeid = 4 #第一个SQL节点

HostName=1.1.1.21

[mysqld]

Nodeid = 5 #第二个SQL节点

HostName=1.1.1.22

[mysqld]

Nodeid = 6 #第三个SQL节点

HostName=1.1.1.254

[mysqld]

#建议保留一个SQL节点配置口

--------------------------------------------------------------------------------

?

数据节点: 两数据节点配置一样

?

[root@MYSQLDB001 ~]# vim /etc/my.cnf

--------------------------------------------------------------------------------

[mysqld]

datadir=/usr/local