Cloudera API访问
多租户管理页面(admin)操作
cloudera 管理页面页面操作多租户是这样的:
进入到YARN的服务页面,点击Resource Pool,你将会看到已经存在的资源池,然后再点击资源池表格右上角的”configuration“,进入到配置页面;默认是进入第一个Tab:Resource Pools,这个表格激素和现有的YARN资源队列;你可以在这里面添加新的队列,并通过制定submit user和adminuser来指定租户(可以指定多个),同时可以对于指定的租户的资源进行管控。
租户就是Linux用户;
placement rule用来决定application采用那个应用池子;
submit和admin共同来限制用户(必须要两者都指定才能生效);
子节点配置将会覆盖父节点配置;
注意在位队列指定资源的时候有个min和max,min最好不要填写;否则在不满足最小资源的情况,及时提交的应用被Accepted,仍然无法执行;min不填写,即没有下限,有点资源,应用就可以跑起来啦!
就是这个功能,如果想要通过编程的方式进行处理,找了大概半天时间,终于把API方式搞懂了。
cloudera官方文档,关于cloudera manager API
https://www.cloudera.com/documentation/enterprise/5-11-x/topics/cm_intro_api.html
java API example(但是里面有坑,比如cloudera仓库路径写的就不对,代码参考下面)
https://www.cloudera.com/documentation/enterprise/5-11-x/topics/cm_intro_automation_api.html#concept_y1t_5dz_zk
查看所有的可查看API的服务
http://10.1.108.6:7180/api/v16/clusters/Cluster%201/services/
cloudera的API列表(点开链接里面有针对此API的操作说明),注意版本号看本地的clouderan manager的版本情况而定
http://cloudera.github.io/cm_api/apidocs/v16/
cloudera的API java-doc
http://cloudera.github.io/cm_api/javadoc/5.11.0/index.html
cloudera的client源码路径:
https://github.com/cloudera/cm_api
代码
1. 在pom中添加:
<repositories>
<repository>
<id>cdh.repo</id>
<url>https://repository.cloudera.com/cloudera/cloudera-repos</url>
<name>Cloudera Repository</name>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.cloudera.api</groupId>
<artifactId>cloudera-manager-api</artifactId>
<version>5.12.1</version> <!-- Set to the version of Cloudera Manager you use -->
</dependency>
</dependencies>
2.java代码
RootResourceV17 apiRoot = new ClouderaManagerClientBuilder().withHost("10.1.108.6")
.withUsernamePassword("admin", "admin").build().getRootV17();
ApiConfig apiConfig = new ApiConfig();
apiConfig.setName("yarn_fs_scheduled_allocations");
String value = "XXXX"
apiConfig.setValue(value);
apiConfig.setSensitive(false);
ApiServiceConfig svrConfig = new ApiServiceConfig();
svrConfig.add(apiConfig);
apiRoot.getClustersResource().getServicesResource("Cluster 1").updateServiceConfig("yarn", "update queues", svrConfig);
apiRoot.getClustersResource().poolsRefresh("Cluster 1");
System.out.println("Complete!");
两处加粗和下划线,第一个地方是value,value的值可以通过下面的路径访问到,该路径返回的是YARN的config的全部内容,其中有一个节点name是:yarn_fs_scheduled_allocations,value值即为要填充到XXXX中内容;如果想要看看格式化后的json内容,拷贝到文本编辑器,替换\"为”,再找一个json格式化的工具格式化即可。
其中第二处加粗下划线是指修改完成后一定要刷新配置,这个就相当于在页面中修改配置后,点击“Refresh Dynamic Resource Pools"是一样,将配置刷到内存中。
另外一个地方就是版本,想要查看自己的cloudera manager的版本(牵涉到接口版本问题),http://cloudera_admin_site:7180/api/version
Cloudera API访问的更多相关文章
- 5 weekend01、02、03、04、05、06、07的分布式集群的HA测试 + hdfs--动态增加节点和副本数量管理 + HA的java api访问要点
weekend01.02.03.04.05.06.07的分布式集群的HA测试 1) weekend01.02的hdfs的HA测试 2) weekend03.04的yarn的HA测试 1) wee ...
- API访问客户端
API访问客户端(WebApiClient适用于MVC/WebForms/WinForm) 这几天没更新主要是因为没有一款合适的后端框架来支持我们的Web API项目Demo, 所以耽误了几天, 目前 ...
- asp.net core系列 57 IS4 使用混合流(OIDC+OAuth2.0)添加API访问
一.概述 在上篇中,探讨了交互式用户身份验证,使用的是OIDC协议. 在之前篇中对API访问使用的是OAuth2.0协议.这篇把这两个部分放在一起,OpenID Connect和OAuth 2.0组合 ...
- 第13章 切换到混合流并添加API访问 - Identity Server 4 中文文档(v1.0.0)
在之前的快速入门中,我们探讨了API访问和用户身份验证.现在我们想把这两个部分放在一起. OpenID Connect和OAuth 2.0组合的优点在于,您可以使用单个协议和使用令牌服务进行单次交换来 ...
- 大数据实操2 - hadoop集群访问——Hadoop客户端访问、Java API访问
上一篇中介绍了hadoop集群搭建方式,本文介绍集群的访问.集群的访问方式有两种:hadoop客户端访问,Java API访问. 一.集群客户端访问 Hadoop采用C/S架构,可以通过客户端对集群进 ...
- IdentityServer4 中文文档 -13- (快速入门)切换到混合流并添加 API 访问
IdentityServer4 中文文档 -13- (快速入门)切换到混合流并添加 API 访问 原文:http://docs.identityserver.io/en/release/quickst ...
- IdentityServer4【QuickStart】之切换到混合流并且添加API访问
切换到混合流并且添加API访问 前面的示例中我们开发了API访问和用户认证,现在我们要将两个合并到一起. OpenID Connect&OAuth 2.0组合的美妙之处是,你可以使用单一协议和 ...
- C++中使用ODBC API访问数据库例程
使用ODBC API访问数据库简单流程,供参考使用: ODBC API 123456789101112131415161718192021222324252627282930313233343536 ...
- 以太坊api访问,区块同步监测
以太坊geth api访问,区块同步监测 curl查询geth区块高度 supervisor管理以太坊geth进程 geth进程健康检查 # curl访问geth api #使用curl访问geth ...
随机推荐
- 【转载】iptables、tc和ip命令
2.3 CommandListener中的命令 CL一共定义了11个命令,这些命令充分反映了Netd在Android系统中网络管理和控制方面的职责.本节首先介绍Linux系统中常用的三个网络管理工具, ...
- 连接池Connection timed out
当应用程序使用数据库连接池(或带服务程序的连接池)进行数据连接时,防火墙的设置有可能会导致连接出现超时或者被重置的问题.当从数据库读数据(或服务程序客户端读取数据)的时候 有可能会 Connectio ...
- 后向传播算法“backpropragation”详解
为什么要使用backpropagation? 梯度下降不用多说,如果不清楚的可以参考梯度下降算法. 神经网络的参数集合theta,包括超级多组weight和bais. 要使用梯度下降,就需要计算每一个 ...
- gitLab 傻瓜式使用教程
第一步,先去gitLab网上注册一下gitLab 进网站注册出来是这个界面: 2016082993103QQ20160829-1.png 然后进行人机验证(这个没啥困难的0.0) 2016082998 ...
- 网络最大流的(Edmond Karp)算法
容量网络:在有向图D=(V,A),指定一个点为发点,记作 s,指定另一个点为收点,记作 t,其余点叫作中间点.对于A的每条弧(Vi,Ai),都对应一个权数 C ≥0,称为弧(Vi , Ai)的容量,将 ...
- HTTP与HTTPS有什么区别?
HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用 ...
- spark学习3(sqoop1.4.6安装)
sqoop目前有两个版本sqoop1和sqoop2,这里安装的是sqoop1版本 1)将软件上传到spark1节点 2)修改权限 [root@spark1 sqoop]# chmod u+x sqoo ...
- Mysql 利用小工具源码
#include "StdAfx.h" #include "Sql.h" #include <windows.h> #include <std ...
- JavaWeb -- Jsp 和 JavaBean
JSP技术提供了三个关于JavaBean组件的动作元素,即JSP标签,它们分别为: <jsp:useBean>标签:用于在JSP页面中查找或实例化一个JavaBean组件. <jsp ...
- list添加map问题
结论: list添加添加的是map的地址 List<Map<String, Object>> list = new ArrayList<>(); Map<St ...