目前我正在运行约40个Windows EC2实例。在接下来的几个月中,这个数字将开始大幅增长。每个实例都是一个t2.small Windows 2016 Server实例。随着数量的增加,成本开始成为一个问题。每个实例都有其自己的弹性IP地址,因为当用户Tom要访问其计算机时,他将使用DNS tom.mydomain.com
。
tom.mydomain.com
已注册在Route53托管区域中,该区域指向与Tom的EC2实例相关联的弹性IP 22.33.44.55
。
问题是汤姆每天只需要使用4个小时。不使用它时,他只是关闭机器。但是...指向停止实例的弹性IP每小时花费的费用几乎与处于运行状态的t1.micro实例的费用一样。
所以我要做的是,当Tom登录到AWS控制台并启动他的EC2实例时,它将自动针对DNS“ tom.mydomain.com”向Route53注册。
简而言之,我想消除对弹性IP的需求,而弹性IP迅速成为非常昂贵的成本。
教程Auto-Register EC2 Instance in AWS Route 53 看起来确实可以满足我的需求。问题是脚本是针对Linux的。我想让它适用于Windows。我已经完成了本教程的第6步的所有工作,但仍停留在该步骤中。有人能在Windows上获得类似于此功能的东西吗?
答案 0 :(得分:2)
我建议:
上述过程避免为您的用户分配IAM凭据。虽然IAM凭证对于在您的AWS基础设施上工作的员工很重要,但不应将其分配给服务的最终用户。
该过程还避免为每个EC2实例分配IAM权限。尽管实例本身可以调用Route 53来更新其域名的记录,但这需要将IAM角色分配给EC2实例。如果您的用户有权访问实例本身,则可能会打开一个安全漏洞,使他们可以使用错误的数据(例如,将其他用户的域名分配给自己的实例)来呼叫Route 53。
值得一提的是,以上建议反映了 Amazon WorkSpaces 的运行方式-用户进行身份验证,启动实例,并在一段时间不使用后停止实例。
答案 1 :(得分:0)
我将建议使用cloudformation模板。 Cloudformation可以创建EC2,然后将其附加到route53 url。因此,当汤姆喜欢使用EC2实例时,他必须在Cloudformation中运行堆栈。完成后,他必须返回cloudformation并销毁堆栈。
答案 2 :(得分:0)
是的,建议使用Cloudformation。您可以尝试cloudkast,它是一个在线cloudformation模板生成器。它将使您轻松而轻松地创建cloudformation模板的任务