【问题标题】:ambari + API syntax in order to change the parameters of the ambari servicesambari + API 语法以更改 ambari 服务的参数
【发布时间】:2017-08-08 16:12:29
【问题描述】:

在 Ambari 集群 GUI(版本 2.5.0.3)中,每个服务都有配置按钮

当我们点击配置按钮时,我们可以看到所有相关参数及其值的列表

例如 YARN 服务具有参数 - 最小容器大小(内存),以 MB 为单位

当然,我们可以从 ambari GUI 中更改参数的值……

但我们希望通过 bash 脚本下的 API 命令自动更改值

我在 google 中搜索了一些关于更改参数下的值的 API 的信息,但没有成功

我会很高兴得到有关此的答案,

【问题讨论】:

    标签: linux api hadoop ambari bigdata


    【解决方案1】:

    以下是使用 REST API 更新服务配置的步骤。

    • 使用下面的 url 找到你的集群名称,如果你不知道集群名称,它需要在下面的步骤 - http://<AMBARI-SERVER>:8080/api/v1/clusters/
    • 找到属性名称,从集群配置中输入可以使用url访问的json,替换为上述步骤中的集群名称-http://<AMBARI-SERVER>:8080/api/v1/clusters/<CLUSTER_NAME>
    • 假设我想更新 YARN 节点管理器属性yarn.nodemanager.resource.memory-mb,创建一个 json 文件如下 -

    newconfigs.json

    {
      "Clusters": {
        "desired_config": {
          "type": "yarn-site",
          "tag": "version1502226523283",
          "properties": {
            "yarn.nodemanager.resource.memory-mb": "200000"
          }
        }
      }
    }
    

    标签号应该是唯一的 - 只需给出一些随机数,您可以使用以下命令在 Ambari 中更新此配置。下面的 API 使用 REST - PUT 方法。

    curl -H "X-Requested-By: ambari" -X PUT -u admin:admin -d @newconfigs.json http://<AMBARI-SERVER>:8080/api/v1/clusters/<CLUSTER_NAME>

    请参阅下面的 ambari 官方 REST api 文档了解更多详细信息。

    https://github.com/apache/ambari/blob/trunk/ambari-server/docs/api/v1/configuration.md

    【讨论】:

    • yarn.nodemanager.resource.memory-mb 是 YARN 服务中的真正参数? (我只是问,因为在配置下我找不到这个参数
    • 相关服务是否可以通过API打印config下的所有参数?
    • 您可以使用命令打印所有配置参数 - curl -H "X-Requested-By: ambari" -u admin:admin http://:8080/api/v1 /clusters/ ,我在答案的第一部分提到了这一点
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多