开启Redis 4.0/5.0/6.0公网访问并获取公网访问地址
Redis 4.0/5.0/6.0实例支持通过绑定弹性负载均衡(ELB)实现Redis公网访问,本章节介绍开启Redis 4.0/5.0/6.0实例公网访问、获取公网访问连接地址和端口、以及Redis实例或ELB添加IP白名单的操作指导。Redis 3.0实例开启公网访问,请参考公网连接Redis 3.0(Redis 3.0已停售)。
- Redis 4.0/5.0/6.0实例开启公网访问功能暂未完全开放,必须先联系后台管理人员开通公网访问白名单后,才支持该功能。
- 仅单机、主备、读写分离、Proxy集群实例支持开启公网访问,Cluster集群实例暂不支持。
- 客户端公网访问Redis,与处于同一VPC下的客户端访问Redis相比,网络时延会增加。
- 因公网性能问题造成的客户端访问异常不计入SLA。
前提条件
- 准备弹性负载均衡ELB,创建ELB的操作,请参考创建独享型负载均衡器。创建的ELB必须符合以下条件。如果已有符合条件的ELB,无需重复创建。
- ELB的实例类型必须选择“独享型”,且必须开启“IP类型后端(跨VPC后端)”。
- ELB的规格中必须包含“网络型(TCP/UDP)”。
- ELB必须选择与Redis实例相同的VPC。
- ELB必须绑定弹性公网IP(EIP)。
- ELB必须有可用的端口。
- 单个ELB挂载多个实例时,Redis的性能会受限于ELB的规格。
- 为保护Redis实例的网络安全性,Redis实例必须配置访问密码,免密访问的实例不支持开启公网访问。如需修改免密访问的实例为密码访问,请参考重置缓存实例密码。
开启公网访问并获取公网访问地址
- 登录分布式缓存服务管理控制台。
- 在管理控制台左上角单击,选择实例所在的区域。
- 单击左侧菜单栏的“缓存管理”,进入缓存管理页面。
- 单击需要开启公网访问的实例名称,进入该实例的基本信息页面。
- 单击“公网访问”后的“开启”。
- 在开启公网访问弹窗中勾选需要绑定的ELB,单击“确定”。
如果没有可选的ELB,单击页面提示的“弹性负载均衡”跳转链接,可前往ELB控制台页面进行创建。如果已经创建了ELB,未在ELB选择列表中,请参考前提条件中的说明排查ELB是否符合绑定条件。
- Redis实例绑定ELB期间,请勿删除绑定的ELB和监听器,并保证ELB可用,否则会影响Redis的正常公网连接。
- 如果需要删除ELB实例,请先在Redis实例详情页面解除绑定(关闭公网连接),再在ELB控制台删除ELB实例。
图1 绑定ELB
- 开启公网公网状态显示“成功”后,表示开启公网访问成功。
- 单击左侧菜单栏的“概览”,返回实例基本信息页面查看公网访问信息。如需关闭公网访问,单击“关闭”。
图2 公网访问连接地址
上图中的“EIP”地址为Redis实例的公网访问地址,“监听器”后的端口号为公网访问的端口。- 主备实例开启公网访问后,会生成两个监听器。一个主节点监听器(以listener-master开头)和一个备节点监听器(以listener-slave开头),分别用于监听实例的主节点和备节点。公网连接主备实例时请使用主监听器后的端口用于连接主备实例的主节点。仅当需要配置主备实例读写分离时,需要同时使用主、备监听器端口,分别连接主、备节点。
图3 主备实例公网连接地址
- 连接信息中的“连接地址”及“IP地址”为相同VPC内客户端访问Redis时的“域名地址:端口”和“IP地址:端口”。
- 主备实例开启公网访问后,会生成两个监听器。一个主节点监听器(以listener-master开头)和一个备节点监听器(以listener-slave开头),分别用于监听实例的主节点和备节点。公网连接主备实例时请使用主监听器后的端口用于连接主备实例的主节点。仅当需要配置主备实例读写分离时,需要同时使用主、备监听器端口,分别连接主、备节点。
Redis实例配置ELB内网IP白名单(可选)
如果Redis开启了IP白名单,需要将ELB内网IP地址添加到Redis实例的IP白名单中,以确保ELB可以访问Redis实例:
- 单击“公网访问”中ELB后的链接,跳转到负载均衡器页面。
- 复制页面中的ELB“ID”。
- 单击页面中“IPv4私有地址”后的地址,跳转到对应子网页面。
- 选择“IP地址管理”页签,在第二个搜索框中筛选资源ID(已复制的ELB ID),获取ELB内网IP地址。
- 将ELB的全部内网IP地址添加到Redis的IP白名单中,添加方式请参考配置Redis访问白名单。
配置ELB IP地址组(可选)
如果ELB需要配置IP地址组(IP白名单),请将Redis实例的公网IP地址(EIP地址)添加到ELB的IP地址组。开启ELB IP地址组的操作请参考访问控制IP地址组。