mariadb+haproxy负载均衡集群搭建_第1页
mariadb+haproxy负载均衡集群搭建_第2页
mariadb+haproxy负载均衡集群搭建_第3页
mariadb+haproxy负载均衡集群搭建_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、集群介绍:Galera是一个MySQL(也支持MariaDB , Percona)的同步多主集群软件,目前只支持InnoDB引擎。主要功能:?同步复制? 真正的multi-master,即所有节点可以同时读写数据库?自动的节点成员控制,失效节点自动被清除?新节点加入数据自动复制? 真正的并行复制,行级?用户可以直接连接集群,使用感受上与MySQL完全一致优势:?因为是多主,所以不存在Slave lag(延退)? 不存在丢失交易的情况?同时具有读和写的扩展能力? 更小的客户端延退? 节点间数据是同步的,而Master/Slave模式是异步的,不同slave上的binlog可能是不同的实现技术:G

2、alera集群的复制功能基于Galera library实现,为了让MySQL与Galera library通讯, 特别针对MySQL开发了wsrep API。实践操作:负载均衡集群搭建1.下载mariadb集群wgethttp:/ 64/mariadb-galera-10.0.17-linux-x86 64.tar.gz1灿=147858了9 1.26ME/S in 2(n Is 201S-65-1106:35:OS (1.17 MB/s) - mariadb-gatera-10.0.17-liniJx-x86_64.tJ r.gzJsaved14785S279/1478582792.添加m

3、ariadb用户和组groupadd mariadbuseradd -g mariadb mariadb3.将下载的文件拷贝到目录/usr/src下4.解压并拷贝解压后的文件到/usr/local/mysql下rootubuntu:/usr/src# tar -zxvf mariadb-galera-10.0.17-linux-x86_64.tar.gzrootubuntu:/usr/local# cp -R mariadb-galera-10.0.17-linux-x86_64 /usr/local/mysql5.修改文件夹的所属用户和组rootubuntu:/usr/local# chow

4、n -R mariadb:mariadb mysql/6.安装mariadb字典数据库,确保数据库安装成功mariadbubuntu:/usr/local/mysql$ ./scripts/mysql_install_db在数据库中创建一个专门用来在各节点间进行复制的节点7.配置集群中节点1的启动参数文件,f主要在mysqld选项下面,加入如下配置:log-bin=mysql-binbinlog_format = ROWserver-id = 1innodb_autoinc_lock_mode = 2wsrep_provider = /usr/local/mysql/lib/libgalera

5、_smm.sowsrep_cluster_name = my_mariadb_clusterwsrep_cluster_address=gcomm:/wsrep_node_name = cluster_node1wsrep_node_address = :4406启动节点1:./bin/mysqld -defaults-file=f -wsrep-new-cluster8.配置集群中节点2的启动参数文件,f主要在mysqld选项下面,加入如下配置:log-bin=mysql-binbinlog_format = ROWdatadir = /usr/local/mysql/da

6、ta1server-id = 2innodb_autoinc_lock_mode = 2wsrep_provider = /usr/local/mysql/lib/libgalera_smm.sowsrep_cluster_name = my_mariadb_clusterwsrep_cluster_address=gcomm:/:4406wsrep_node_name = cluster_node2wsrep_node_address = :44079.配置集群中节点3的启动参数文件,f主要在mysqld选项下面,加入如下配置:log-bin=mysql-

7、binbinlog_format = ROWdatadir = /usr/local/mysql/data2server-id = 3innodb_autoinc_lock_mode = 2wsrep_provider = /usr/local/mysql/lib/libgalera_smm.sowsrep_cluster_name = my_mariadb_clusterwsrep_cluster_address=gcomm:/:4407wsrep_node_name = cluster_node3wsrep_node_address = :440810.

8、检查并测试集群是否启动成功观察命令show status like wsrep%;的输出信息,看是否有3个节点。连接到集群中的任何一个节点:./bin/mysql -host -port 3307 -umycluster -p123456在test数据库下创建一个表goodscreate table goods (id int(11) not null, name varchar(20);插入一条记录:insert into goods(id,name) value(1,iphone7);然后登录到另外一个节点检查刚才创建的表和记录是否存在:./bin/mysql -hos

9、t -port 3306 -umycluster -p12345MariaDB test select * from goods;+-+| id | name |+-+| 1 | iphone7 |+-+我们看到记录已经存在,再次证明集群已经搭配好。配置haproxy下载:wget http:/ TARGET=linux26 PREFIX=/usr/local/haproxy安装:make install PREFIX=/usr/local/haproxy在/usr/local/haproxy下添加配置文件haproxy.cfg修改配置文件内容如下:globallog127

10、.0.0.1local0loglocal1 notice#log loghostlocal0 infomaxconn4096userhaproxy#所属运行的用户grouphaproxy#所属运行的组nbproc1pidfile/usr/local/haproxy/haproxy1.pid#debug#quietdefaultslogglobaloptiontcplogoptiondontlognullretries3optionredispatchmaxconn4096timeoutconnect 50000mstimeoutclient 50000mstimeoutser

11、ver 50000mslisten mariadb-galerabind :3399#客户端监听端口mode tcpbalance leastconn #最少连接的负载均衡算法serverdb1:3306 checkserverdb1:3307 checkserverdb1:3308 check启动haproxy:./sbin/haproxy -f haproxy.cfg11.根据最少连接的负载均衡算法,haproxy将读写请求重定向到最少连接的数据库服务器上。检查haproxy是否配置正确:先连接上:mariadbubuntu:/usr/local/mysql$ ./bin/mysql -hos

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论