【Azure Redis】Redis-CLI连接Redis 6380端口始终遇见 I/O Error

Azure,CLI,Redis ,I/O · 浏览次数 : 11

小编点评

**问题描述:** 使用 Redis-cli 连接 Redis 服务,由于工具无法直接支持 TLS 6380端口连接,所以需要使用 stunnel 配置 TLS/SSL 服务。配置过程中出现以下错误: ``` I/O Error. Connection failed: I/O Error. ``` **问题解答:** 1. **检查 Redis 6380端口连通性:** ``` redis-cli -p 6380 ``` 结果应为: ``` Connecting to redis-server:redis://127.0.0.1:6380 Connected! ``` 说明连接成功。 2. **检查配置文件:** 在 `redis-cli` 配置文件中,检查 `[service_name]` 配置项是否正确。该值应该是 `redis-cli`。 3. **添加 `client = yes` 配置:** 在 `redis-cli` 配置文件中,添加 `client = yes` 配置项。 4. **再次测试连接:** 使用 `redis-cli` 连接 6380 端口,应该成功连接到 Redis 服务。 **注意:** * `service_name` 的值应替换为您的 Redis 服务的真实名称。 * `client = yes` 配置允许客户端使用 `redis-cli` 连接。

正文

问题描述

使用Redis-cli连接Redis服务,因为工具无法直接支持TLS 6380端口连接,所以需要使用 stunnel 配置TLS/SSL服务。根据文章(Linux VM使用6380端口(SSL方式)连接Azure Redis (redis-cli & stunnel) : https://www.cnblogs.com/lulight/p/14188279.html),配置stunnel后,始终无法连接成功。报错 I/O Error.

 

问题解答

检查Redis的6380端口连通性 (paping xxxx.redis.cache.chinacloudapi.cn -p 6380) , 成功。排除Redis服务端问题。

再次检查客户端配置,特别是stunnel的config文件,对比发现,一个失误,引发的问题:

对比发现两处错误:

1)没有指定service_name,因为是使用redis-cli工具调用stunnel代理隧道进行TLS/SSL,所以这里的[service_name]需要替换为[redis-cli]

2)缺少了 client = yes 配置

在添加以上配置后,再次测试 redis-cli 连接 6380 端口,成功!

 

 

参考资料

Linux VM使用6380端口(SSL方式)连接Azure Redis (redis-cli & stunnel) : https://www.cnblogs.com/lulight/p/14188279.html

 

 

与【Azure Redis】Redis-CLI连接Redis 6380端口始终遇见 I/O Error相似的内容:

【Azure Redis】Redis-CLI连接Redis 6380端口始终遇见 I/O Error

问题描述 使用Redis-cli连接Redis服务,因为工具无法直接支持TLS 6380端口连接,所以需要使用 stunnel 配置TLS/SSL服务。根据文章(Linux VM使用6380端口(SSL方式)连接Azure Redis (redis-cli & stunnel) : https://

【Azure Redis】Redis客户端出现15分钟的超时异常

问题描述 客户端使用 Lettuce.io 连接 Azure Redis,出现了长达15分钟的Timeout异常。 问题解答 Azure Redis作为PaaS服务,由于一些平台的升级操作而引发的故障转移(Failover)。 如Redis的客户端时部署在Linux服务器上,则可能导致长达15分钟无

【Azure Redis】Redis导入备份文件(RDB)失败的原因

问题描述 在测试Azure Redis的导入/导出备份文件的功能中,突然发现在Redis 4.0上导入的时候,一直报错。 问题解答 因为门户上只是显示导入失败,没有任何错误消息说明。根据常理推断,Redis 的RDB文件格式都具有一致性。居然会出现导入失败,所以非常不合常理。但为什么会出现这样的情况

【Azure Redis】Redis服务负载达到100%后的影响及有何优化方法

问题描述 Redis服务负载达到100%后的影响及有何优化方法 问题解答 Redis的负载达到100% 意味着 Redis 服务器繁忙,无法跟上请求,导致客户端发送出来的请求超时。 常规情况下有一下几种情况可以导致这个问题: 1) 请求量变大达到服务上限 2) 执行默写时间复杂度高的指令,如KEYS

【Azure Redis 缓存】Redis 连接失败

问题描述 Azure Redis 出现连接失败,过一会儿后,又能自动恢复。 问题解答 其实,因为Azure Redis服务一直都有升级维护的操作(平均每月一次),Redis服务更新是平台自动进行的计划内的维护升级行为,一般客户端都有重试机制,是不会影响应用。 故障转移发生的情况有: 系统更新,例如

【Azure Redis 缓存】使用StackExchange.Redis,偶发ERROR - Timeout performing HSET (15000ms)

问题描述 使用StackExchange.Redis 作为Redis客户端SDK,连接Azure Redis服务,长期运行后发现,每天都偶发 Timeout Error。 错误消息如下: StackExchange.Redis.RedisTimeoutException: Timeout perfo

【Azure Redis 缓存】对于Azure Redis 从 Redis 4 升级到 Redis 6 的一些疑问

问题描述 使用Azure Redis服务,客户端使用Redisson 3.X , 在近期Microsoft Azure对Redis服务进行大规模变动升级( Redis 版本由 4 升级到 6),对于这次升级的影响有以下的问题? 问题解释 问题一:Redis 6.0 和 Redisson 3.X 之间

【Azure Redis】Azure Redis添加了内部虚拟网络后,其他区域的主机通过虚拟网络对等互连访问失败

问题描述 跨区域无法访问Azure Redis服务, Redis 启用了Network并设置在一个VNET中,现在客户端部署在另一个区域数据中心中,两个数据中心区域使用VNET Peer(对等互连)访问。但是为什么不能访问Redis服务呢? 问题解答 根据Azure Redis的官方介绍,因为Red

【Azure Redis 缓存】Azure Redis服务开启了SSL(6380端口), PHP如何访问缓存呢?

问题描述 使用6379端口连接Azure Redis服务,连接失败。因为默认情况下Azure Redis的设置没有打开6379的端口。需要使用SSL(6380端口)进行连接,但是遇见了无法连接的问题。 使用非SSL(6379端口)的连接代码

【Azure Redis 缓存】Azure Redis 4.0 被扫描到漏洞,如何修补呢?

问题描述 在安全级别要求高的公司中,任何系统都会进行安全扫描。比如Azure 云上的Redis服务,也在扫描的范围中,最后发现Redis 4.0存在以下漏洞: CVE-2019-10192:https://nvd.nist.gov/vuln/detail/CVE-2019-10192 CVE-201