我有一个简单的2层安排 – 一个Web服务器(
Windows上托管的Websphere)和一个oracle数据库服务器. Web服务器需要连接oracle数据库服务器.
我正在尝试编写一个脚本
>使用Oracle数据库创建EC2实例
>使用Websphere创建EC2实例
>配置Websphere实例以与数据库通信
我被困在#3.每次运行脚本时,DB服务器都会获得不同的IP地址.如何告诉我的Websphere实例“将此IP地址用于数据库”?
我考虑过的一些解决方案 –
>配置Websphere以连接到主机名.当数据库服务器启动并分配了IP地址时,更新DNS记录(可能是Route 53)
>启动websphere实例时,将DB服务器IP地址作为用户数据传递,并运行启动脚本以更新配置
>使用弹性IP地址 – 但这需要通过互联网路由数据库流量,对吗?
这些解决方案中的每一个似乎都比平常更多.有什么我想念的吗?解决这个问题的标准方法是什么?
为Bounty编辑
弹性IP地址解决方案有效,但我不喜欢在永远不会连接到互联网的服务器上浪费公共IP地址.我很想听到你用来解决这个问题的任何其他解决方案.
解决方法
您可以使用弹性IP,但通过其域名连接,它将解析为内部地址.显然,您从弹性IP中获取DNS名称,例如ec2-46-147-161-187.eu-west-1.compute.amazonaws.com对应于eu-west-1中的46.147.161.187.该域名将被修复,以便您可以根据需要对其进行硬编码.
见https://forums.aws.amazon.com/message.jspa?messageID=299889.