我们正处于在 AWS 上运行我们的服务的早期阶段。我们的服务器托管在 AWS 中,在 VPC 中,具有私有和公共子网,并且在私有和公共子网中有多个实例,使用 ELB 和前端 Web 服务器的自动缩放设置(使用 AMI)。首先使用 AWS 控制台手动设置整个环境(VPC、安全组、EC2 实例、数据库实例、S3 存储桶、云端)。应用服务器托管 jboss,war 文件部署在服务器上。
根据 AWS 最佳实践,我们希望使用 cloudformation 创建整个基础设施并设置测试/阶段/产品环境。
- 使用一个 cloudformation 堆栈/模板拥有所有上述组件(VPC、安全组、EC2 实例、数据库实例、S3 存储桶、云端等)是否是个好主意?或者我们应该创建两个堆栈 1) 具有网络重装组件和 2) 具有 EC2 相关组件?
-一旦我们有一个使用 cloudformation stact 运行的 prod envoronemtn,如果我们将来想在 prod 上更新新的 AMI,我们如何使用 cloudformation 更新实时运行的 EC2 实例而不中断?
- 完成新版本后,将代码部署到多个 EC2 笔记的最佳实践/多种方法是什么?我们目前不使用 Contius 集成。