yarn开启日志归集功能,除了配置之外 yarn.log-aggregation-enable=true 还要检查/tmp/logs目录是否存在以及权限,尤其是在开启kerberos之后,有些目录可能不能自动创建成功,需要手工创建: $ hdfs dfs -mkdir /tmp$ hdfs dfs -chmod 777 /tmp 每个应用的hdfs日志目录: /tmp/logs/$user/logs/$applicationId…
前言 之前也分享过很多工作中踩坑的经验: 一个线上问题的思考:Eureka注册中心集群如何实现客户端请求负载及故障转移? [原创]经验分享:一个Content-Length引发的血案(almost....) 今天再来分享工作中一个真实的案例: 商品评价列表页,显示每条用户的评价详情,为了保护用户隐私,要求显示用户昵称时只能显示第一位和最后一位,其他的用※代替. 例如输入:,输出:*** 看似一个平淡无奇的需求,我也没有太在意.服务端将用户的评论信息存储到db中,评价列表接口就是将数据库中该商品的…
通过oozie job id可以查看流程详细信息,命令如下: oozie job -info 0012077-180830142722522-oozie-hado-W 流程详细信息如下: Job ID : 0012077-180830142722522-oozie-hado-W --------------------------------------------------------------------------------------------------------------…
提前安装好elk(elasticsearch.logstach.kibana) 一 启动logstash $LOGSTASH_HOME默认位于/usr/share/logstash或/opt/logstash 1 nginx日志使用默认格式 log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer"…
在yarn中的application详情页面 http://resourcemanager/cluster/app/$applicationId 或者通过application命令 yarn application -status $applicationId 只能看到应用启动以来占用的资源*时间统计,比如: Aggregate Resource Allocation : 3962853 MB-seconds, 1466 vcore-seconds 到处都找不到这个应用当前实时的资源占用情况,比…
spark 2.1.1 系统中希望监控spark on yarn任务的执行进度,但是监控过程发现提交任务之后执行进度总是10%,直到执行成功或者失败,进度会突然变为100%,很神奇, 下面看spark on yarn任务提交过程: spark on yarn提交任务时会把mainClass修改为Client childMainClass = "org.apache.spark.deploy.yarn.Client" spark-submit过程详见:https://www.cnblog…
spark on yarn通过--deploy-mode cluster提交任务之后,应用已经在yarn上执行了,但是spark-submit提交进程还在,直到应用执行结束,提交进程才会退出,有时这会很不方便,并且不注意的话还会占用很多资源,比如提交spark streaming应用: 最近发现spark里有一个配置可以修改这种行为,提交任务的时候加长一个conf就可以 --conf spark.yarn.submit.waitAppCompletion=false org.apache.spa…
yarn中有一个比较重要的配置yarn.nodemanager.local-dirs,如果配置的不好,在饱和状态运行下集群会出现很多问题:1 默认配置${hadoop.tmp.dir}/nm-local-dir,系统盘通常只有几百G,配置在这里会经常报磁盘空间不足的错误:2 配置到其中1个数据盘,比如/data0/,这个数据盘会经常没有响应,或者直接坏掉:3 正确的配置是配置到所有的数据盘,通常是12个,其实yarn的description写的很清楚 <property> <descri…
hdfs.yarn.hbase这些组件的master支持多个,实现自动主备切换,其中hdfs.hbase无论访问主master或者备master都可以正常访问页面,但是yarn比较特别,只有主master的页面可以访问,备master会返回Refresh,3s后重定向: 一种方式是提供两个域名,分别对应两个yarn的master,一旦有master切换,需要手工切换到另外一个,有没有更好的方式? 访问备master过程如下: curl http://standby_ip:8088/cluster…
hive执行sql提交到yarn上的任务名字是被处理过的,通常只能显示sql的前边一段和最后几个字符,这样就会带来一些问题: 1)相近时间提交了几个相近的sql,相互之间无法区分: 2)一个任务有问题,想看下这个任务具体执行的是什么?是谁的任务? 通过以下方法可以查看: 1)如果任务正在running,进入yarn的ApplicationMaster页面,进入job,点击configuration,右上角过滤框输入“hive.query.string”即可,如图: 2)如果任务已经结束,进入hi…