IP 地址不匹配私有服务连接 Google 云平台和弹性云

Mismatch IP address Private Service Connect with Google Could Platform and Elastic Cloud

我正在设置与 Elastic Cloud 连接的 GCP 专用服务,并且我已按照此页面中的说明进行操作:

  1. https://www.elastic.co/guide/en/cloud/current/ec-traffic-filtering-psc.html

所以我在 GCP 上设置了 Private Service Connect,创建了一个与 A-Record 具有相同 ip 的 DNS,这是在 Private Service Connect 上提供的。我在 Elastic Cloud 中使用与在 GCP 生成的相同 psc id 创建了一个流量过滤器,之后我将这个流量过滤器添加到其中一个 Elasticsearch 部署的安全性中。

在我上面发布的文档中,Elastic 提到了以下部分:

To access your Elasticsearch cluster over Private Link, use the following URL structure: https://{elasticsearch_cluster_ID}.{private_hosted_zone_domain_name}:9243

For example:

https://6b111580caaa4a9e84b18ec7c600155e.psc.asia-southeast1.gcp.cloud.es.io:9243

You can test the Google Cloud console part of the setup with the following command (substitute the region and Elasticsearch ID with your cluster):

$ curl -v https://6b111580caaa4a9e84b18ec7c600155e.psc.asia-southeast1.gcp.cloud.es.io:9243
..
*   Trying 192.168.100.2...
..
< HTTP/2 403
..
{"ok":false,"message":"Forbidden"}

Check the IP address 192.168.100.2. it should be the same as the IP address assigned to your Private Service Connect endpoint.

The connection is established, and a valid certificate is presented to the client. The 403 Forbidden is expected, you haven’t associated any deployment with the Private Service Connect endpoint yet.

我已经完成了这部分,并且收到了与上述 curl 响应类似的消息。但是,我终端中 curl 响应中的 ip 是不同的。所以它与分配给我的私人服务连接端点的 IP 地址不同。

我无法分享配置的屏幕截图,因为它包含不允许我在公司外部分享的 psc id 或 ip 地址。但是配置和我在上面发布的link的教程中描述的完全一样。

知道造成这种不匹配的原因是什么吗?或者其他人有类似的问题吗?

问题很可能与 DNS 记录有关。可以用云shell命令验证:

gcloud dns record-sets list --zone=<your-dns-zone-name>

确认您有指向您的专用连接服务端点 ip 地址的记录:

NAME: *.psc.us-east1.gcp.elastic-cloud.com.
TYPE: A
TTL: 300
DATA: <endpoint-ip-address>

确保您的地区 Private Zone DNS name 正确。