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

时间:2019-03-29 12:15:27

标签: linux hadoop redhat presto

我们有巨大的hadoop集群,并安装了一个协调器preso节点 和850个presto工人节点。现在我们要更改文件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上完成,但是我们也需要在所有worker上执行。好吧-我们可以通过scp将此文件复制到所有其他工作程序,但是如果root受限制但我想知道的话,则可以,如果前提是已经考虑了一种更优雅的方法来同步所有工作程序节点上的配置,那么我们就可以知道新值,我们还需要重新启动presto louncer脚本

剂量对此有解决办法吗?

我必须告诉我集群是受限根目录,因此我们无法通过ssh复制文件

1 个答案:

答案 0 :(得分:1)

Presto无法同步配置。这是您需要在外部进行管理的内容使用Ansible之类的工具。还有一个项目命令行工具presto-admin(https://github.com/prestosql/presto-admin),可以帮助在整个群集中部署配置。

此外,如果您使用的是AWS之类的公共云,则有来自Starburst(https://www.starburstdata.com/)的商业解决方案,也可以帮助管理配置。