0

我们在 elastic.co 部署了一个 elasticsearch 服务。在创建部署期间,选择“AWS”作为云平台。我们得到一个解析为公共 IP 地址的端点 URL。此外,我们有一个运行多个 ec2 实例的 AWS 账户。当我们从 ec2 实例访问 elasticsearch 服务时,流量通过互联网。

是否可以让 ec2 实例可以看到 elasticsearch 服务,就好像两者都在同一个网络中一样?

4

1 回答 1

2

如果要使用安全连接,则必须使用称为Elasticsearch Service Private的特殊订阅。常见问题解答 [1] 中提到了这一点:

我们支持使用 AWS Private Link 进行安全对等互连。要在专用 VPC 中运行 Elasticsearch Service,并与您的环境建立安全连接,请使用 Elasticsearch Service Private 订阅。有关更多信息,请参阅设置 Elasticsearch Service Private。

有一个指南概述了您需要采取的所有步骤。[2] 不过我不知道定价细节。在指南中,他们声明您需要联系他们的团队以获得更多信息。在您与他们取得联系并订购Elasticsearch Service Private订阅后,他们会在他们的账户中为您设置一个 VPC。接下来,他们创建一个 VPC PrivateLink Endpoint Service 并将您的账户列入白名单。最后,他们为您提供Elasticsearch Service Private Endpoint Service 名称,您可以使用它来创建 Interface VPC Endpoint(由 PrivateLink 提供支持)。[3]
您应该在 EC2 实例使用的每个子网中创建一个接口终端节点。创建接口终端节点后,您可以通过 PrivateLink 自动添加到 AWS DNS 服务器的 DNS 名称访问 Elasticsearch 终端节点。您只需确保您的 EC2 实例正在使用 VPC 的 DNS 服务器。如果您没有更改 VPC 的默认 DHCP 选项集,它应该是默认配置。

参考

[1] https://www.elastic.co/guide/en/cloud/current/ec-faq.html(请参阅问题:“您支持 VPC 对等 Elasticsearch 服务吗?”)
[2] https://www .elastic.co/guide/en/cloud/current/ec-getting-started-private.html
[3] https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html

于 2020-04-04T22:57:32.003 回答