【问题标题】:Accessing memorystore in Shared VPC访问共享 VPC 中的内存存储
【发布时间】:2018-06-20 09:13:12
【问题描述】:

我创建了一个带有 IP 10.190.50.3 的 Memorystore 实例(这是在 us-east1 中)。 我有一个名为 my-gcp 的共享 VPC 设置,并且在创建 Memorystore 实例时我也授权了它。

在共享 VPC 中,我有一个服务项目 dev 和一个窗口机器 (10.190.5.7)。在里面,当我尝试从该 Windows 机器连接到内存存储时,我无法连接到 Memorystore 实例。

我还启用了从my-gcp vpc 的所有实例到10.190.50.3 的出口流量。这个 vpc 是在us-east4 中设置的。

tracert、ping 也不能用于 IP 10.190.50.3 的窗体窗口机器。

这个 Memorystore 实例是在 vpc 的宿主项目中创建的。

【问题讨论】:

    标签: redis google-cloud-platform vpc google-cloud-networking google-cloud-memorystore


    【解决方案1】:

    我发现public documentation最近更新了:

    1.连接的客户端必须与您的 Cloud Memorystore for Redis 实例位于同一网络和同一区域(同一区域内的不同区域也可以)。

    2.如果您在多个项目中使用共享 VPC 网络,您可以连接到部署在宿主项目的共享 VPC 网络上的 Redis 实例。不支持连接服务项目中部署在共享 VPC 网络上的 Redis 实例。

    还有关于如何从 Compute Engine 虚拟机连接到 Redis 实例的 link。

    【讨论】:

    • 哪里有提到“同一区域内不同区域可以”?我在他们的官方文档中看不到这一点。
    • 我从测试中发现同一区域内的不同区域对我有用。
    • 谢谢!我也可以确认这有效。 GCP Memorystire 文档需要更新!
    • 我已通知文档团队进行必要的更新。
    【解决方案2】:

    很遗憾,从服务项目访问 memorystore 目前在 Shared VPC 中是not supported。

    【讨论】:

    • 所以据说如果我在宿主项目中有一个内存存储实例(根据他们的文档,它应该在宿主项目中用于共享 vpc 设置)我的连接客户端必须在宿主项目中?对?如果是这样,那么如果内存实例只能从同一区域或网络使用,为什么使用共享 vpc 感染作为术语?
    • 嘿@deepak,您是否发现实际上可以从服务项目连接到主机项目上的 Redis 实例?我阅读的所有文档都是矛盾的。我有两个项目在同一区域和 VPC 中,但我无法共享同一个 Redis 实例。
    • 我在某个时候尝试过并且能够从服务项目中的主机项目访问内存存储。
    【解决方案3】:

    现在我们可以使用私有连接在共享网络中部署 GCP 的内存存储。请参阅此link 了解更多详情。

    以下步骤:

    1. Verify 或 establish 用于创建 Redis 实例的宿主项目中网络的私有服务访问连接。

    2. 确保为宿主项目和服务项目启用Service Networking API。

    3. 按照Creating a Redis instance on a VPC network 中的步骤进行,但进行以下修改:

      一个。完成设置专用服务访问连接的可选步骤。

      b.使用 Authorized VPC Network 下拉菜单从宿主项目中选择共享 VPC 网络。它列在共享 VPC 网络下。

    【讨论】:

      猜你喜欢
      • 2019-03-04
      • 2021-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-23
      • 2011-05-22
      相关资源
      最近更新 更多