【Azure Redis 缓存 Azure Cache For Redis】在创建高级层Redis(P1)集成虚拟网络(VNET)后,如何测试VNET中资源如何成功访问及配置白名单的效果
当使用Azure Redis高级版时候,为了能更好的保护Redis的安全,启用了虚拟网路,把Redis集成在Azure中的虚拟网络,只能通过虚拟网络VENT中的资源进行访问,而公网是不可以访问的。但是在使用中,有时候会有一些疑惑,大多数的疑惑我们可以在Azure Redis的文档中得到答案,有一些则需要通过自己在使用中得到验证或解释。如:
- 当集成成功后,为什么通过公网nslookup也可以解析成功Redis 域名呢?
- 在内网中如何连接Redis呢?通过何种方式来进行测试?
- Redis的防火墙的白名单起什么作用呢?是否可以设置允许外网的IP地址进行访问呢?
如何为高级 Azure Redis 缓存配置虚拟网络, 请见文档:https://docs.azure.cn/zh-cn/azure-cache-for-redis/cache-how-to-premium-vnet, 特别注意的是,将 Azure Redis 缓存部署到资源管理器 VNet 时,缓存必须位于专用子网中,该子网中只能包含 Azure Redis 缓存实例,而不能包含其他资源。 如果尝试将 Azure Redis 缓存部署到包含其他资源的资源管理器 VNet 子网,部署会失败。
我们就通过实验来一一解答.
1) 当集成成功后,为什么通过公网nslookup也可以解析成功Redis 域名呢?
因为在Redis创建号之后,是通过DNS域名来进行的访问(公网与内网的访问方式一样,也可以通过IP地址访问)。而内网中如果我们没有自定义DNS服务器,这需要向外部公网的DNS服务器寻求对次Redis的域名进行解析,如(114.114.114.114,8.8.8.8), 而这是Redis服务在为了不论是在内网,外网的情况下都能解析到Redis DNS而设计的。但是如果构建的内部虚拟网络(VNET)如果不允许想外部发送请求,这必须在自己的DNS服务器上配置该条A记录。
虽然外网能够解析出该Redis 域名,但是解析出的是一个内网IP地址,所以外部网络也是无妨访问此Redis的。

2) 在内网中如何连接Redis呢?通过何种方式来进行测试?
首先,需要在内网中找一台虚拟机。通过tcping.ext的小工具来对6379,6380端口进行ping命令并查看返回结果。如果ping的结果正常,则可以使用Redis-cli工具连接到Redis服务。如Windows平台可以https://github.com/microsoftarchive/redis/releases 下载。
使用tcping.ext测试端口命令:
tcping.exe yourcachename.redis.cache.chinacloudapi.cn 6379 tcping.exe yourcachename.redis.cache.chinacloudapi.cn 6380
使用Redis-cli连接到Redis命令:
redis-cli.exe -h yourcachename.redis.cache.chinacloudapi.cn -p 6379 -a YourAccessKey
3) Redis的防火墙的白名单起什么作用呢?是否可以设置允许外网的IP地址进行访问呢?
当集成在内部虚拟网络之后,外部公网是不可以继续访问的[VNet 是云中的专用网络。 为 Azure Redis 缓存实例配置了 VNet 后,该实例不可公开寻址,而只能从 VNet 中的虚拟机和应用程序进行访问]。而此时,防火强的白名单的作用对象也变成了内网中的IP地址,即:可以通过设置防火墙白名单,只允许内网中的部分资源访问Redis。
[END]
【Azure Redis 缓存 Azure Cache For Redis】在创建高级层Redis(P1)集成虚拟网络(VNET)后,如何测试VNET中资源如何成功访问及配置白名单的效果的更多相关文章
- 【Azure Redis 缓存 Azure Cache For Redis】Azure Redis由低级别(C)升级到高级别(P)的步骤和注意事项, 及对用户现有应用的潜在影响,是否需要停机时间窗口,以及这个时间窗口需要多少的预估问题
问题描述 由于Azure Redis的性能在不同级别表现不同,当需要升级/缩放Redis的时候,从使用者的角度,需要知道有那些步骤? 注意事项? 潜在影响?停机事件窗口? 升级预估时间? 解决方案 从 ...
- spring boot redis 缓存(cache)集成
Spring Boot 集成教程 Spring Boot 介绍 Spring Boot 开发环境搭建(Eclipse) Spring Boot Hello World (restful接口)例子 sp ...
- 【Azure Redis 缓存 Azure Cache For Redis】如何设置让Azure Redis中的RDB文件暂留更久(如7天)
问题描述 Azure Redis和所有的Redis服务一样,可以让你保留存储在Redis中的数据.以防万一在Redis服务器出现故障的时候能尽可能小的减少数据的损失.在Azure Redis服务中,默 ...
- 【Azure Redis 缓存 Azure Cache For Redis】Redis性能问题,发现Server Load非常的高,导致正常连接/操作不成功
问题描述 在正常使用Azure Redis的服务中,突然发现Redis 的CPU达到了100%, 正常的使用中发现性能问题严重.从Redis的门户图表中,观察到CPU, Connection,Lent ...
- 【Azure Redis 缓存 Azure Cache For Redis】使用Redis自带redis-benchmark.exe命令测试Azure Redis的性能
问题描述 关于Azure Redis的性能问题,在官方文档中,可以查看到不同层级Redis的最大连接数,每秒处理请求的性能. 基本缓存和标准缓存 C0 (250 MB) 缓存 - 最多支持 256 个 ...
- 【Azure Redis 缓存 Azure Cache For Redis】Redis连接池
问题描述 Redis根据定价层说明,不同级别支持的连接数最多可达4万(同时),但是当短时间又大量连接请求建立的时候,Redis服务的服务压力非常大,到达100%.严重影响了高响应的要求.最严重时,经常 ...
- 【Azure Redis 缓存 Azure Cache For Redis】Redis出现 java.net.SocketTimeoutException: Read timed out 异常
问题描述 在使用Azure Redis时,遇见Read Timed out异常, Redis的客户端使用的时jedis.问题发生时,执行redis部分指令出错,大部分get指令,set指令能正常执行. ...
- 【Azure 应用服务】Azure Function集成虚拟网络,设置被同在虚拟网络中的Storage Account触发,遇见Function无法触发的问题
一切为了安全,所有的云上资源如支持内网资源访问,则都可以加入虚拟网络 问题描述 使用Azure Function处理Storage Account中Blob 新增,更新,删除等情况.Storage A ...
- 【Azure Redis 缓存 Azure Cache For Redis】当使用Jedis客户端连接Redis时候,遇见JedisConnectionException: Could not get a resource from the pool / Redis connection lost
问题情形 当在执行Redis一直指令时,有可能会遇见如下几种错误: 1) redis.clients.jedis.exceptions.JedisConnectionException: Could ...
随机推荐
- Vue render函数 函数时组件 jsx
常规组件使用 定义组件 components/list/list.vue <template> <ul> <li v-for="(item, index) in ...
- maximo入门----用户使用提要
其实七月初就知道自己要做maximo了,但是那个时候
- 用友yonsuite产品二开之简单的yonsql查询小工具
和以往的用友产品不同,yonsuite产品开发了低代码平台,满足客户的个性化开发需求.嗯~,一句话不知当讲不当讲,那就讲:所谓低代码平台就是开发不想用实施不会用系列.让我一个开发感受到了憋屈.
- Do not use built-in or reserved HTML elements as component id:mask vue报错
今天学习了一下vue的组件,但是报了一个错误 Do not use built-in or reserved HTML elements as component id:mask , 经过查询得知是因 ...
- 代码检查工具 Sonar 安装&使用
本文主要说明Sonar的安装方式并附上依赖安装包,本文目标只实现本地搭建测试的Sonar环境,以及本地的测试项目的非定制化扫描 本机测试环境:Win10-X64,.vs2017 依赖包: 1 ...
- 在Notepad++中配置python运行环境
1.当然首先还是需要先安装Python软件包的,推荐Python 3.X 2.打开Notepad++,[运行]--[运行],或者直接按F5快捷键,输入如下命令: cmd /k cd /d " ...
- Linux系统编程 —读写锁rwlock
读写锁是另一种实现线程间同步的方式.与互斥量类似,但读写锁将操作分为读.写两种方式,可以多个线程同时占用读模式的读写锁,这样使得读写锁具有更高的并行性. 读写锁的特性为:写独占,读共享:写锁优先级高. ...
- Tengine更新安装
Tengine安装及配置 一,下载 http://tengine.taobao.org/download.html 找到下载包并且下载(Tengine-2.3.2.tar.gz) wget -c ht ...
- 基础篇:深入JMM内存模型解析volatile、synchronized的内存语义
目录 1 java内存模型,JMM(JAVA Memory Model) 2 CPU高速缓存.MESI协议 3 指令重排序和内存屏障指令 4 happen-before原则 5 synchronize ...
- django_apscheduler 0.4.0删除了name字段
使用django_apscheduler时默认使用了最新版本,为0.4.2版本,但是在这个版本中,使用migrate 生成定时任务模型时没有了name字段,导致之前写的定时任务不能执行. 翻了下 dj ...