Grasp.Today

redis外网连接的一些坑

前言

在使用阿里云和腾讯云的redis 可以减少很大的维护量。但是在我们的业务场景中遇到了一个情况,阿里和腾讯的redis均不支持外网访问。
因此,正好帮人解决一个问题,就拿出来分享一下。

阿呆的故事

阿呆是从事编程工作半年,一直使用阿里云和腾讯云。公司在要在全球部署服务器,由于运维成本高等问题,将所有服务采用了私有云+公有云的模式。

redis就架在了公有云上,结果在部署到全球5个地区的时候,全球5个地区都无法访问北京的redis。

阿呆的分析

阿呆的分析:

  1. 防火墙
  2. 公有云的规则
  3. selinux

阿呆解禁了公有云上的安全组规则,失败;

后来几次打听才了解到redis不让外网访问。

阿呆的解决办法

  1. 使用转发方式
  2. 自建redis server

由于redis 要求可靠性很高,转发可能会影响到性能,阿呆放弃了这种方式。

自建redis吧,自建redis,可是阿呆发现依然不行。同样,放行了所有的网络通信还是不行。

阿呆惆怅了

突然的发现

阿呆修改配置文件,远程调试,内网访问,N种办法后,阿呆去楼下点了支烟,看了看外面的云朵,阿呆有些想妈妈了。

突然灵感突现,会不会是IP地址的问题呢,阿呆打开一看,redis server的配置文件中:

bind 127.0.0.1 阿呆加上公网IP,可还是失败,服务都没办法启动了。

算了,不加了试试,注释掉bind 127.0.0.1。启动成功,外网访问一下,外网访问也成功了。

posted @ 2017-10-12 16:57  gaohj  阅读(4814)  评论(2编辑  收藏  举报