我最近注意到,我在AWS Elasticbeanstalk设置中的laravel项目表现得很奇怪。服务器将在几分钟后关闭。在t3.small中,它每50分钟下降一次。运行状况选项卡显示内存已耗尽或其他原因。它将“严重”持续约5-10分钟,然后不做任何事情就返回。基本上只是整个监控中的锯齿。在t3.nano中,它大约每5分钟下降一次。
以下是我做过的一些事情,我怀疑是原因
以下是一些事实:
以下是我对日志的观察 -有一个与Apache有关的“内部虚拟连接”。记录时间与发生停机的时间相同。
我尝试了日志中的所有提示,包括在cronjob上弄乱了不同的设置以及其他可能的原因。我也曾尝试问过我的同龄人,但之前没有人遇到这样的错误。实际上,他们测试了我的cronjob,并且对他们来说工作正常。
我在/ var / log / httpd / error_log中也有此错误
[Fri Nov 23 19:07:35.208657 2018] [suexec:notice] [pid 3142] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Fri Nov 23 19:07:35.228633 2018] [http2:warn] [pid 3142] AH10034: The mpm module (prefork.c) is not supported by mod_http2. The mpm determines how things are processed in your server. HTTP/2 has more demands in this regard and the currently selected mpm will just not do. This is an advisory warning. Your server will continue to work, but the HTTP/2 protocol will be inactive.
[Fri Nov 23 19:07:35.228644 2018] [http2:warn] [pid 3142] AH02951: mod_ssl does not seem to be enabled
[Fri Nov 23 19:07:35.229188 2018] [lbmethod_heartbeat:notice] [pid 3142] AH02282: No slotmem from mod_heartmonitor
[Fri Nov 23 19:07:35.267841 2018] [mpm_prefork:notice] [pid 3142] AH00163: Apache/2.4.34 (Amazon) configured -- resuming normal operations
[Fri Nov 23 19:07:35.267860 2018] [core:notice] [pid 3142] AH00094: Command line: '/usr/sbin/httpd -D FOR
答案 0 :(得分:0)
在这种情况下,t2 / t3。* EC2实例的CPU信用和节流限制令人吃惊。 1 CPU积分可让(t2 / t3)实例在100%CPU上运行1分钟。对于运行中的实例,所有t2 / t3。*实例CPU信用均以每小时固定的速率进行补充(该速率取决于实例类)。因此,长时间的负载(超过特定阈值)将逐渐耗尽这些信用,导致您处于上述状态。
建议使用更高级别的实例(m3.medium及更高版本)来持续维持生产工作负载。将负载均衡器放置在多个实例的前面也是保持可用性的好方法。
有关同一内容的更多信息,请参见:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-credits-baseline-concepts.html