我有两个 ec2 实例,它们在其上运行不同的应用程序,这些应用程序通过 CloudFront 提供服务。今晚,两人同时失去了反应。任何通过 CloudFront 联系应用程序的尝试都会以 504 结束。
我尝试过:
- 重新启动实例;
- 完全停止它们,重新启动;
- 通过控制台上的 ssh 连接 - 连接超时。
- 使用 AWS 控制台通过 ssh 连接 - 它停留在“正在建立连接...”
- 重新部署应用程序(通过 CodeDeploy)- 部署成功,但 Web 应用程序仍然不可用。
我发现两者都使用了很少的 CPU。我在其中一个实例上运行的进程正在运行,因为我在 CloudWatch 中看到新的日志条目。另请参阅两个 Web 应用程序均已成功启动。
我不知道还能做什么来解决这个问题。我如何判断是我做了什么,还是亚马逊出了问题?
ssh 和 http 服务均无响应则表明两者均已损坏,或者您的 IP 网络已损坏。以不需要 IP 的方式检查这些实例。
启动您自己的运行状况监控,检查 ssh 和 http 端口是否可访问。来自同一子网中的本地主机和来自互联网的外部主机。不需要花哨的东西,只要你能告诉分钟 22/tcp 是否可达即可。
尝试使用文本控制台来检查网络配置。AWS EC2 具有适用于某些实例类型的串行控制台。
没有外壳会让事情变得困难。在其他地方恢复问题实例的备份,并以这种方式检查日志文件。
从头开始重建并查看问题是否仍然存在。建立与生产隔离的测试环境,但使用相同的基础架构模板和应用程序部署。可能在不同的地区,尽管这会带来变数。