一挪略、環(huán)境搭建
- 可能因?yàn)槭翘摂M機(jī)的緣故历帚?重啟后,SSH免密登陸總是失效瘟檩,解決辦法抹缕。
mv /root/.ssh/known_hosts /tmp
- 對(duì)hadoop的namenode節(jié)點(diǎn)格式化的時(shí)候,出現(xiàn)
Format aborted in /usr/local/src/hadoop-1.2.1/tmp/dfs/name
錯(cuò)誤墨辛,格式化失斪垦小!
rm -rf /usr/local/src/hadoop-1.2.1/tmp/dfs/
image.png
- 執(zhí)行./start-all.sh 命令的時(shí)候睹簇,出現(xiàn)
The authenticity of host 'slave2 (192.168.89.12)' can't be established.
錯(cuò)誤奏赘,但是主從節(jié)點(diǎn)之間可以免密登陸,但是會(huì)造成slave節(jié)點(diǎn)啟動(dòng)失敗太惠。- 將錯(cuò)誤排查了遍磨淌,真是浪費(fèi)了好多時(shí)間,原來(lái)虛擬機(jī)一旦重啟凿渊,SELinux就會(huì)變回原來(lái)的樣子梁只。
#臨時(shí)關(guān)閉,重啟失效
setenforce 0
getenforce #查看狀態(tài)埃脏,Permissive為關(guān)閉
#永久關(guān)閉搪锣,推薦
vim /etc/selinux/config
將SELINUX=enforcing改為SELINUX=disabled
image.png
- 上傳文件失敗./hadoop fs -put /etc/passwd /,拋出異常彩掐。
原因:防火墻沒(méi)有關(guān)閉:
centOS 6.5關(guān)閉防火墻步驟
關(guān)閉命令: service iptables stop
永久關(guān)閉防火墻:chkconfig iptables off
兩個(gè)命令同時(shí)運(yùn)行构舟,運(yùn)行完成后查看防火墻關(guān)閉狀態(tài)
service iptables status
image.png
二、MapReducer
- ①由于Partitioner大于Reducer導(dǎo)致的錯(cuò)誤堵幽。
為job設(shè)置足夠的reducer數(shù)量:
job.setNumReduceTasks(4);//啟用四個(gè)Reducer狗超,因?yàn)槲覀兎至怂膫€(gè)paritioner弹澎。
java.io.IOException: Illegal partition for 13726230503 (1)
at org.apache.hadoop.mapred.MapTask$MapOutputBuffer.collect(MapTask.java:1078)
at org.apache.hadoop.mapred.MapTask$NewOutputCollector.write(MapTask.java:690)
at org.apache.hadoop.mapreduce.TaskInputOutputContext.write(TaskInputOutputContext.java:80)
at cn.jxau.yuan.mapReduce.DataCount$DCMapper.map(DataCount.java:61)
at cn.jxau.yuan.mapReduce.DataCount$DCMapper.map(DataCount.java:1)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:145)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:764)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:364)
at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:396)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
at org.apache.hadoop.mapred.Child.main(Child.java:249)
17/08/05 02:09:44 INFO mapred.JobClient: Task Id : attempt_201708050137_0001_m_000000_1, Status : FAILED
java.io.IOException: Illegal partition for 13726230503 (1)
at org.apache.hadoop.mapred.MapTask$MapOutputBuffer.collect(MapTask.java:1078)
at org.apache.hadoop.mapred.MapTask$NewOutputCollector.write(MapTask.java:690)
at org.apache.hadoop.mapreduce.TaskInputOutputContext.write(TaskInputOutputContext.java:80)
at cn.jxau.yuan.mapReduce.DataCount$DCMapper.map(DataCount.java:61)