首页 > 解决方案 > Ubuntu 实例在执行上限部署时无响应

问题描述

我有一个小的 ruby​​ on rails 应用程序,我已经使用 capistrano 在亚马逊 ec-2 实例上部署了它,我的实例是一个 t2.small 实例,上面安装了 nginx,并且也在服务器上安装了本地 postgress db。我有一个经常部署的开发实例,最近每当我尝试在我的 ec-2 实例上进行 capistrano 部署时,cpu 利用率都有一个巨大的峰值,通常在 20-25% 之间,但由于某种原因在部署期间它上升到 85%,这使我的实例无响应,我必须在我的服务器上进行硬重启才能让它恢复工作

我不知道为什么会发生这种情况,我应该怎么做才能解决这个问题,因为负载平衡和自动缩放在这种情况下毫无意义,因为问题仅在部署期间发生

我附上了我的服务器 cpu 利用率的屏幕截图,两个高峰都是在我执行上限部署时

我能想到的唯一解决方案是增加实例类型,但我想知道我还有哪些其他选项可以解决这个问题。任何帮助表示赞赏,在此先感谢

标签: amazon-ec2ruby-on-rails-5ubuntu-16.04capistrano

解决方案


If this is interim spike (only during installation) and you don't need high CPU during application usage, you may try t2.unlimited approach.

If t2.unlimited couldn't support your need, I think increasing the instance type is the only option left for you.


推荐阅读