您好,登錄后才能下訂單哦!
先說(shuō)一下環(huán)境,有兩個(gè)集群,一個(gè)新的一個(gè)舊的,打算把新的調(diào)試好然后把舊的關(guān)掉。
新:Cloudera Express 5.6.0,CDH-5.6.0
舊: Cloudera Express 5.0.5,CDH-5.0.5
新集群搭建過(guò)程中發(fā)現(xiàn)一個(gè)問(wèn)題,執(zhí)行以下命令對(duì)lzo文件創(chuàng)建索引,在新集群中job無(wú)法提交到指定隊(duì)列,同樣的命令在舊集群中正常:
hadoop jar hadoop-lzo.jar com.hadoop.compression.lzo.DistributedLzoIndexer -D mapreduce.job.queuename=copy /data/lzodata/
兩個(gè)集群的配置區(qū)別在于,舊集群lzo的配置一個(gè)是手動(dòng)的,新集群是用GPLEXTRAS的parcel包配置的。
用GPLEXTRAS配置的新集群默認(rèn)吧lzo的jar包加載到hadoop classpath路徑中了,導(dǎo)致的結(jié)果是DistributedLzoIndexer 提交不到正確的隊(duì)列。
因?yàn)樾掳姘娴膆adoop-lzo.jar中
com.hadoop.compression.lzo.DistributedLzoIndexer 修改了獲取Configuration的方式
Configuration conf = new Configuration(); Job job = new Job(conf );
舊版本中為
Job job = new Job(getConf());
修改了源碼,然后重新上傳到提交job的服務(wù)器,只在提交job的時(shí)候起作用。
修改腳本的位置,修改前請(qǐng)做好備份:
/opt/cloudera/parcels/CDH-5.6.0-1.cdh6.6.0.p0.45/lib/hadoop/bin
修改腳本中 export CLASSPATH=/opt/cloudera/userlib/hadoop-lzo.jar:$CLASSPATH
上面的/opt/cloudera/userlib/hadoop-lzo.jar為想要加載的路徑
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。