【Azure Redis 缓存】如何使得Azure Redis可以仅从内网访问? Config 及 Timeout参数配置

简介: 【Azure Redis 缓存】如何使得Azure Redis可以仅从内网访问? Config 及 Timeout参数配置

问题描述

问题一:Redis服务,如何可以做到仅允许特定的子网内的服务器进行访问?

问题二:Redis服务,timeout和keepalive的设置是怎样的?是否可以配置成timeout 0?

问题三:需要在Redis中做一些配置的调试,但是Config命令禁用了,应该如何调试?

 

关于指定内网访问(问题一)

标准版Redis开启Private Endpoint之后,默认是只能在虚拟网络内部才可以访问的,且Redis防火墙则无法使用。同时,Private Endpoint不支持NSG。

在Redis开启Private Endpoint如果选择使用Azure Private DNS Zone的话,那么只有在该VNET中才可以解析到Private Endpoint内网IP。所以对于限制某些子网(subnet)可以访问Azure Redis的要求可以使用:

1: 使用高级版Redis并且配置虚拟网络,即可通过虚拟网络来实现该需求。

2: 使用标准版Redis开启private endpoint后,使用Redis Host Name来访问,则只有在该VNET中才可以访问Azure Redis,因为即时与其他VNET有打通,但是在其他VNET中也无法解析到内网IP。

3: 使用标准版Redis开启private endpoint后,为源端subnet设置NSG Outbound规则允许或者禁止访问private endpoint的内网IP。

 

在使用内网访问Redis时,需要注意的有:

  • 防火墙规则可以与 VNet 注入的缓存一起使用,但目前不能与专用终结点一起使用

Azure 防火墙规则

Azure 防火墙是托管的、基于云的网络安全服务,可保护 Azure VNet 资源。 它是一个服务形式的完全有状态防火墙,具有内置的高可用性和不受限制的云可伸缩性。 可以跨订阅和虚拟网络集中创建、实施和记录应用程序与网络连接策略。

优点

  • 配置防火墙规则时,仅指定 IP 地址范围内的客户端连接可以连接到缓存。 即使配置了防火墙规则,仍始终允许来自 Azure Redis 缓存监视系统的连接。 还允许你定义的 NSG 规则。

限制

  • 防火墙规则可以与 VNet 注入的缓存一起使用,但目前不能与专用终结点一起使用。

 

  • Redis专用终结点不支持NSG

是否对专用终结点启用了网络安全组 (NSG)?

否,已对专用终结点禁用了 NSG。 尽管包含专用终结点的子网可以有关联的 NSG,但这些规则不会针对专用终结点处理的流量生效。 必须禁用网络策略的强制实施,才能在子网中部署专用终结点。 NSG 仍会在同一子网中托管的其他工作负荷上强制实施。 任何客户端子网上的路由将使用 /32 前缀,更改默认路由行为需要类似的 UDR。

对源客户端上的出站流量使用 NSG 规则来控制流量。 部署具有 /32 前缀的单个路由,以替代专用终结点路由。 仍支持出站连接的 NSG 流日志和监视信息,并且可以使用这些信息

 

  • 专用终结点限制 :网络安全组 (NSG) 规则和用户定义的路由不适用于专用终结点

说明:专用终结点不支持 NSG。 尽管包含专用终结点的子网可以有关联的 NSG,但这些规则不会针对专用终结点处理的流量生效。 必须禁用网络策略的强制实施,才能在子网中部署专用终结点。 NSG 仍会在同一子网中托管的其他工作负荷上强制实施。 任何客户端子网上的路由将使用 /32 前缀,更改默认路由行为需要类似的 UDR

缓解措施:对源客户端上的出站流量使用 NSG 规则来控制流量。 部署具有 /32 前缀的单个路由,以替代专用终结点路由。 仍支持出站连接的 NSG 流日志和监视信息,并且可以使用这些信息

 

 

Redis Config 设置参数(问题二&问题三)

Azure Redis是无法执行Config命令的,所以timeout是没有办法配置的,默认值为: tcp-keepalive = 25 & timeout = 600

Azure Redis 缓存中不支持 Redis 命令

因为 Azure Redis 缓存实例的配置和管理由 Microsoft 进行管理,所以禁用了以下命令。 如果尝试调用它们,将收到一条类似于 "(error) ERR unknown command" 的错误消息。

  • BGREWRITEAOF
  • BGSAVE
  • CONFIG
  • DEBUG
  • MIGRATE
  • SAVE
  • SHUTDOWN
  • SLAVEOF
  • CLUSTER - 群集写命令已禁用,但允许使用只读群集命令。

有一些config参数是可以修改的,不过需要使用Powershell修改:https://docs.microsoft.com/zh-cn/powershell/module/az.rediscache/set-azrediscache?view=azps-6.0.0

举例:

# Create redis configuration JSON
$RedisConfiguration = @{"rdb-backup-enabled"="true"; "rdb-backup-frequency"="60"; "rdb-storage-connection-string"="$StorageConnectionString"; "rdb-backup-max-days"="7"}
# Update an existing cache
Set-AzRedisCache -ResourceGroupName $ResourceGroupName -Name $CacheName -RedisConfiguration $RedisConfiguration
相关文章
|
7月前
|
缓存 负载均衡 监控
135_负载均衡:Redis缓存 - 提高缓存命中率的配置与最佳实践
在现代大型语言模型(LLM)部署架构中,缓存系统扮演着至关重要的角色。随着LLM应用规模的不断扩大和用户需求的持续增长,如何构建高效、可靠的缓存架构成为系统性能优化的核心挑战。Redis作为业界领先的内存数据库,因其高性能、丰富的数据结构和灵活的配置选项,已成为LLM部署中首选的缓存解决方案。
759 25
|
8月前
|
存储 缓存 NoSQL
Redis专题-实战篇二-商户查询缓存
本文介绍了缓存的基本概念、应用场景及实现方式,涵盖Redis缓存设计、缓存更新策略、缓存穿透问题及其解决方案。重点讲解了缓存空对象与布隆过滤器的使用,并通过代码示例演示了商铺查询的缓存优化实践。
344 1
Redis专题-实战篇二-商户查询缓存
|
7月前
|
缓存 运维 监控
Redis 7.0 高性能缓存架构设计与优化
🌟蒋星熠Jaxonic,技术宇宙中的星际旅人。深耕Redis 7.0高性能缓存架构,探索函数化编程、多层缓存、集群优化与分片消息系统,用代码在二进制星河中谱写极客诗篇。
1319 3
|
8月前
|
缓存 NoSQL 关系型数据库
Redis缓存和分布式锁
Redis 是一种高性能的键值存储系统,广泛用于缓存、消息队列和内存数据库。其典型应用包括缓解关系型数据库压力,通过缓存热点数据提高查询效率,支持高并发访问。此外,Redis 还可用于实现分布式锁,解决分布式系统中的资源竞争问题。文章还探讨了缓存的更新策略、缓存穿透与雪崩的解决方案,以及 Redlock 算法等关键技术。
|
12月前
|
缓存 NoSQL 关系型数据库
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
|
12月前
|
缓存 NoSQL Java
Redis+Caffeine构建高性能二级缓存
大家好,我是摘星。今天为大家带来的是Redis+Caffeine构建高性能二级缓存,废话不多说直接开始~
1534 0
|
12月前
|
消息中间件 缓存 NoSQL
基于Spring Data Redis与RabbitMQ实现字符串缓存和计数功能(数据同步)
总的来说,借助Spring Data Redis和RabbitMQ,我们可以轻松实现字符串缓存和计数的功能。而关键的部分不过是一些"厨房的套路",一旦你掌握了这些套路,那么你就像厨师一样可以准备出一道道饕餮美食了。通过这种方式促进数据处理效率无疑将大大提高我们的生产力。
359 32
|
缓存 NoSQL Java
Redis:现代服务端开发的缓存基石与电商实践-优雅草卓伊凡
Redis:现代服务端开发的缓存基石与电商实践-优雅草卓伊凡
301 5
Redis:现代服务端开发的缓存基石与电商实践-优雅草卓伊凡
|
存储 缓存 NoSQL
解决Redis缓存数据类型丢失问题
解决Redis缓存数据类型丢失问题
594 85
|
缓存 NoSQL Java
Redis应用—8.相关的缓存框架
本文介绍了Ehcache和Guava Cache两个缓存框架及其使用方法,以及如何自定义缓存。主要内容包括:Ehcache缓存框架、Guava Cache缓存框架、自定义缓存。总结:Ehcache适合用作本地缓存或与Redis结合使用,Guava Cache则提供了更灵活的缓存管理和更高的并发性能。自定义缓存可以根据具体需求选择不同的数据结构和引用类型来实现特定的缓存策略。
955 16
Redis应用—8.相关的缓存框架

热门文章

最新文章