Ambari和YARN的Capacity调度器,安装过程
用Spark测试YARN的资源池,测试过程中发现很多时候爆资源不够;
于是添加机器,专门用于跑spark;首先是ssh不通,原来错把71的id_psa.put文件拷贝到64上面;后来ssh通了,ambaria安装成功了,但是在安装HDP的时候发现一个有一个组件找不到,rpclib-devel找不到,尽管hortonwork官网上面告诉可以在centos7的base景象中能够找到,但是其实没有,可能我本地的镜像不是那个最大的镜像?反正需要自己安装,还好之前已经备好了。拿来用就可以了。
安装了spark,但是发现nodemanager总是死,翻看日志:
Cannot load filesystem: java.util.ServiceConfigurationError: org.apache.hadoop.fs.FileSystem: Provider org.apache.hadoop.hdfs.web.WebHdfsFileSystem could not be instantiated
java.lang.NoClassDefFoundError: Could not initialize class sun.util.calendar.ZoneInfoFile
Cannot
load filesystem: java.util.ServiceConfigurationError:
org.apache.hadoop.fs.FileSystem: Provider
org.apache.hadoop.hdfs.web.SWebHdfsFileSystem could not be instantiated
... ...
java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.jackson.map.SerializationConfig
貌似一个Hdfs的的问题?大神坑有一个,从log日志看不到问题,上面这个问题,google都没有解得。后来在敲hadoop fs -ls /的时候,发现了另外一个错误:
java.lang.Error: java.io.FileNotFoundException: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64/jre/lib/tzdb.dat (No such file or directory),tzdb.dat是一个jre链接文件,如下:
lrwxrwxrwx 1 root root 30 Aug 30 13:35 tzdb.dat -> /usr/share/javazi-1.8/tzdb.dat
因为这个jdk是从73机器上面直接考过来的,但是链接文件的链接地址并没有考,所以会爆这个异常,然后把tzdb(从命名来看这是一个和时区相关的文件,tz,timezone之意)拷贝到64的机器之后,问题解决。这个说明了最好是同意安装一下jdk,不要用系统默认的Open JDK,因为可能因为路径,版本不同导致一系列问题。
YARN的Capacity Scheduler的权限总是没有配置上,于是我参考了一下Cloudera的Fair Schedule(Resource Pool),发现他的权限控制其实是需要打开的,就是点击Resouce Pool里面的“Everyone access”, 里面提示默认yarn.admin.acl是*,只有指定具体用户才能够配置其下属的节点,这意味如果root用户是*,那么的leaf节点配啥都没有用;而且在google的时候顺藤摸瓜的查找到了打开权限其实还是需要 yarn.acl.enabled设置为true(在Resource Manager相关配置中)。
简单总结一下,配置YARN的权限:
1. yarn.acl.enabled需要设置为true;
2. 必须配置root队列权限,可以配置一个空格" ",代表拒绝所有的用户;只有这样,下属队列权限才有意义;
另外,想要测试权限是否可用,只要看spark在提交阶段是否能够check住即可,不需要太往后执行,只要看到那一大长串,一定就是权限通过:
YarnClientImpl: Submitted application application_1519697915722_0002
18/02/27 10:20:44 INFO SchedulerExtensionServices: Starting Yarn ...
18/02/27 10:20:45 INFO Client: Application report for application_1519697915722_0002 (state: ACCEPTED)
18/02/27 10:20:45 INFO Client:
client token: N/A
diagnostics: AM container is launched, waiting for AM container to Register with RM
ApplicationMaster host: N/A
ApplicationMaster RPC port: -1
queue: default
start time: 1519698044501
final status: UNDEFINED
tracking URL: http://hdp3:8088/proxy/application_1519697915722_0002/
user: hdfs
通过界面对Scheduler Capacity进行修改以及重启配,修改的文件以及调用的指令如下:
$ vi $HADOOP_CONF_DIR/capacity-scheduler.xml
$ $HADOOP_YARN_HOME/bin/yarn rmadmin -refreshQueues
Ambari和YARN的Capacity调度器,安装过程的更多相关文章
- YARN的capacity调度器主要配置分析
yarn中一个基本的调度单元是队列. yarn的内置调度器: 1.FIFO先进先出,一个的简单调度器,适合低负载集群.2.Capacity调度器,给不同队列(即用户或用户组)分配一个预期最小容量,在每 ...
- 大数据之Yarn——Capacity调度器概念以及配置
试想一下,你现在所在的公司有一个hadoop的集群.但是A项目组经常做一些定时的BI报表,B项目组则经常使用一些软件做一些临时需求.那么他们肯定会遇到同时提交任务的场景,这个时候到底如何分配资源满足这 ...
- Hadoop Capacity调度器概念及配置
在Yarn框架中,调度器是一块很重要的内容.有了合适的调度规则,就可以保证多个应用可以在同一时间有条不紊的工作.最原始的调度规则就是FIFO,即按照用户提交任务的时间来决定哪个任务先执行,但是这样很可 ...
- 2.1.FastDFS-单机拆分版-调度器安装配置
Centos610系列配置 我们在Centos610FastDFS单机模式-FastDFS安装 中已经完成了FastDFS的安装,接下来我们进行FastDFS调度器的安装. 1.找到FastDFS配置 ...
- Hadoop Yarn调度器的选择和使用
一.引言 Yarn在Hadoop的生态系统中担任了资源管理和任务调度的角色.在讨论其构造器之前先简单了解一下Yarn的架构. 上图是Yarn的基本架构,其中ResourceManager是整个架构的核 ...
- hadoop之 Yarn 调度器Scheduler详解
概述 集群资源是非常有限的,在多用户.多任务环境下,需要有一个协调者,来保证在有限资源或业务约束下有序调度任务,YARN资源调度器就是这个协调者. YARN调度器有多种实现,自带的调度器为Capaci ...
- Yarn 调度器Scheduler详解
理想情况下,我们应用对Yarn资源的请求应该立刻得到满足,但现实情况资源往往是有限的,特别是在一个很繁忙的集群,一个应用资源的请求经常需要等待一段时间才能的到相应的资源.在Yarn中,负责给应用分配资 ...
- 第1节 yarn:14、yarn集群当中的三种调度器
yarn当中的调度器介绍: 第一种调度器:FIFO Scheduler (队列调度器) 把应用按提交的顺序排成一个队列,这是一个先进先出队列,在进行资源分配的时候,先给队列中最头上的应用进行分配资源 ...
- YARN调度器(Scheduler)详解
理想情况下,我们应用对Yarn资源的请求应该立刻得到满足,但现实情况资源往往是有限的,特别是在一个很繁忙的集群,一个应用资源的请求经常需要等待一段时间才能的到相应的资源.在Yarn中,负责给应用分配资 ...
随机推荐
- Spring_Bean 之间的关系
beans-relation.xml <?xml version="1.0" encoding="UTF-8"?><beans xmlns=& ...
- java 枚举类型 enum
在java SE5中添加了枚举类型,即enum关键字.在这之前,当你需要创建一个整形常量集时,但是这些枚举值并不会必然的将其自身的取值限制在这个常量集的范围之内,因此这样做的显得不安全,也不方便使用. ...
- js进阶---12-10、jquery绑定事件和解绑事件是什么
js进阶---12-10.jquery绑定事件和解绑事件是什么 一.总结 一句话总结:on和off. 1.jquery如何给元素绑定事件? on方法 22 $('#btn1').on('click', ...
- Mybatis输入和输出映射(#{}和${}的区别)
#{}占位符 ...
- TCP/UDP编程步骤和区别
一. 概念解析 套接字:一种特殊的文件描述符.一头指向套接字地址(用户),一头指向套接字结构(内核). 套接字结构:由内核维持的一种数据结构,可通过套接字来操作. 套接字地址:ip和port. 二. ...
- 019对象——对象 method_exists property_exists instanceof
<?php /** * 19 对象 method_exists property_exists instanceof */ //method_exists() 判断方法是否存在,第一个参数对象或 ...
- Could not publish server configuration for Tomcat v6.0 Server at localhost.错误问题解决
经常在使用tomcat服务器的时候 总会发生一些莫名其妙的错误. 就像下面这个错误: 在配置文件中存在多个/MyWeb的配置,导致不能发布服务. 错误信息: Could not publish ser ...
- LeetCode OJ:Reverse Linked List II(反转链表II)
Reverse a linked list from position m to n. Do it in-place and in one-pass. For example:Given 1-> ...
- Android中SQLite介绍
现在的主流移动设备像Android.iPhone等都使用SQLite作为复杂数据的存储引擎,在我们为移动设备开发应用程序时,也许就要使用到SQLite来存储我们大量的数据,所以我们就需要掌握移动设备上 ...
- react-hooks: custom hooks
memberEntitiy: export interface MemberEntity { id: number; name: string; code: string; } const useMe ...