前不久买了个阿里云的redis服务,99元/年,由于使用的是VPC网络,和ECS在同一个网内,只能通过ECS和阿里云自带的数据管理来连接。
默认是不支持外网连接Redis实例的。
但是,我们可以通过端口映射工具,把redis的6379端口通过映射到ECS上的某个端口,比如也是6379,那我们就可以通过连接ECS的ip+6379端口访问Redis实例了。
需要用到的软件是rinetd,官网:https://boutell.com/rinetd/,安装很简单:
wget http://www.boutell.com/rinetd/http/rinetd.tar.gz tar -zxvf rinetd.tar.gz cd rinetd #原rinetd.c文件中端口最大写成了65536,这里改成65535 sed -i 's/65536/65535/g' rinetd.c #放置帮助文档 mkdir /usr/man make make install
安装完成后,写配置文件:
vim /etc/rinetd.conf
内容为:
0.0.0.0 6379 Redis地址 6379 logfile /var/log/rinetd.log
第一个6379代表ECS中对外提供服务的端口,可以改成其他未使用的端口,最后个是Redis实例的默认端口。
修改Redis地址为自己的Redis地址,格式一般为:
r-uf6xxxxxxxxx.redis.rds.aliyuncs.com
保存完成后,就可以启动了:
rinetd
最后,通过本地的Redis管理工具测试下。