首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nginx负载平衡Maxscale到故障转移

Nginx负载平衡Maxscale到故障转移
EN

Stack Overflow用户
提问于 2020-12-03 10:36:39
回答 1查看 246关注 0票数 1

我有一个简单的流块来将MySQL TCP流量流流到Maxscale实例。第二个实例仅用作故障转移,如:

代码语言:javascript
复制
stream {    
    upstream maxscale {
        zone upstream_maxscale 64k;
        server 10.1.0.11:3307;
        server 10.1.0.12:3307 backup;
    }

    server {
        listen 3307;
        proxy_pass maxscale;
    }
}

当连接不足(<30)时,一切都会好起来。但是当连接很高时(> 40,如果我们可以说40个连接很高……),nginx错误日志会不断抱怨一些我不知道如何调试的东西。

在代理和从上游读取时,recv()失败(104:连接重置),客户端: 10.1.0.16,服务器: 10.1.0.15:3307,上游:"10.1.0.11:3307",从/到客户端的字节:15738/64316,从/到上游的字节:64316/15738

我试过使用reuseportworker_connectionsso_keepalive等选项,但没有机会。

module.html

https://docs.nginx.com/nginx/admin-guide/load-balancer/tcp-udp-load-balancer/,它能在最大比例尺方面成为一个问题吗?

这里是Maxscale 2.4监听器:

代码语言:javascript
复制
# Listener

[listener-rw]
type=listener
service=readwritesplit
protocol=MariaDBClient
address=10.1.0.11
port=3307
ssl=required
ssl_ca_cert=/var/lib/maxscale/ssl/ca-cert.pem
ssl_cert=/var/lib/maxscale/ssl/server.pem
ssl_key=/var/lib/maxscale/ssl/server.key
ssl_version=MAX

# Service

[readwritesplit]
type=service
router=readwritesplit
servers=sql1,sql2,sql3
user=maxscale
password=324F74A347291B3BE79956AD5F4BB2FAD65E1F9052A976722917701742729400
enable_root_user=1
max_sescmd_history=150
max_slave_connections=100%
lazy_connect=true
slave_selection_criteria=LEAST_CURRENT_OPERATIONS
optimistic_trx=true
connection_keepalive=300
master_failure_mode=fail_on_write

module.html

https://docs.nginx.com/nginx/admin-guide/load-balancer/tcp-udp-load-balancer/

EN

回答 1

Stack Overflow用户

发布于 2020-12-03 12:51:20

MaxScale日志(在/var/log/maxscale/maxscale.log中)很可能包含一个关于为什么会收到这样的错误的答案,或者至少会帮助您确定问题的所在。

如果您无法从日志中找出原因,我建议在MariaDB Jira在MaxScale项目下上打开一个bug报告。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65124293

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档