原文:https://www.percona.com/blog/2017/05/31/proxysql-assisted-pxc-maintenance-mode/
拉梅什Sivaraman,,
在这篇博文中,我们将介绍PXC维护模式如何使用ProxySQL使集群节点下线而不影响工作负载
Percona XtraDB集群维护模式
由于PXC提供了高可用的解决方案,它必须考虑到集群节点需要下线维护的情况(通过与集群隔离或完全关闭)
PXC通过引入维护模式实现这一点.PXC的维护模式减少因为突发故障影响工作负载的次数,如果节点是使用ProxySQL下线的(作为负载均衡器)
中心思想是延迟核心节点的动作,并允许ProxySQL转移工作负载
ProxySQL是如何管理PXC维护模式的
在PXC维护模式下,当用户触发关闭信号(或者将特定的节点设置为维护模式),ProxySQL将节点标记为离线
- <李>
当用户触发了关机,PXC节点设置为关闭(默认禁用)然后睡眠x秒(由参数决定- - -默认10 s) .ProxySQL自动检测这个变化并将节点标记为离线。应用这个改变后,ProxySQL拒绝为任何DML事务建立连接,但已经存在的查询可以继续执行,直到秒后,一旦休眠期完成,PXC传递一个真正的关闭信号- - - - - -从而给了ProxySQL足够的时间转移工作负载
李> <李>如果用户需要将节点设置为维护模式,可以简单的设置参数为维护。随即,被更新并且客户端连接开始休眠x秒(由决定)后再把控制权交给用户.ProxySQL自动检测这个变化并将节点标记为离线。在这种情况下,ProxySQL避免为任何DML事务建立连接,但已经存在的连接可以继续使用。
李> <李>ProxySQL自动检测维护状态的变化并自动重新路由流量,从而减少了突发性的工作负载故障
李>技术细节:
- <李>
ProxySQL Galera检查脚本(proxysql_galera_checker <强> 强>)通过使用ProxySQL调度程序检查参数状态(除了已经存在的),持续检测各个节点的状态。
李> <李>调度程序是一个集成在ProxySQL中的像计划任务(用与cron相似)的实现,支持毫秒的粒度
李> <李>如果脚本(proxysql_galera_checker)检测到=|关闭维护,然后ProxySQL将节点标记为OFFLINE_SOFT。这样可以避免在这个节点新建立连接(或工作负载)
李>日志示例:
& lt; span 祝辞Thu Dec , 8, 11:21:11 GMT 2016年,Enabling config,,, & lt; span 祝辞Thu Dec , 8, 11:21:17 GMT 2016年,Check server 10:127.0.0.1:25000 ,, status ONLINE ,, wsrep_local_state 4 & lt;/span>,,,, & lt; span 祝辞Thu Dec , 8, 11:21:17 GMT 2016年,Check server 10:127.0.0.1:25100 ,, status ONLINE ,, wsrep_local_state 4 & lt;/span>,,,, & lt; span 祝辞Thu Dec , 8, 11:21:17 GMT 2016年,Check server 10:127.0.0.1:25200 ,, status ONLINE ,, wsrep_local_state 4 & lt;/span>,,,, & lt; b> Thu Dec , 8, 11:21:17 GMT 2016年,Changing server 10:127.0.0.1:25200 用status OFFLINE_SOFT due 用SHUTDOWN,,,, & lt; span 祝辞Thu Dec , 8, 11:21:17 GMT 2016年,Number of writers 在线:,2,:,hostgroup:, 10 & lt;/span>,,,, & lt; span 祝辞Thu Dec , 8, 11:21:17 GMT 2016年,Enabling config,,,, & lt; span 祝辞Thu Dec , 8, 11:21:22 GMT 2016年,Check server 10:127.0.0.1:25000 ,, status ONLINE ,, wsrep_local_state 4 & lt;/span>,,,, & lt; span 祝辞Thu Dec , 8, 11:21:22 GMT 2016年,Check server 10:127.0.0.1:25100 ,, status ONLINE ,, wsrep_local_state 4 & lt;/span>,,,, & lt; b> Thu Dec , 8, 11:21:22 GMT 2016年,Check server 10:127.0.0.1:25200 ,, status OFFLINE_SOFT ,, wsrep_local_state 4 & lt;/b>