• Ambari client


    在研究如何修改YARN的资源池的时候,发现了Hortwork在github上面开源了一个Ambari Client;
    不过使用groovy写的;但是没关系,在pom文件中添加了两个依赖之后,mvn package即可(groovy会编译生成jar文件)。不过我是把真个ambari的工程都下载到了本地;如果单独下载一个client,是否能够编译打包并没有尝试。
     1 <dependency>
     2     <groupId>org.codehaus.groovy</groupId>
     3     <artifactId>groovy-eclipse-compiler</artifactId>
     4     <version>2.9.2-01</version>
     5     <type>maven-plugin</type>
     6 </dependency>
     7 <dependency>
     8     <groupId>org.codehaus.groovy</groupId>
     9     <artifactId>groovy-eclipse-batch</artifactId>
    10     <version>2.4.3-01</version>
    11 </dependenc>

       java代码如下,我是尝试访问了一下yarn的schedule属性(资源池)。

     1 AmbariClient aClient = new AmbariClient("10.1.108.45", "8080", "admin", "admin");
     2 String typeName = "capacity-scheduler";
     3 String propertieName = "yarn.scheduler.capacity.root.unfunded.capacity";
     4 Map<String, Map<String, String>> map = aClient.getServiceConfigMap(typeName);
     5 for (String key : map.keySet()) {
     6     System.out.println("key: " + key + ";");
     7     Map<String, String> kvs = map.get(key);
     8     for (String name : kvs.keySet()) {
     9         if (name.equals(propertieName)) {
    10             System.out.println("name: " + name + "; value: " + kvs.get(name));
    11         }
    12     }
    13 }
    14 
    15 Map<String, String> mapUpdate = new HashMap<String, String>();
    16 
    17 mapUpdate.put(propertieName, "55");
    18 aClient.modifyConfiguration(typeName, mapUpdate);
  • 相关阅读:
    SQL一条语句统计记录总数及各状态数
    火狐登录国际账户
    HTML基础笔记
    增强for、lambda for、stream 遍历List 结束方法 or 跳过循环本次循环
    nginx
    前端问题总结
    Node.js
    Actuator
    ssh免密登录实现及Python实现
    【Mac渗透测试】之SQL注入Demo
  • 原文地址:https://www.cnblogs.com/xiashiwendao/p/8444682.html
Copyright © 2020-2023  润新知