-
记录一个调试 pyspark2sql 访问 HDFS 透明加密的问题。访问源码如下,使用 pyspark2.1.3,基于 CDH 5.14.0 hive 1.1.0 + parquet,其中select的部分会访问 hdfs 加密区域。from pyspark.sql import SQLContext
from pyspark.sql import HiveContext, Row
from p
-
一分钟内部署jupyterlab + pyspark2 + hive,前提是spark2是可以在yarn上正常运行的。最近甲方打着滚的向乙方要求装 jupyterlab,然后还要用spark2,所以,也是没辙,谁让人家是金主爸爸呢。搁我自己是绝不想在生产集群里装jupyter的。Terminal潜在危险性还是有的,按说是不符合甲方的安全小组规定的,但是业务小组又哭闹说没有不行,就看上jupyter
-
耗时很长时间解决了一个spark in docker的问题,记录一下。这是个非常奇怪的问题,找遍谷歌都找不到答案,与其说是分析出来倒不如说是偶然发现。先介绍一下架构和环境。Z机器是docker的宿主机,在每个docker里面都跑了一个Zeppelin用作数据分析,之所以这样弄,是客户要求每个人的环境都必须是独立的。Zdocker假设是Z上面跑着zeppelin的运行的一个docker镜像。Zdoc
-
从这篇开始记录一下集群迁移的事情早先因为机房没地方,就已经开始规划集群搬机房的事情,最近终于开始动手了,我会把这次不停机迁移的过程遇到的主要问题和矛盾以及各种解决方法记录下来。集群规模说大不大,几百台,总容量30PB左右。Hadoop使用CDH 5.5.1加一些自定义patch的rpm打包编译版本。总的方案是集群不停机,在两个机房之间架设专线,旧机房decommission,拉到新机房recomm
-
最近做集群机房迁移,在旧机房和新机房之间接了根专线,做集群不停机搬迁,也就是跨机房,同时要新加百多台服务器,遇到几个问题,记录一下。旧集群的机器是centos 6, 新机房加的机器是centos 7。一、丢包问题在跨机房的时候,datanode显示很多Slow BlockReceiver的日志WARN org.apache.hadoop.hdfs.server.datanod
-
今天抽空解决了一个Hadoop集群的一个非常有意思的故障,之所有有意思,是这个故障既可以称之为故障,又不算是故障,说不算问题吧,作业跑的特慢,说算问题吧,作业不但都能跑出来,还没有任何报错,所以还比较难查。故障表象是一帮人嚷嚷作业太慢了,跑不动,但是基本上嚷嚷一会就能跑出来,但相对于原来还是慢。我看了下,确实比较慢,有些作业一个map要半小时,但不是所有作业都这样,部分作业就很快,没有什么规律可循
-
今天下午写了一会代码,然后帮同事解决了一个hbase相关的故障分析,定位了问题根源,觉得比较有代表性,记录一下。先说一下问题的发生与背景。这个故障其实是分为两个故障的,第一个比较简单,第二个相对复杂一些。同事写了一个HBase相关的测试代码,使用Hbase原生JavaAPI,编译打包后分别放在两台测试服务器测试,一台可以,另一台不可以。第一个故障是发生在两台测试服务器的:A服务器是正常连通的服务器
-
Zeppelin启用https过程和Hack内核以满足客户需求的记录。原因是这客户很有意思,该客户中国分公司的人为了验证内网安全性,从国外找了一个***测试小组对Zeppelin和其他产品进行***测试,结果发现Zeppelin主要俩问题,一个是在内网没用https,一个是zeppelin里面可以执行shell命令和python语句。其实这不算大问题,zeppelin本来就是干这个用的。但是***小组不
-
记录一下spark和pyspark在Zeppelin里面访问lzo文件报错的问题。由于甲方全球500强极度抠门,死活不愿意加服务器,然后接入的数据源又多,小集群很快就会被撑满,所以没办法,原始日志均采用lzo压缩存储。hadoop和spark都是采用正版Cloudera Manager部署,这方面没有太大问题。在命令行方式下,spark-shell是完全可以直接读取lzo的。但是在Zeppelin
-
Kerberos保护下的Hive排错记录,5月14日,Megadeth北京见。同事想在zeppelin里面使用Hive,这是在新的kerberos保护下的集群里第一次使用Hive,不幸的是,使用过程中还是出现了验证授权的问题,所以我不得不去排查问题。Hive的客户端服务器已经安装的hadoop-client,并且把所有需要的keytabs文件都放到了配置文件夹下且设置了正确的权限。但是仍然无法连接
-
之前为了练习英语用英文写的这个博客,然后被编辑置为转载了,所以想想还是翻译过来比较好。原文发表于 https://xianglei.tech 确实是我自己原创的。英文很烂,所以才需要练习。使用Cloudera Manager启用Kerberos安全增强的Hadoop集群(包括一步步安装和配置kerberos)以及kerberos基本原理目前我工作于AdMaster,某个全球五百强的大企业是我们的深
-
This is the first time I try to use english to write my blog, so don't jeer at the mistake of my grammar and spelling.Because of multi threaded drelephant will cause JobHistoryServer’s Loads very high
-
公司基础架构这边想提取慢作业和获悉资源浪费的情况,所以装个dr elephant看看。LinkIn开源的系统,可以对基于yarn的mr和spark作业进行性能分析和调优建议。DRE大部分基于java开发,spark监控部分使用scala开发,使用play堆栈式框架。这是一个类似Python里面Django的框架,基于java?scala?没太细了解,直接下来就能用,需要java1.8以上。prer
-
上个月通过email,帮朋友的朋友解决了一个Cloudera的Spark-SQL无法访问HBase做数据分析的问题,记录一下。
-
应了一个国内某电信运营商集群恢复的事,集群故障很严重,做了HA的集群Namenode挂掉了。具体过程不详,但是从受害者的只言片语中大概回顾一下历史的片段。Active的namenode元数据硬盘满了,满了,满了...上来第一句话就如雷贯耳。运维人员发现硬盘满了以后执行了对active namenode的元数据日志执行了 echo "" > edit_xxxx-xxxx...第二句话如五雷轰顶
-
以前很多业务都是用scribe做日志收集的支撑的,后来fb停止了对scribe的开发支持。而且scribe在机器上编译一次的代价太大了,各种坑,正好后来flume从1.3.0开始加入了对scribe的支持。就可以把原来scribe上面接入的数据转用flume收集了。虽然我很喜欢scribe,但是失去了官方支持毕竟还是很闹心的。agent.channels=c1
agent.channels.c1.
-
早期搭建Hadoop集群的时候,在做主机和IP解析的时候,通常的做法是写hosts文件,但是Hadoop集群大了以后做hosts文件很麻烦,每次加新的服务器都需要整个集群重新同步一次hosts文件,另外,如果在同一个域下面做两个集群,做distcp,也需要把两个集群的hosts文件全写完整并完全同步,很麻烦。那么,一劳永逸的办法就是做DNS。DNS我这边已经用了很长时间了,几年前为了学这个还专门买
-
Word Co-occurrence一直不知道该怎么正确翻译, 单词相似度?还是共生单词?还是单词的共生矩阵?这在统计里面是很常用的文本处理算法,用来度量一组文档集中所有出现频率最接近的词组.嗯,其实是上下文词组,不是单词.算是一个比较常用的算法,可以衍生出其他的统计算法.能用来做推荐,因为它能够提供的结果是"人们看了这个,也会看那个".比如做一些协同过滤之外的购物商品的推荐,信用卡的风险分析,或
-
Hadoop 2.2没怎么关注过,太新,bug太多。2.4出来以后关注了一些东西,比如2.4里面直接带了ResourceManager的高可用,这点比较吸引人。之前2.2没注意有没有,貌似是没有,然后CDH自己出了一个解决方案,这次2.4的更新直接自己带了,还不错,这样就全了,Namenode有HA和Federation,RM也有了HA,而且也可以通过ZKFC自动做故障切换。大概从2.4开始,Ha
-
记录一下在2.x里面不会很常见的报错。只是在测试集群中发生,生产集群大概很少有人会去重启Namenode吧,特别是做了HA的。场景是在2.x里做好了Namenode HA,以Namespace URI方式访问HDFS时,报错,然后两个Namenode貌似都是standby,然后历史任务服务器无法启动,HBase的Master也无法启动。其实这个故障很简单。2014-06-05 17:20
-
基于arm架构硬件的Hadoop HBase集群参加了首届科通芯城的硬蛋i未来硬件创新大赛,进入决赛,最后拿到了十佳项目。有奖杯为证。背景是FreeBSD的虚拟机关注我博客的人可能知道,其实早在去年年初的时候,就已经拿ARM架构的单片机构建了单机版的Hadoop。后来陆续又搞了几个单片机,逐渐搭起了集群。嵌入式linux还是挺好玩的。后来的集群加入了HBase和Hive,又陆续构建了OpenTSD
-
随着两会中间央视新闻天天说大数据,很多人纷纷开始关注大数据和Hadoop以及数据挖掘和数据可视化了,我现在创业,遇到很多传统数据行业往Hadoop上面去转型的公司和个人,提了很多问题,大多数问题还都是差不多的。所以我想整理一些,也可能是很多人都关注的问题。关于Hadoop版本的选择? 目前为止,作为半只脚迈进Hadoop大门的人,我建议大家还是
-
最近抛弃非ssh连接的hadoop集群部署方式了,还是回到了用ssh key 验证的方式上了。这里面就有些麻烦,每台机器都要上传公钥。恰恰我又是个很懒的人,所以写几个小脚本完成,只要在一台机器上面就可以做公钥的分发了。首先是生成ssh key脚本#!/bin/sh
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cp ~/.ssh/id_rsa.pub ~/.ss
-
很多人玩开发板用树莓派,树莓派的确很好,但是对于hadoop来说,内存有点小,只有512MB。所以我找了一圈,最后用的是国内一个开源硬件团队的产品叫CubieTruck。内存有2G,板载存储有8G,千兆网口,可以挂载2.5寸机械或SSD硬盘。先简述一下大体步骤。1. 刷系统,做系统由于CubieTruck(以下简称CT)默认系统安装的是安卓4.2,所以需要变更一下。换成ubuntu 的 linar
-
2014第一篇博文,将来也会逐步写成一个系列,新年新气象。将hadoop及其周边生态系统deb/rpm化对于自动化运维来说意义重大,建立好整个生态的rpm和deb然后再创建本地yum或者apt的源,可大大简化hadoop的部署和运维。实际上,cloudera和hortonworks都是这么做的。本来想把rpm和deb都写了,不过估计篇幅不够,还是分开吧,先从deb讲起。deb创建比较容易一些,不需
-
3月份的时候做了单机版的hadoop on arm的测试,最近又买了一个新的arm板子,就考虑把他们串起来组一个hadoop集群。而且由于产品更新换代的问题,硬件上是异构的。
基于arm架构单片机的hadoop服务器尝试
namenode是cubieboard一代,采用单核arm v7架构,1G内存,4G板载flash ROM
datanode采用cubietruck,双核armv7,2G内
-
从公司离职有几天了,今天回去看同事,想一起吃饭,没成想摊上大事了。说下午hadoop集群的机房停电了,然后集群就启动不了了,几个人从下午4点多折腾到8点多还没搞定,有几台服务器找不到硬盘,还有内网ping不通的。反正是有10来台服务器起不来datanode和tasktracker了。于是在原公司蹭了个饭,花了20分钟解决了一下。由于这几台服务器挂机,namenode没有达到有效数据块的阀值所以一直
-
记录一些Hive的优化点,和能够提升的效率差异。Hive是目前应用最多最广的SQL on Hadoop工具,近期很多专业的大数据公司推出了很多新的,基于列式或者内存热数据的SQL工具,像Impala,Tez,Spark等等,但是Hive仍然是目前使用率最高和普及面最广的SQL on Hadoop的工具。在以前淘宝罗李的报告中,淘宝90%的业务跑在Hive上面。暴风影音的比例更高一些,大概95%以上
-
昨天同事遇到一个hadoop故障,找了半天没看出问题,问到我这里,花了一会解决了一下,估计这是我给暴风的集群解决的最后的故障了,以后就不定给谁解决问题去了。只截下来了Namenode的报错Log,Datanode的刷屏刷过去了,不过都差不多。2013-09-03 18:11:44,021 WARN org.apache.hadoop.hdfs.StateChange: BLOCK* NameSys
-
Linux操作系统针对Hadoop的参数和命令调优。对于Hadoop本身的参数调优,写的已经不少了,操作系统方面的不多,记录一下我用的系统参数。先写一点,想起哪个再往里面加。
一、系统内核参数调优sysctl.conf
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.acce
Slaytanic
分享到朋友圈
- 关注技术:PHP 数据结构与算法 大数据 网络 思科技术 集群 Unix 存储 云计算
- 入住博客:2010-08-25 10.4年