Impala实践之十四:一次Impala节点故障记录(不能启动)

作者:JerryXia | 发表于 , 阅读 (42)
前言Impala集群中有两台机器的Impala Daemon不能正常启动,记录一下整个过程和解决方式。
过程阶段一Impala集群的状态开始飘红,有两台节点不能正常使用。
这时候发现集群里面有十多个任务正在运行,任务执行时间很长,情况非常不正常。
看了一下sql的内容,有几个sql的确比较耗资源。
阶段二此时,我先通知不要提交sql,给修复问题留点时间。
正在重启不健康的节点,群里面就有人继续提交了不合理的sql,还在问“为什么集群这么慢?”
此时集群的Hive Metastore Server服务也飘红了,重启过后几分钟继续变红。
Impala节点还重启失败

阶段三此时我的心情其实是挺糟糕的,大早上闹这一出,而且还不配合。因此再次强调了一下不要提交sql。然后集群稍微好一点了。
两台机器仍然故障,但是我的权限还不够,不能看到linux层面的错误日志。
因此决定暂时停掉两台Impala节点的使用,并在负载均衡上将两台节点排除,这样机器虽然少了两台,但是集群仍能正常使用。
阶段四现在主要的问题在于,为什么两台机器Impala节点不能启动,启动后可以再找错误原因。...阅读全文

记录:陈天直播(如何成为1个顶50个的A类程序员人才?)

作者:JerryXia | 发表于 , 阅读 (59)
前言周末抽空的时候听了一个infoQ公众号推的直播,属于直播后的录播,讲师是陈天,之前没听过,不过貌似讲的还可以,习惯性做个笔记。
工作是雇主提供的,而职业生涯是要自己打造的。好的雇主会为员工规划职业生涯,然而雇主规划的职业生涯有两个大问题:1) 屁股决定脑袋,双方的屁股不一定坐在同一张椅子上;2) 它并非为自己量身定制,二者的区别有如跟团游和自助游一样。
部分记录做好必须要做的事不想做,又必须做的事情。这是工作中的基石。
比如维护遗留系统,找一堆理由说维护不好:bug不复现,代码写的烂,没有足够的文档。
只有做好现在东西,老板才会对你满意,才能做更喜欢做的东西。
累积口碑。一些小的事情,一些帮助人的工具,都是积累更好的口碑。
抓住你想做的事情机会稍纵即逝,不要找太多借口:怕抹不开面子,听不懂英语。别人逃避的时候你要来抓住。
积极主动承担责任出现问题的时候主动去承担,主动地做一些东西,为别人提高工作效率。
不断地思考怎么给团队提高效率,怎么给团队带来更多的价值。
做别人不愿意做的事情比如写文档,别人都不喜欢的,自己来做一下。靠口口相传的资料,会丢失很多精髓。
多做一...阅读全文

Flume NG 基本架构及原理

作者:JerryXia | 发表于 , 阅读 (35)
总结参考1 介绍Flume NG是Cloudera提供的一个分布式、可靠、可用的系统,它能够将不同数据源的海量日志数据进行高效收集、聚合、移动,最后存储到一个中心化数据存储系统中。由原来的Flume OG到现在的Flume NG,进行了架构重构,并且现在NG版本完全不兼容原来的OG版本。经过架构重构后,Flume NG更像是一个轻量的小工具,非常简单,容易适应各种方式日志收集,并支持failover和负载均衡。
Flume 使用 java 编写,其需要运行在 Java1.6 或更高版本之上。
2 架构Flume的架构主要有一下几个核心概念:
Event:一个数据单元,带有一个可选的消息头Flow:Event从源点到达目的点的迁移的抽象Client:操作位于源点处的Event,将其发送到Flume AgentAgent:一个独立的Flume进程,包含组件Source、Channel、SinkSource:用来消费传递到该组件的EventChannel:中转Event的一个临时存储,保存有Source组件传递过来的EventSink:从Channel中读取并移除Event,将Even...阅读全文

Flume NG 编程实践

作者:JerryXia | 发表于 , 阅读 (38)
前言Flume已经自带了几个比较常用的source,但是在特定情况下还是有一些需求不能满足,因此需要特定开发的程序。
我们在使用的过程中,遇到了遇到对source和sink开发的情况,因此下面以这两个为例解释一下。
我们的需求主要是功能方面的,因此只写了source和sink的程序,没有对channal端没有做开发,直接用了file channal,之前看过美团对flume的使用,感觉对channal的定制开发还是不错的,感兴趣的可以参考一下。
定制SourceSimple Source Example下面是一个PollableSource的简单例子,从官网copy下来的。
主要就是configure、start、stop和process,里面的注释还是挺清晰的。
public class MySource extends AbstractSource implements Configurable, PollableSource {private String myProp;@Overridepublic void configure(Context context) {S...阅读全文