amazon-ec2 - 如何重新启动托管在亚马逊 ECS 集群上的已停止的 RabbitMQ 服务?
问题描述
我在 Amazon ECS 集群上使用 EC2 托管了各种微服务。微服务在 docker 容器上运行。在这些服务中,我有一个已停止的 rabbitMQ 服务。不知道究竟是什么导致它停止。
请让我知道如何重新启动停止的服务rabbitMQ。我已经尝试重新启动 EBS,但问题似乎仍然存在。
解决方案
在 ECS 上启动任务有两种方式:使用runTask
API和使用service
API。前者是一次性开始(通常用于批处理作业等)。如果容器(无论出于何种原因)停止,它将消失。后者是一种启动作为长期运行服务一部分的任务(一个或多个)的方法。你告诉 ECS 你要运行一个带有n
任务的服务,ECS 会一直保持n
任务运行(即如果一个或多个停止,ECS 将启动一个或多个任务来满足n
)。请注意,缺少强大的 EBS 集成,对于您的特定用例,您可能需要创建一个具有 1 个任务的服务并限制它在您预先安装 EBS 的 EC2 实例上运行(这将允许 ECS 重新启动任务并找到托管在主机上的 EBS 上的数据)。
推荐阅读
- stm32 - STM32F4077 未启动 PLL(未设置 PLLRDY 位)
- importerror - PyAudio导入错误:ImportError:DLL加载失败:找不到指定的模块
- android-studio - 我在 android studio 上运行默认的颤振代码,这个错误出现了关于许可协议的内容
- javascript - 当另一个元素在视图中时更改一个元素的 CSS
- java - 使用在 LINUX 中运行的 windows 换行符生成 xml 签名
- javascript - 使用 apache 之类的 Web 服务器在线导出我的本地主机服务器(节点 js)
- python-3.x - 运行 opencv 示例时出现“功能/功能未实现”错误
- c# - foreach 循环仅获取最后一条记录到 gridview c# asp.net
- node-opcua - 使用“AddIn”引用在命名空间中添加一个对象
- tensorflow - 在 IPU 模型上运行 TensorFlow 程序会引发“非法指令(核心转储)”错误