我是一名自由职业者,并计划在未来与其他自由职业者合作。由于我将拥有项目,因此我也想拥有开发环境。我们都将在各自的地点工作。我一直在考虑使用 Amazon 的 EC2 服务来建立开发环境并为其他相关人员提供所需的访问权限。
考虑到上述情况,我有几个疑问:
- 这是一个好主意吗?创建虚拟机并将其(物理地)分发给团队成员会更好吗?当然,在这种情况下我会失去控制,数据很容易受到攻击。
- 我应该只购买一个大型实例,安装所有需要的工具,创建用户并根据角色为他们提供访问权限吗?
- 我应该只购买一个大型/超大型实例,在实例内部构建虚拟机,每个角色一个虚拟机,并为每个用户实例化实例吗?我现在不确定访问会如何进行。如何能够直接访问在 EC2 实例中运行的 VM 实例。
- 有一些工具可以帮助管理 EC2 实例 wrt EC2 API。但是,根据我上面解释的内容(特别是第 3 点),是否有工具可以帮助管理/监控其中的实例和虚拟机?
在这一点上,我可能无法想到更多的复杂性。如果有人已经经历过,将不胜感激输入/指示。
选项 2 要求实例 24/7 启动并运行(或至少在每个人的工作计划联合期间)。这对你来说可能无关紧要。
我不确定选项 3 是否可行。您是否询问在您的 EC2 实例中安装 Xen(或其他东西)然后创建您自己的“子虚拟”机器?
另一种选择是创建一个设置了开发环境的 EC2 映像 (AMI),然后允许每个开发人员在他们想要工作的时候启动这个 AMI 的一个实例。
好处:
缺点:
如果您认为这适合您,那么可以通过多种方式解决 AWS 账户问题:
我相信您可以授予对 AMI 的启动访问权限,而不必
root
在实例启动并运行后授予人员访问权限。但是您需要仔细检查一下,因为这听起来像是您担心安全性。最后,这显然需要一些 24/7 运行的中央源代码存储库。这可能不是适合您的解决方案的另一个原因。