如何使用 blueprint.json 文件重新配置 Ambari 服务值

How to reconfigure Ambari services values with blueprint.json file

我们有许多 Ambari LAB 集群 - Apache Ambari 版本 2.5.0.3,而在 Linux redhat 机器上安装了 ambari 代理

我的目标是找到一种方法来更新服务的值,在所有 Ambari 集群上,通过自动化过程

我们到目前为止所做的是获取每个 ambari 集群并更改服务值 - 但这需要很多时间

所以如果我们有 diff 25 个 ambari LAB 集群,那么我们需要访问每个 ambari 集群并更改值,这非常累人,因为我们有很多值要更改...

但是我们有一个新的想法来自动化这个过程

我们的想法是从一些 ambari 集群文件生成一个新的 blueprint.json,如下所示:

curl -H "X-Requested-By: ambari" -X GET -u admin:admin http://{ambari_host}:8080/api/v1/clusters/{Cluster_name}\?format\=blueprint >  blueprint.json

然后 update/change 新 blueprint.json 文件中的值

最后 upload/push 所有集群上的 json 文件

最大的问题是:

如何在 ambari 集群上上传新的 blueprint.json 文件?

是否可能出现这种情况?

要在新集群中上传蓝图文件,可以使用以下命令。

curl -H "X-Requested-By: ambari" --data @blueprint.json -X POST -u admin:admin http://<HOSTNAME>:8080/api/v1/blueprints/<BLUEPRINT_NAME>

在命令中更新 <blueprintfile.json><BLUEPRINT_NAME>