各节点集群方案

 

各节点集群方案整理:

 

 

集群软件是分发(监听自动移除转发节点(主节点)),主从切换时其他集群的软件中的设置决定

哨兵既可以监听主,也可以监听备

http://blog.csdn.net/candy_rainbow/article/details/52842402

,哨兵模式说白了就是将反客为主的一些列动作自动化,他会在后台有一个监控,监控当前的主机,巡逻主机下面的从机,如果某一时刻主机挂掉了,那么他会通过一种投票的机制从从机之中选举一台作为新的主机,并且,其余的从机将会连接到这个新的主机上面。下面演示一下他的工作流程:

正常情况下,主机挂了之后,从机的角色依然是slaver,但是此时,有了哨兵之后,主机挂了,哨兵会投票选举一个从机作为新的master,可以看到,稍微等待几秒钟之后,81端口的从机成为了新的主机,同时,80端口成为了81端口的从机,我们来看看哨兵打印的日志:

原来的主机恢复了以后,就会自动的转为从机跟随新主机。

 

http://blog.csdn.net/zfl092005/article/details/17523945

可以看出redis的主从切换要么是手动切换,要么时用哨兵(虽然有设置,但是切换的时候需要手动切换除非设置了哨兵)

在各个安装目录下新建一个sentinel.cfg文件 这里设置sentinel monitor 主机名 主机ip 主机端口 票数n         票数多余n的从机作为主机

由哨兵投票

 

https://zhidao.baidu.com/question/985594806055270459.html

keepalived的mysql主挂掉后,主上的keepalived应该调用脚本将自己的VIP down掉,从上的keepalived会检测的VIP消失,然后把自己的VIP加上,然后执行master脚本。 keepalived只是用来切换VIP的,如果要是mysql有从变成主,则需要将所有的更改操作写到脚本中,在脚本里调用。

k  z 切换

http://blog.chinaunix.net/uid-167175-id-3397675.html

 

http://outofmemory.cn/wiki/keepalived-configuration

拓扑图,架构图

专门手册

 

//mq集群:

 

 

任何的集群都有一个集群+相应的集群管理软件,主备的情况只有主可用,或可修改(HA)备查询

要负载的话还要多主实现

 

 

kp--》 tomcat等均主多台(不算集群)转发和主从控制(安装在一起并用脚本控制)

 

 

zk --》actvie这种均主集群(有自己的主备设置)的主从控制(投票控制)集群软件自身不设置主从怎么同步????

虽然没有显示的设置同步但是有 replicas="3"和同样的brokerName这样就相当于master-slave文字设置的同步了,zk投票切换active(HA)

 

如果还需要负载均衡:加上Broker Cluster搭建方式即(Master/Slave集群搭建-Broker Cluster搭建方式)

搭建两套主备模式(不能直接用两个常规节点(没有主备)模式因为只有Master Slave会做主从间的消息同步,这是一个致命伤。当你转到备机???)

 

虚拟ip可以很好分主但是mq用的是rip由于随机转发,可能从一个群,转到另一个群(不由于集群间消息不一致,所以会导致受不到)

这种情况可以在群之间设置穿透(duplex="true")(一个节点有效的时候会同时转发一分到另一个群的节点)

http://www.cnblogs.com/shihaiming/p/6018916.html

 

http://blog.csdn.net/icecream0/article/details/44101987

哨兵--》redis集群(master-slave),哨兵监控切换

 

mysqlproxy/mysqlcluster--》mysql集群(master-slave),代理监控切换,实现读写分离,即达到负载均衡的效果

Mysql-Proxy本身不会实现读写分离,主要是依靠 Lua 脚本实现的

 

 

多主:

http://www.linuxidc.com/Linux/2014-09/106570.htm

无论时主备,还是主主都是设置相互指向(区别在于指向时设置是主还是备)即可同步,由于主备用的是mysqlproxy代理设置主备,主主就不用这个直接用kp转发vip即可(需要和mysql搭在一起)

(类似两套主备集群)思路(集群中同步,集群间穿透同步),然后转发选用(选主的时候由于没有mysqlproxy所以不会自动切换,这里和kp装在一起控制切换)

(如果需要主备又需要多主,可以用mysqlproxy控制主备,kp和mysqlproxy按在一起控制负载)

solr有自己的solrcould方案通过http请求建立shard

 

由此可见不同的软件集群有不同的集群管理工具(可选架构方式(软件)多)和以及基于这种管理工具下配置方式实现HA和负载均衡的方案(一个集群管理的方式只能参考)

 

集群两种思想(第三方监控软件,监控控制软件的集群,不同的软件集群用不同的监控软件)

1,控制切换(软件或脚本(主备自动同步))

2,控制负载(软件或脚本)(在HA的基础上进行分群,并且群之间可以同步(穿透))

 

 跟缓存或存储有关的在需要人为设置主备,用zk作为集群管理工具的不需要设置主备,自动选举,用kp的也不需要(和kp在一起就kp通过自己的主备决定了集群软件的主备),

redis通过哨兵切换,mysql通过mysqlproxy切换

Pure Master Slave(这种没有第三方集群管理的不能自动切换,需手动切换)用zk就可以(第三方集群管理)

参考

http://www.cnblogs.com/shihaiming/p/6018916.html

例如:

HAProxy+MyCat集群

http://www.iteye.com/topic/1146264

 

 

猜你喜欢

转载自yuhuiblog6338999322098842.iteye.com/blog/2358624
今日推荐