我们在elastic.co部署了一个弹性搜索服务。在创建部署过程中,选择了"AWS"作为云平台。我们得到了一个解析为公共IP地址的端点URL。此外,我们有一个AWS帐户,它有多个ec2实例在运行。当我们从ec2实例访问弹性搜索服务时,流量通过互联网。
是否可以使弹性搜索服务对ec2实例可见,就好像两者都在同一网络中一样?
如果您想使用安全连接,您必须使用名为Elasticsearch Service Private的特殊订阅。常见问题解答[1]中提到:
我们支持使用AWS私有链接进行安全对等。要在专用VPC中运行Elasticsearch服务,并与您的环境建立安全连接,请使用Elasticsearch Service Private订阅。有关更多信息,请参阅设置Elasticsearch服务专用。
有一个指南,概述了您需要采取的所有步骤。[2]不过我不知道价格的细节。在指南中,他们表示您需要联系他们的团队以获取更多信息。在您与他们取得联系并订购Elasticsearch Service Private订阅后,他们会在其帐户内为您设置专有网络。接下来,他们创建一个VPC PrivateLink端点服务,并将您的帐户列入白名单。最后,他们为您提供Elasticsearch Service Private Endpoint Service名称,您可以使用该名称创建接口VPC端点(由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