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集群部署的容器里部署的应用。

相关推荐
Mortalbreeze7 分钟前
深度理解进程----进程状态
linux·运维·服务器
艾莉丝努力练剑9 分钟前
【Linux网络】Linux 网络编程入门:TCP Socket 编程(下)
linux·运维·服务器·网络·c++·tcp/ip
yuezhilangniao11 分钟前
Ansible基础 ansible入门 针对不同python3版本 - 含 Terraform 入门联动
运维·自动化·ansible
宵时待雨12 分钟前
linux笔记归纳4:进程概念
linux·运维·服务器·c++·笔记
leoZ23126 分钟前
Linux 环境常用服务一键部署文档(Docker 版)
运维·docker·容器
下次再写39 分钟前
【Redis实战】深入理解Redis缓存策略:从原理到Spring Boot实践
java·spring boot·redis·缓存穿透·缓存击穿·分布式缓存·缓存策略
落魄实习生1 小时前
Jenkins安装及使用
运维·jenkins
QuestLab1 小时前
让AI真正“看见“界面:纯视觉GUI自动化编排器开源了
运维·人工智能·自动化
小白君6531 小时前
互联网大厂Java面试:从Spring Boot到微服务的技术场景深度解析
spring boot·redis·微服务·消息队列·java面试·数据库优化
庞轩px1 小时前
第七篇:Redis分布式锁——从setnx到RedLock的演进之路
数据库·redis·分布式锁·redission·setnx·redlock·可重入锁