通过Ambari Rest API获取hadoop组件配置

Ambari UI上可以很方便地查看及修改hadoop组件的配置.在Java代码中通过client访问,往往需要通过设置环境变量导入相关的配置, 如果能通过Ambari Rest API来获取组件配置,就可以免去手动配置的麻烦.

由于ambari对配置进行了版本管理,所以获取hadoop组件配置需要两个步骤

  1. 先取得当前配置的version tag
curl -k -s -u admin:admin "http://localhost:8080/api/v1/clusters/?fields=Clusters/desired_configs"
  1. 然后用version tag来读取配置信息(如hdfs-site),目前不知如何取到单项配置的内容.只能对返回的json进行处理拿到需要的单项配置.
curl -k -s -u admin:admin "http://localhost:8080/api/v1/clusters//configurations?type=hdfs-site&tag=version1496912618783"

此外, ambari提供了shell脚本来获取、修改配置, 脚本内部实际上是调用了rest api,因此也可以从脚本中学习rest api的使用方法.

/var/lib/ambari-server/resources/scripts/configs.sh

参考:

how to fetch & update configurations using the Ambari API

你可能感兴趣的:(通过Ambari Rest API获取hadoop组件配置)