如何在CentOS6.5下编译64位的Hadoop2.x?

2024-05-03 23:18
文章标签 编译 hadoop2 64 centos6.5

本文主要是介绍如何在CentOS6.5下编译64位的Hadoop2.x?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1
安装gcc,执行如下的几个yum命令即可


Java代码


yum -y install gcc


yum -y install gcc-c++


yum install make


yum install autoconf automake libtool cmake ncurses-devel openssl-devel gcc*


2安装JDK,并设置环境变量,完成后测试安装成功否

Java代码


[root@ganglia ~]# java -version


java version "1.5.0"


gij (GNU libgcj) version 4.4.7 20120313 (Red Hat 4.4.7-4)


Copyright (C) 2007 Free Software Foundation, Inc.


This is free software; see the source for copying conditions. There is NO


warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


[root@ganglia ~]#


3安装Maven,安装完成后测试安装与否


Java代码


[root@ganglia ~]# mvn -v


Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-15T01:37:52+08:00)


Maven home: /usr/local/maven


Java version: 1.7.0_25, vendor: Oracle Corporation


Java home: /usr/local/jdk1.7.0_25/jre


Default locale: zh_CN, platform encoding: UTF-8


OS name: "linux", version: "2.6.32-431.el6.x86_64", arch: "amd64", family: "unix"


[root@ganglia ~]#


4安装Ant, 安装完成后,依旧测试成功与否



Java代码


[root@ganglia ~]# ant -version


Apache Ant(TM) version 1.9.4 compiled on April 29 2014


[root@ganglia ~]#


5安装protobuf,安装方式,从官网下载tar.gz的包,并上传到linux上解压,然后进入根目录下,执行如下的几个命令:




Java代码


./configure


make


make check


make install


然后,执行如下命令,进行测试安装成功与否


Java代码


[root@ganglia protobuf-2.5.0]# protoc


Missing input file.


[root@ganglia protobuf-2.5.0]#


6从hadoop官网下载hadoop2.2.0的版本的源码的src的包,并查看目录


Java代码


[root@ganglia ~]# cd hadoop-2.2.0-src


[root@ganglia hadoop-2.2.0-src]# ll


总用量 108


-rw-r--r--. 1 67974 users 9968 10月 7 2013 BUILDING.txt


drwxr-xr-x. 2 67974 users 4096 10月 7 2013 dev-support


drwxr-xr-x. 4 67974 users 4096 6月 9 17:05 hadoop-assemblies


drwxr-xr-x. 3 67974 users 4096 6月 9 17:27 hadoop-client


drwxr-xr-x. 9 67974 users 4096 6月 9 17:14 hadoop-common-project


drwxr-xr-x. 3 67974 users 4096 6月 9 17:26 hadoop-dist


drwxr-xr-x. 7 67974 users 4096 6月 9 17:20 hadoop-hdfs-project


drwxr-xr-x. 11 67974 users 4096 6月 9 17:25 hadoop-mapreduce-project


drwxr-xr-x. 4 67974 users 4096 6月 9 17:06 hadoop-maven-plugins


drwxr-xr-x. 3 67974 users 4096 6月 9 17:27 hadoop-minicluster


drwxr-xr-x. 4 67974 users 4096 6月 9 17:03 hadoop-project


drwxr-xr-x. 3 67974 users 4096 6月 9 17:05 hadoop-project-dist


drwxr-xr-x. 12 67974 users 4096 6月 9 17:26 hadoop-tools


drwxr-xr-x. 4 67974 users 4096 6月 9 17:24 hadoop-yarn-project


-rw-r--r--. 1 67974 users 15164 10月 7 2013 LICENSE.txt


-rw-r--r--. 1 67974 users 101 10月 7 2013 NOTICE.txt


-rw-r--r--. 1 67974 users 16569 10月 7 2013 pom.xml


-rw-r--r--. 1 67974 users 1366 10月 7 2013 README.txt


[root@ganglia hadoop-2.2.0-src]#




7修改/root/hadoop-2.2.0-src/hadoop-common-project/hadoop-auth/pom.xml文件,增加,补丁内容,这部分是hadoop2.2.0的bug,如果是其他的2.x的版本,可以视情况而定,内容如下:

Xml代码


<dependency>

<groupId>org.mockito</groupId>

<artifactId>mockito-all</artifactId>

<scope>test</scope>

</dependency>

<!--新增的内容开始 -->

<dependency>

<groupId>org.mortbay.jetty</groupId>

<artifactId>jetty-util</artifactId>

<scope>test</scope>

</dependency>

<!--新增的内容结束 -->

<dependency>

<groupId>org.mortbay.jetty</groupId>

<artifactId>jetty</artifactId>

<scope>test</scope>

</dependency>


8修改完毕后,回到hadoop-2.2.0-src的跟目录下执行编译打包命令:



Java代码


mvn clean


mvn package -Pdist,native -DskipTests -Dtar


然后等待半个小时左右的编译时间,网速快的话,时间可能会更短,编译完成 编译好的hadoop包,


Java代码


[root@ganglia target]# pwd


/root/hadoop-2.2.0-src/hadoop-dist/target


[root@ganglia target]# ll


总用量 282348


编译完成后的本地库,位于如下位置,并查看本地库支持位数:


至此,我们的编译已经,成功完成,然后,我们就可以使用在target目录下,编译生成的hadoop新的tar.gz包,来部署我们的hadoop集群。

这篇关于如何在CentOS6.5下编译64位的Hadoop2.x?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/957877

相关文章

maven 编译构建可以执行的jar包

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」👈,「stormsha的知识库」👈持续学习,不断总结,共同进步,为了踏实,做好当下事儿~ 专栏导航 Python系列: Python面试题合集,剑指大厂Git系列: Git操作技巧GO

NGINX轻松管理10万长连接 --- 基于2GB内存的CentOS 6.5 x86-64

转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=190176&id=4234854 一 前言 当管理大量连接时,特别是只有少量活跃连接,NGINX有比较好的CPU和RAM利用率,如今是多终端保持在线的时代,更能让NGINX发挥这个优点。本文做一个简单测试,NGINX在一个普通PC虚拟机上维护100k的HTTP

Windows环境利用VS2022编译 libvpx 源码教程

libvpx libvpx 是一个开源的视频编码库,由 WebM 项目开发和维护,专门用于 VP8 和 VP9 视频编码格式的编解码处理。它支持高质量的视频压缩,广泛应用于视频会议、在线教育、视频直播服务等多种场景中。libvpx 的特点包括跨平台兼容性、硬件加速支持以及灵活的接口设计,使其可以轻松集成到各种应用程序中。 libvpx 的安装和配置过程相对简单,用户可以从官方网站下载源代码

LeetCode:64. 最大正方形 动态规划 时间复杂度O(nm)

64. 最大正方形 题目链接 题目描述 给定一个由 0 和 1 组成的二维矩阵,找出只包含 1 的最大正方形,并返回其面积。 示例1: 输入: 1 0 1 0 01 0 1 1 11 1 1 1 11 0 0 1 0输出: 4 示例2: 输入: 0 1 1 0 01 1 1 1 11 1 1 1 11 1 1 1 1输出: 9 解题思路 这道题的思路是使用动态规划

Golang test编译使用

创建文件my_test.go package testsimport "testing"func TestMy(t *testing.T) {t.Log("TestMy")} 通常用法: $ go test -v -run TestMy my_test.go=== RUN TestMyTestMy: my_test.go:6: TestMy--- PASS: TestMy (0.

【Python从入门到进阶】64、Pandas如何实现数据的Concat合并

接上篇《63.Pandas如何实现数据的Merge》 上一篇我们学习了Pandas如何实现数据的Merge,本篇我们来继续学习Pandas如何实现数据的Concat合并。 一、引言 在数据处理过程中,经常需要将多个数据集合并为一个统一的数据集,以便进行进一步的分析或建模。这种需求在多种场景下都非常常见,比如合并不同来源的数据集以获取更全面的信息、将时间序列数据按时间顺序拼接起来以观察长期趋势等

C++/《C/C++程序编译流程》

程序的基本流程如图:   1.预处理        预处理相当于根据预处理指令组装新的C/C++程序。经过预处理,会产生一个没有宏定义,没有条件编译指令,没有特殊符号的输出文件,这个文件的含义同原本的文件无异,只是内容上有所不同。 读取C/C++源程序,对其中的伪指令(以#开头的指令)进行处理将所有的“#define”删除,并且展开所有的宏定义处理所有的条件编译指令,如:“#if”、“

编译linux内核出现 arm-eabi-gcc: error: : No such file or directory

external/e2fsprogs/lib/ext2fs/tdb.c:673:29: warning: comparison between : In function 'max2165_set_params': -。。。。。。。。。。。。。。。。。。 。。。。。。。。。。。。。 。。。。。。。。 host asm: libdvm <= dalvik/vm/mterp/out/Inte

QT 编译报错:C3861: ‘tr‘ identifier not found

问题: QT 编译报错:C3861: ‘tr’ identifier not found 原因 使用tr的地方所在的类没有继承自 QObject 类 或者在不在某一类中, 解决方案 就直接用类名引用 :QObject::tr( )

hector_quadrotor编译总结 | ubuntu 16.04 ros-kinetic版本

hector_quadrotor编译总结 | ubuntu 16.04 ros-kinetic版本 基于Ubuntu 16.04 LTS系统所用ROS版本为 Kinetic hector_quadrotor ROS包主要用于四旋翼无人机的建模、控制和仿真。 1.安装依赖库 所需系统及依赖库 Ubuntu 16.04|ros-kinetic|Gazebo|gazebo_ros_pkgs|ge