ren*_*udg 18 amazon-ec2 continuous-deployment autoscaling ansible docker
我的组织的网站是在前端Web服务器上运行的Django应用程序+ AWS中的一些后台处理服务器.
我们目前正在使用Ansible:
同样的Ansible playbook能够从头开始配置本地Vagrant dev VM或生产EC2实例.
我们现在想要在EC2中实现自动缩放,这需要对"将服务器视为牛,而不是宠物"的理念进行一些更改.
第一个先决条件是从静态管理的Ansible库存转移到动态的,基于EC2 API的库存,完成.
接下来的一个重要问题是如何在这个新世界中进行部署,在这个世界中,一夜之间会出现一次性事件.我能想到的选择是:
你怎么做呢 ?任何见解/最佳实践?谢谢 !
这个问题非常基于意见.但是为了给你我的看法,我只想用Ansible预先安装AMI,然后使用CloudFormation通过Autoscaling,Monitoring和预先制作的AMI来部署你的堆栈.这样做的好处是,如果您将大部分应用程序堆栈预先烘焙到AMI中,则自动缩放UP将会更快.
Docker是另一种方法,但在我看来,它在您的应用程序中添加了一个额外的层,如果您已经在使用EC2,则可能不需要.如果您想在单个服务器中进行容器化,Docker可能非常有用.也许你在服务器上有一些额外的容量,而Docker将允许你在同一台服务器上运行那个额外的应用程序,而不会干扰现有的应用程序.
话虽如此,有些人发现Docker不是以某种方式优化单个服务器中的资源,而是以某种方式允许您在容器中预先烘焙应用程序.因此,当您部署新版本或新代码时,您只需要在服务器上复制/复制这些docker容器,然后停止旧容器版本并启动新容器版本.
我的两分钱.
| 归档时间: |
|
| 查看次数: |
5465 次 |
| 最近记录: |