nginx 代理 redis

kubernetes 发布的redis服务端口为 31250

通过命令查询

复制代码
[mini@ecs-88500735 /]$ minikube service redis --url
http://192.168.49.2:31250


[root@ecs-88500735 /]# vi /etc/nginx/nginx.conf

配置nginx.conf

复制代码
stream {
  upstream redis {
     server 192.168.49.2:31250;
  }
  server {
     listen 63790;
     proxy_pass redis;
  }
}


[root@ecs-88500735 /]# nginx -s reload
[root@ecs-88500735 /]# redis-cli -h 127.0.0.1 -p 63790
127.0.0.1:63790> get me
(nil)
127.0.0.1:63790> set me good
OK
127.0.0.1:63790> get me
"good"
127.0.0.1:63790> 

只适用于pod为1,如果有多个pod则通过LoadBalancer分发到任何节点上,如果节点上的redis没有同步则后续get值可能会返回nil。

本案例旨在演示nginx代理redis,借用kubernetes运行的redis实例进行演示,真实项目一般数据流向为F5到SLB(HAProxy)到Kubernetes集群部署的容器里部署的应用。

相关推荐
Hello.Reader3 小时前
Redis 延迟监控深度指南
数据库·redis·缓存
ybq195133454313 小时前
Redis-主从复制-分布式系统
java·数据库·redis
马里奥Marioぅ3 小时前
Redis主从切换踩坑记:当Redisson遇上分布式锁的“死亡连接“
redis·分布式锁·redisson·故障转移
一心0925 小时前
ubuntu 20.04.6 sudo 源码包在线升级到1.9.17p1
运维·ubuntu·sudo·漏洞升级
好好学习啊天天向上5 小时前
世上最全:ubuntu 上及天河超算上源码编译llvm遇到的坑,cmake,ninja完整过程
linux·运维·ubuntu·自动性能优化
你想考研啊5 小时前
三、jenkins使用tomcat部署项目
运维·tomcat·jenkins
代码老y6 小时前
Docker:容器化技术的基石与实践指南
运维·docker·容器
典学长编程6 小时前
Linux操作系统从入门到精通!第二天(命令行)
linux·运维·chrome
DuelCode7 小时前
Windows VMWare Centos Docker部署Springboot 应用实现文件上传返回文件http链接
java·spring boot·mysql·nginx·docker·centos·mybatis
Hello.Reader8 小时前
Redis 延迟排查与优化全攻略
数据库·redis·缓存