首页 > 解决方案 > 如何重新启动托管在亚马逊 ECS 集群上的已停止的 RabbitMQ 服务?

问题描述

我在 Amazon ECS 集群上使用 EC2 托管了各种微服务。微服务在 docker 容器上运行。在这些服务中,我有一个已停止的 rabbitMQ 服务。不知道究竟是什么导致它停止。

在此处输入图像描述

请让我知道如何重新启动停止的服务rabbitMQ。我已经尝试重新启动 EBS,但问题似乎仍然存在。

标签: amazon-ec2rabbitmqamazon-ecsamazon-ebs

解决方案


在 ECS 上启动任务有两种方式:使用runTaskAPI使用serviceAPI。前者是一次性开始(通常用于批处理作业等)。如果容器(无论出于何种原因)停止,它将消失。后者是一种启动作为长期运行服务一部分的任务(一个或多个)的方法。你告诉 ECS 你要运行一个带有n任务的服务,ECS 会一直保持n任务运行(即如果一个或多个停止,ECS 将启动一个或多个任务来满足n)。请注意,缺少强大的 EBS 集成,对于您的特定用例,您可能需要创建一个具有 1 个任务的服务并限制它在您预先安装 EBS 的 EC2 实例上运行(这将允许 ECS 重新启动任务并找到托管在主机上的 EBS 上的数据)。


推荐阅读