在上一篇文章中,我写了关于如何通过使用Elastic Beanstalk在AWS上运行Spring Boot应用程序的信息。 前面我还描述了如何使Spring Boot应用程序使用HTTPS代替HTTP与BoxFuse结合使用。 我最终找到了该解决方案,在我的应用程序源中包括了必要的SSL证书。 完成SSL连接的另一种方法是让Beanstalk应用程序中的Elastic Load Balancer (ELB)为我们终止SSL,然后让Spring Boot应用程序通过HTTP与ELB进行通信。 这种设置可能是一种非常方便(也许很小但足够)的方法,可以为API / Web应用程序的通信级别增加安全性。
为了完成此设置,我需要采取几个步骤,其中我将描述本文中的第一个步骤。 要执行的步骤是:
- 将(子)域分配给Beanstalk应用程序
- 从AWS Certificate Manager获取子域的证书
- 配置AWS Beanstalk应用程序以使用SSL
如本文前面所述,我将仅展示如何为Beanstalk实例分配子域。 在我的情况下,父域在其他地方(AWS以外的提供者)注册。 我注册的父域是“ palmapps.nl”。 我要注册的子域是“ test.palmapps.nl”。
第一步是在AWS Route 53中创建一个新的托管区域 。 由于这是我只能通过管理控制台选择执行的操作,因为此处无需编写脚本。 在管理控制台中,打开Route 53,然后单击“创建托管区域”按钮。 只需填写字段,然后单击“创建”即可:
托管区域是与两个记录集一起创建的,其中一个为“ NS”类型,一个为“ SOA”类型,将在下一个屏幕中显示:
下一步是创建一个指向Beanstalk应用程序的“ A”记录。 单击“创建记录集”后,您可以简单地填充屏幕,如下所示:
只要确保选择“ alias”作为“ yes”,就可以为您的域名选择Elastic Beanstalk应用程序作为“ Alias Target”。 要获取有关其他选项的更多信息, 请参阅 Route 53 的文档 。
完成此工作的最后一步是在顶级域提供商处添加一些DNS记录。 有了这些记录,我们将告诉提供商,对于该子域,它应使用AWS Route 53 DNS服务器来解析域名。 现在,对于每个提供程序,此步骤将有所不同,但是最后您将必须添加如下记录集:
要获取AWS Route 53服务器,请在管理控制台中选择托管区域,您将在面板右侧看到服务器:
当所有这些都准备就绪时,在调用“ http://test.palmapps.nl/health ”时,您将自动进入Elastic Beanstalk应用程序:
(请注意,用所有新信息更新所有必要的DNS服务器可能要花一些时间。)
翻译自: https://www.javacodegeeks.com/2016/08/assigning-subdomain-beanstalk-application-aws-route-53.html