Cloudera Manager:我在哪里将Java ClassPath用于MapReduce作业?

时间:2013-08-05 19:33:54

标签: hadoop cloudera lzo

我已经让Hadoop-Lzo在我的本地伪群集上愉快地工作但是第二次我在生产中尝试相同的jar文件,我得到:

java.lang.RuntimeException: native-lzo library not available

库已经过验证,在DataNodes上,所以我的问题是:

在什么屏幕/设置中指定native-lzo库的位置?

2 个答案:

答案 0 :(得分:3)

对于MapReduce,您需要将条目添加到MapReduce客户端环境安全阀。您可以转到配置下的查看和修改标签,找到 MapReduce客户端安全。然后在那里添加这些行:

  • HADOOP_CLASSPATH = $ HADOOP_CLASSPATH中:/ opt / Cloudera的/包裹/ HADOOP_LZO / LIB / hadoop的/ lib中/ *
  • JAVA_LIBRARY_PATH = $ JAVA_LIBRARY_PATH中:/ opt / Cloudera的/包裹/ HADOOP_LZO / LIB / hadoop的/ LIB /天然

还将LZO编解码器添加到MapReduce服务下的io.compression.codecs属性中。要执行此操作,请转到配置查看和修改标签下的 io.compression 以及这些行:

  • com.hadoop.compression.lzo.LzoCodec
  • com.hadoop.compression.lzo.LzopCodec

进行更改后,请不要忘记重新启动MR守护程序。重新启动后,重新部署MR客户端配置。

有关如何使用LZO的详细帮助,请访问此链接: http://www.cloudera.com/content/cloudera-content/cloudera-docs/CM4Ent/latest/Cloudera-Manager-Installation-Guide/cmig_install_LZO_Compression.html

HTH

答案 1 :(得分:0)

在TaskTracker节点中尝试sudo apt-get install lzop