Nginx代理Redis哨兵主从配置的实现

一  环境需求

1.png

二   配置需求

Nginx配置方案(三种)

第一种

将哨兵所有节点使用一个端口对外映射

stream {
upstream redis {
server 127.0.0.1:26379 max_fails=3 fail_timeout=10s;
server 127.0.0.1:26380 max_fails=3 fail_timeout=10s;
server 127.0.0.1:26381 max_fails=3 fail_timeout=10s;
}
server {
listen 5432;
proxy_connect_timeout 30s;
proxy_timeout 60s;
proxy_pass redis;
}
}

第二种

将每个哨兵端口配置一个对应的映射端口

stream {
upstream redis {
server 127.0.0.1:26379 max_fails=3 fail_timeout=10s;
}
upstream redis1 {
server 127.0.0.1:26380 max_fails=3 fail_timeout=10s;
}
upstream redis2 {
server 127.0.0.1:26381 max_fails=3 fail_timeout=10s;
}
server {
listen 5432;
proxy_connect_timeout 30s;
proxy_timeout 60s;
proxy_pass redis;
}
server {
listen 5433;
proxy_connect_timeout 30s;
proxy_timeout 60s;
proxy_pass redis1;
}
server {
listen 5434;
proxy_connect_timeout 30s;
proxy_timeout 60s;
proxy_pass redis2;
}
}

第三种

方案一和方案二的结合体

stream {
upstream redis {
server 127.0.0.1:26379 max_fails=3 fail_timeout=10s;
server 127.0.0.1:26380 max_fails=3 fail_timeout=10s;
server 127.0.0.1:26381 max_fails=3 fail_timeout=10s;
}
upstream redis1 {
server 127.0.0.1:26380 max_fails=3 fail_timeout=10s;
server 127.0.0.1:26379 max_fails=3 fail_timeout=10s;
server 127.0.0.1:26381 max_fails=3 fail_timeout=10s;
}
upstream redis2 {
server 127.0.0.1:26381 max_fails=3 fail_timeout=10s;
server 127.0.0.1:26380 max_fails=3 fail_timeout=10s;
server 127.0.0.1:26379 max_fails=3 fail_timeout=10s;
}
server {
listen 5432;
proxy_connect_timeout 30s;
proxy_timeout 60s;
proxy_pass redis;
}
server {
listen 5433;
proxy_connect_timeout 30s;
proxy_timeout 60s;
proxy_pass redis1;
}
server {
listen 5434;
proxy_connect_timeout 30s;
proxy_timeout 60s;
proxy_pass redis2;
}
}

原创文章,作者:网友投稿,如若转载,请注明出处:https://www.cloudads.cn/archives/4149.html

发表评论

登录后才能评论