如何在 hadoop worker 机器之间同步配置

How to sync configuration between hadoop worker machines

我们有一个巨大的hadoop集群,我们安装了一个协调器preso节点 和 850 个 presto worker 节点。现在我们想更改文件中的值 - config.properties 但这应该对所有工作人员完成!

所以在

  /opt/DBtasks/presto/presto-server-0.216/etc

文件是这样的

[root@worker01 etc]# more config.properties
#
coordinator=false
http-server.http.port=8008
query.max-memory=50GB
query.max-memory-per-node=1GB
query.max-total-memory-per-node=2GB
discovery.uri=http://master01.sys76.com:8008 

我们想把它改成

coordinator=false
http-server.http.port=8008
query.max-memory=500GB
query.max-memory-per-node=5GB
query.max-total-memory-per-node=20GB
discovery.uri=http://master01.sys76.com:8008 

但这仅在第一个节点 - worker01 上完成,但我们还需要在所有工作节点上完成。好吧 - 我们可以通过 scp 将这个文件复制到所有其他工作人员,但不是在 root 受到限制的情况下,而是我想知道的是,如果 presto 已经考虑更优雅的方法来同步所有工作节点上的配置,正如我们设置后所知道的那样我们还需要重新启动 presto louncer 脚本的新值

dose presto 有解决办法吗?

我必须告诉我我的集群是受限制的 root ,所以我们不能通过 ssh 复制文件

Presto 无法同步配置。这是您需要在外部管理的东西,例如使用像 Ansible 这样的工具。还有项目命令行工具 presto-admin (https://github.com/prestosql/presto-admin) 可以帮助在集群中部署配置。

此外,如果您使用 public AWS 等云,Starburst (https://www.starburstdata.com/) 的商业解决方案也可以帮助管理配置。