hadoop bug 笔记
1.sqoop从mysql导入数据到hdfs的时候,总是在本地运行,而没有运行在集群上
sqoop 配置文件的问题
在 /usr/lib/sqoop/conf 目录下新增文件 sqoop-env.sh 按照sqoop-env-template.sh模板配置 如下
et path to where bin/hadoop is available
export HADOOP_COMMON_HOME=/home/wwx/hadoop/hadoop-2.6.0-cdh5.8.0
#Set path to where hadoop-*-core.jar is available
export HADOOP_MAPRED_HOME=/home/wwx/hadoop/hadoop-2.6.0-cdh5.8.0
由于默认的HADOOP_COMMON_HOME并不是 我运行集群 所在的目录,而是 /usr/lib/sqoop/bin/configure-sqoop 中所配置的目录 打开这个文件就可以看到
2.namenode重新format之后会导致namenode和datanode的版本不一致,再次启动datanode的时候会导致datanode启动不了
应当尽量避免再次格式化,或者在格式化后删除原来的version文件,目录是在hdfs-site.xml文件中配置的dfs.datanode.data.dir属性
3.ssh免密码登录
本机免密码登录
执行ssh看ssh是否安装了,一般默认都安装了
任意目录执行ssh-keygen -t rsa 生成公钥和私钥
一直enter,不设密码
cd ~/.ssh
cat id_rsa.pub >> authorized_keys
ssh localhost 看是否需要输入密码,如果要输入
则 修改文件权限
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
ssh localhost 则不需要输入密码
A机器免密码登录B机器
将A机器的公钥id_rsa.pub 追加到B机器的authorized_keys中
4.将用户添加到sudoer文件中
su root
visudo
找到 root ALL这一行,在这一行下面加上 自己的username ALL=(ALL) NOPASSWD:ALL
5.修改锁屏时间
桌面左上角找到System-->Preferences-->Screensaver 将时间调整
6.关闭防火墙
1) 重启后生效
开启: chkconfig iptables on
关闭: chkconfig iptables off 2) 即时生效,重启后失效
开启: service iptables start
关闭: service iptables stop
7.给虚拟机设置静态ip
修改ip:
编辑文件/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 //设备名称,不要修改
BOOTPROTO=static //不要修改
BROADCAST=10.10.22.255 //广播地址,一般为本网段的最后一个IP
IPADDR=10.10.22.145 //ip地址
NETMASK=255.255.255.0 //子网掩码
NETWORK=10.10.22.0 //网段地址
HWADDR="00:0C:29:92:BF:74"//修改为当前网卡的mac地址
ONBOOT=yes //不要修改
TYPE=Ethernet //不要修改
注意: ifcfg-eth0是第一张网卡,ifcfg-eth1是第二张网卡,依次类推
克隆或复制的虚拟机,网卡mac地址就会增加一个,mac地址信息在/etc/udev/rules.d/70-persistent-net.rules
注意要把mac地址修改为当前有效的网卡
8.nodemanager启动不起来,并且错误信息为NodeManager from hadoop-2 doesn't satisfy minimum allocations, Sending SHUTDOWN signal to the NodeManager貌似是因为在yarn-site.xml中
<property>
<description>Amount of physical memory, in MB, that can be allocated
for containers.</description>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>30720</value>
</property>
其中value<1024,选择把这个给注释掉之后可以启动
9.centos配置yum源
cd /etc/yum.repos.d/
新建一个repo源文件 sudo vi my-reponame.repo
以小象学院的cloudera repo源为例
添加以下内容
[cloudera-cdh5-myself]
name=Cloudera CDH, Version(Custom)
baseurl=http://112.74.102.117/software/cloudera-cdh5
gpgcheck=0
保存退出即可使用
10.mysql设置远程访问权限与远程访问
设置远程访问权限:
在启动了mysql的主机上执行mysql命令
允许任意主机访问:mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION; #myuser是主机的用户名
允许特定主机访问:mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword' WITH GRANT OPTION; #ip或者可识别的主机名都可
远程访问测试:
在另一台主机上执行 mysql -hhadoop-4 -u root -p #hadoop-4为本主机的主机名 root是mysql的登录账户名
然后输入密码
11.hive-server2启动出错,这个错误困扰了我好几天,最终解决了,必须得记录一下
错误的详细信息可以参照小象问答上面一个人的提问,是一模一样的错误 http://wenda.chinahadoop.cn/question/767
总结起来就是hive-server2 启动failed ,在/var/log/hive目录下查看日志发现说找不到HADOOP_HOME,也就是说hive找不到hadoop
但是已经在/usr/lib/hive/conf/hive-env.sh中配置了HADOOP_HOME 而且错误信息是在执行/usr/lib/hive/bin/hive这个脚本时打印的
所以去追查这个脚本 发现脚本中正确识别了HADOOP_HOME ,但是却没有权限去读取HADOOP_HOME/bin/hadoop这个脚本(认为它不存在,实际上是没有权限读取和执行)
所以得修改这个权限,让hive可以执行 从小象问答的帖子中发现是要让hive用户有权限 所以执行chmod 755 -R / (HADOOP_HOME=/home/wwx/hadoop/hadoop-2.6.0-cdh5.8.0)目的是让其他用户也有读取和执行的权限
操作之后果然有效果,但是却有新问题出现 在hive脚本中执行hadoop version时返回 又找不到java了 (JAVA_HOME not set) 之前hadoop都能运行,所以hadoop是肯定能找到java的,而且各种配置项也都配置了
最后思考是不是其他目录也有hadoop存在,结果在/usr/lib/中发现了hadoop目录 在/usr/lib/hadoop/etc/hadoop/hadoop-env.sh (文件新建的)中设置好JAVA_HOME
export JAVA_HOME=/home/wwx/jdk/jdk1.7.0_79
发现问题解决了
其实不太明白为什么hive会去读取这个目录的hadoop下的hadoop-env.sh 而不是配置的HADOOP_HOME目录下的hadoop-env.sh ,这是一个疑问有待后续发现。。
hadoop bug 笔记的更多相关文章
- Hadoop学习笔记(10) ——搭建源码学习环境
Hadoop学习笔记(10) ——搭建源码学习环境 上一章中,我们对整个hadoop的目录及源码目录有了一个初步的了解,接下来计划深入学习一下这头神象作品了.但是看代码用什么,难不成gedit?,单步 ...
- Hadoop学习笔记—22.Hadoop2.x环境搭建与配置
自从2015年花了2个多月时间把Hadoop1.x的学习教程学习了一遍,对Hadoop这个神奇的小象有了一个初步的了解,还对每次学习的内容进行了总结,也形成了我的一个博文系列<Hadoop学习笔 ...
- Hadoop阅读笔记(七)——代理模式
关于Hadoop已经小记了六篇,<Hadoop实战>也已经翻完7章.仔细想想,这么好的一个框架,不能只是流于应用层面,跑跑数据排序.单表链接等,想得其精髓,还需深入内部. 按照<Ha ...
- Hadoop阅读笔记(六)——洞悉Hadoop序列化机制Writable
酒,是个好东西,前提要适量.今天参加了公司的年会,主题就是吃.喝.吹,除了那些天生话唠外,大部分人需要加点酒来作催化剂,让一个平时沉默寡言的码农也能成为一个喷子!在大家推杯换盏之际,难免一些画面浮现脑 ...
- Hadoop阅读笔记(五)——重返Hadoop目录结构
常言道:男人是视觉动物.我觉得不完全对,我的理解是范围再扩大点,不管男人女人都是视觉动物.某些场合(比如面试.初次见面等),别人没有那么多的闲暇时间听你诉说过往以塑立一个关于你的完整模型.所以,第一眼 ...
- Hadoop阅读笔记(四)——一幅图看透MapReduce机制
时至今日,已然看到第十章,似乎越是焦躁什么时候能翻完这本圣经的时候也让自己变得更加浮躁,想想后面还有一半的行程没走,我觉得这样“有口无心”的学习方式是不奏效的,或者是收效甚微的.如果有幸能有大牛路过, ...
- Hadoop阅读笔记(三)——深入MapReduce排序和单表连接
继上篇了解了使用MapReduce计算平均数以及去重后,我们再来一探MapReduce在排序以及单表关联上的处理方法.在MapReduce系列的第一篇就有说过,MapReduce不仅是一种分布式的计算 ...
- Hadoop阅读笔记(二)——利用MapReduce求平均数和去重
前言:圣诞节来了,我怎么能虚度光阴呢?!依稀记得,那一年,大家互赠贺卡,短短几行字,字字融化在心里:那一年,大家在水果市场,寻找那些最能代表自己心意的苹果香蕉梨,摸着冰冷的水果外皮,内心早已滚烫.这一 ...
- Hadoop阅读笔记(一)——强大的MapReduce
前言:来园子已经有8个月了,当初入园凭着满腔热血和一脑门子冲动,给自己起了个响亮的旗号“大数据 小世界”,顿时有了种世界都是我的,世界都在我手中的赶脚.可是......时光飞逝,岁月如梭~~~随手一翻 ...
随机推荐
- C#通过模板导出Word(文字,表格,图片)
C#通过模板导出Word(文字,表格,图片) C#导出Word,Excel的方法有很多,这次因为公司的业务需求,需要导出内容丰富(文字,表格,图片)的报告,以前的方法不好使,所以寻找新的导出方法, ...
- C++ 顺序容器 vector list deque 之比较
在C++标准库中定义了三种顺序容器类型:vector,list和deque.所谓顺序容器就是根据位置来存储和访问元素,元素的排列次序与元素的值无关,而是由元素添加到容器的次序决定的. vector的底 ...
- Knockout 是什么?
翻译:Knockout 轻松上手 - 1 Knockout 是什么? 原文名称:KnockoutJS Starter Knockout 是一个非常棒的脚本库,可是我发现许多人并不了解它,所以,思胜翻译 ...
- 如何本地测试例如QQ登录等第三方接口
前言:现在基本是个网站就会集成第三方的一些接口,比如QQ登录.分享等等.但是在开发的时候,尤其是没有这方面经验的开发人员来说,调试流程时会显得迷茫,不知道怎么调试.这里就个人的这方面学习摸索做一个总结 ...
- MongoDB:锁机制
--1 MongoDB 使用的锁 MongoDB 使用的是“readers-writer”锁, 可以支持并发但有很大的局限性,当一个读锁存在,许多读操作可以使用这把锁,然而, 当一个写锁的存在,一个单 ...
- 使用VS2010命令提示窗口操作程序集强命名
说明:文中示例均以将文件置于D盘根目录(D:\)下为例. 一.查看程序集是否具有强命名 sn -T d:\LicBase.dll 若有则会显示PublicKeyToken值,反之不会. 二.给无强命名 ...
- elasticsearch文档-analysis
elasticsearch文档-analysis analysis 基本概念 全文搜索引擎会用某种算法对要建索引的文档进行分析, 从文档中提取出若干Token(词元), 这些算法称为Tokeniz ...
- Hook SSDT中NtCreateProcessEx
#ifdef __cplusplus extern "C" { #endif #include <ntddk.h> #ifdef __cplusplus } #endi ...
- 3分钟教你做一个iphone手机浏览器
3分钟教你做一个iphone手机浏览器 第一步:新建一个Single View工程: 第二步:新建好工程,关闭arc. 第三步:拖放一个Text Field 一个UIButton 和一个 UIWebV ...
- 四.redis 事务
redis对事务的支持目前还比较简单.redis只能保证一个client发起的事务中的命令可以连续的执行,而中间不会插入其他client的命令. 由于redis是单线程来处理所有client的请求的所 ...