presto - presto + 如何管理 presto 服务器停止/启动/状态操作
问题描述
我们在 Linux redhat 7.2 版本上安装了以下 presto 集群
presto 最新版本 - 0.216
1 名 presto 协调员
231 名 presto 工人
在每台工作机器上,我们可以使用以下命令来验证状态
/app/presto/presto-server-0.216/bin/launcher status
Running as 61824
并且也停止/开始作为以下
/app/presto/presto-server-0.216/bin/launcher stop
/app/presto/presto-server-0.216/bin/launcher start
我还在谷歌中搜索可以管理 presto 状态/停止/启动的 UI,但没有看到任何关于此的内容
presto 没有附带一些可以显示集群状态并在需要时执行停止/启动操作的用户界面,这很奇怪
众所周知,presto 的唯一用户界面是显示状态并且没有停止/启动等操作
在上面的示例屏幕中,我们可以看到活动的 presto 工作人员只有 5 来自 231 ,但是这个 UI 不支持停止/启动操作,并且不显示哪个工作人员 presto 不活动
那么我们能做些什么呢?
访问每台工作机器并查看 presto 是向上还是向下,这是一个非常糟糕的主意
为什么 presto 没有可以执行停止/启动操作的集中式 UI?
例如我们对 UI 的期望,- 部分列表
. . .
解决方案
Presto 当前使用发现服务,其中工作人员宣布自己加入集群,因此如果工作程序节点未注册,协调器或发现服务器无法知道其存在和/或重新启动它。
在 Qubole,我们在 presto master 旁边使用一个外部服务来跟踪在特定时间间隔内未注册到发现服务的节点。该服务负责从集群中删除此类节点。我们要做的另一件事是在每个 presto 工作节点上使用 monit 服务,以确保 presto 服务器在出现故障时重新启动。
您可能需要为集群管理做类似的事情,因为 presto 现在不提供它。
推荐阅读
- python - 任务不删除消息,discord.py
- java - 使用 Microsoft Graph SDK for java 将大文件上传到带有元数据的 SharePoint
- node.js - Codelyzer 需要 Angular 9 而不是 Angular 10
- react-native - 如何在使用 connect() 和 NavigationContainer 时访问 redux 操作
- c# - WPF中的FPS计数器
- java - 如果存在则重命名文件而不是覆盖它
- regex - 在 pyspark 数据框列中的字母数字文本中查找两个字母之间的数字
- excel - 在数据透视表中按年和月分组日期
- android - 使用 firebase 云消息发送通知有时会发送带有图像的通知,有时则不会
- python - 使用python将XML文件插入postgresql表