google-cloud-platform - 无法使用无服务器 VPC 访问设置 Google Cloud Memorystore redis 实例
问题描述
我想设置一个 Google Cloud memorystore redis 实例并通过我的 google cloud 功能连接到它。遵循本指南https://thecloudfunction.com/blog/firebase-cloud-functions-and-redis/
据我了解,一般步骤是:
- 启用无服务器 VPC 服务并创建一个连接器供我的函数使用。
- 启用 redis 并在同一 IP 地址范围内创建 redis 实例。
问题是,如果我先创建连接器(步骤 #1),然后在尝试创建 redis 实例时出现此错误(步骤 #2):
Server response: Invalid value for field 'resource.ipCidrRange': '10.92.0.0/28'. Invalid IPCidrRange: 10.92.0.0/28 conflicts with peer network in active peering 'redis-peer-863826821838'.
如果我尝试翻转这些步骤,请先创建 redis 实例(步骤 #2),然后创建连接器(步骤 #1),然后在尝试创建连接器时出现此错误:
connector is in a bad state manual deletion recommended
我认为这是每个第一个错误的一些 IP 范围冲突的问题,但是查看 VPC 连接我在任何地方都没有看到冲突:
据我了解,这些都不应该与我的 IP 范围冲突10.92.0.0/28
,对吧?
这一切都发生在us-central1
想知道是否有人知道如何正确设置 redis 实例 + 连接器并克服这些错误,或者是否有人对在哪里查找此 IP 范围冲突以及如何解决它有任何建议。
谢谢!
解决方案
好的,所以终于让它工作了。对于其他在这个问题上苦苦挣扎的人来说,这是我必须做的:
- 创建一个 redis 实例,而不是手动输入
Instance IP address range
. 跳过该字段并在没有字段的情况下创建它。这将生成一个不与任何其他范围冲突的 redis 实例。例如10.51.123.233
- 现在创建连接器并将其设置为创建的 redis 实例的 ip 范围。例如,如果您的 redis 实例生成了一个 IP,
10.51.123.233
那么您需要将连接 IP 范围设置为10.51.0.0/28
推荐阅读
- flutter - Flutter如何在文本字段中显示文本和图像
- android - 三星 Galaxy S20 有时会打破黑暗模式
- mysql - 具有用户定义时间范围的数据透视表
- python - 在Python的目录中以相同的顺序读取文本文件路径
- html - Slick 将箭头显示为按钮
- python - 从 python 的 Azure 认知服务(文本到语音)上使用词典的问题
- laravel - laravel 通知 - '字段列表'中的未知列'user_id'
- python - 累积直方图显示错误值
- security - 全站失败登录请求阈值动态公式
- intellij-idea - 如何重置 IntelliJ 2020.2 中配置的 Tomcat 服务器的默认设置强制关闭?