若泽数据-史上最全Linux下进行Hadoop编译

当时编译时所用的软件包,可直接下载使用。
链接:https://pan.baidu.com/s/1tFKZSJvbQeSWCMY2fhi-qQ
提取码:dc2g

  1. Hadoop源代码包下载
  2. JDK1.8部署
  3. 环境变量配置
  4. Apache-maven3.39配置
  5. FindBugs安装
  6. Protobuf安装

1.Hadoop源代码包下载

    cd /opt   进入到opt目录下
    mkdir software   创建software软件包
    mkdir sourcecode   创建sourcecode源代码包
    rz 上传文件至software目录

这里写图片描述

tar -xzvf hadoop-2.8.1-src.tar.gz  解压Hadoop源代码包
cd hadoop-2.8.1-src   进入hadoop-2.8.1-src目录
ll 进行查看
more BUILDING.txt  一页一页进行阅读 

这里写图片描述

Hadoop编译必备组件

Requirements:

* Unix System
* JDK 1.7+
* Maven 3.0 or later
* Findbugs 1.3.9 (if running findbugs)
* ProtocolBuffer 2.5.0
* CMake 2.6 or newer (if compiling native code), must be 3.0 or newer 
on Mac
* Zlib devel (if compiling native code)
* openssl devel (if compiling native hadoop-pipes and to get the best 
HDFS encryption performance)
* Linux FUSE (Filesystem in Userspace) version 2.6 or above (if compil
ing fuse_dfs)
* Internet connection for first build (to fetch all Maven and Hadoop d
ependencies)

2.JDK1.8部署

 cd /usr   进入到/usr目录下
 mkdir java  创建Java文件夹
 tar -xzvf jdk-8u45-linux-x64.gz -C /usr/java  解压jdk1.8到/usr/java 目录下

这里写图片描述

注意:root用户使用tar解压后的用户和用户组变成了 8 、10,需要修改用户和用户组: chown -R root:root jdk1.8.0_45

2.1环境变量配置

which Java
usr/bin/java

这里写图片描述

vi /etc/profile  进入到全局环境变量配置
export JAVA_HOME=/usr/java/jdk1.8.0_45
export PATH=$JAVA_HOME/bin:$PATH     保存退出
source /etc/profile   让这个文件生效

这里写图片描述

3.Apache-Maven-3.39配置

cd /opt/software
unzip appache-maven-3.39
cd appache-maven-3.39
cd conf
more settings.xml   使用more进行一页一页查看
tar -xzvf .m2.tar.gz -C /root  解压隐藏文件至root目录,.m2文件是maven的本地存储路径由你自己设定

这里写图片描述

3.1配置maven环境变量

export MAVEN_HOME=/opt/software/apache-maven-3.3.9  maven路径
export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
source /etc/profile
mvn --version  查看版本号

这里写图片描述

4.Findbugs安装

cd /opt/software
unzip Findbugs-1.3.9.zip
vi /etc/profile
export FINDBUGS_HOME=/opt/software/findbugs-1.3.9
export PATH=$FINDBUGS_HOME/bin:$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH

这里写图片描述

5.protobuf安装

tar -xzvf protobuf-2.5.0.tar.gz
ll
drwxr-xr-x. 10 109965  5000    4096 Jun  1 20:21 protobuf-2.5.0
注意的是root用户使用tar解压后要使用ll命令查看用户和用户组
chown -R root:root protobuf-2.5.0
yum install -y gcc gcc-c++ make cmake yum安装gcc、gcc-c++、cmake
./configure --prefix=/usr/local/protobuf 进行系统校验
make && make install   先执行第一个命令在执行第二个命令
环境变量配置
export PROTOC_HOME=/usr/local/protobuf   注意之前configure命令指定到了/usr/local路径
export PATH=$PROTOC_HOME/bin:$FINDBUGS_HOME/bin:$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
source /etc/profile

这里写图片描述

6.安装其他依赖项

yum install -y openssl openssl-devel svn ncurses-devel zlib-devel libtool
yum install -y snappy snappy-devel bzip2 bzip2-devel lzo lzo-devel lzop autoconf automake

7.对Hadoop进行编译

cd hadoop-2.8.1-src
mvn package -Pdist,native -DskipTests -Dtar  创建分布式二进制包-DskipTests:跳过测试,-Dtar:打成jar包
此处抛错:requires a project but there is no pom in the directory,问题是并没有在解压的文件路径下执行这个命令
cd /opt/software/hadoop-2.8.1-src  在这个路径下执行

注意:如果编译过程中失败的话
mvn clean package -Pdist,native -DskipTests -Dtar

至此Hadoop已完成全部编译

8.创建Hadoop用户

useradd hadoop
id hadoop
uid=515(hadoop) gid=515(hadoop) groups=515(hadoop)

9.HDFS伪分布式部署
官方文档:
http://hadoop.apache.org/docs/r2.8.4/hadoop-project-dist/hadoop-common/SingleCluster.html

  1. standalone operation 单机模式 不开发不生产 没有进程
  2. pseudo-distributed operation 伪分布式 适用于开发不生产、有独立进程且部署在一台机器上
  3. fully-distributed operation 分布式 适用于开发和生产、有独立进程、部署于N台机器

9.1 Required Software
这里写图片描述
9.2 Pseudo-Distributed Operation(伪分布式模式)

tar -xzvf hadoop-2.8.1
vi /etc/profile
10.0.0.130  hadoop    添加用户和ip
chown -R hadoop:hadoop hadoop-2.8.1  修改Hadoop的用户和用户组

按照官网进行配置
vi etc/hadoop/core-site.xml

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

vi etc/hadoop/hdfs-site.xml

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

如果不使用ssh进行无密码登录,则输入以下这些

 $ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
  $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
  $ chmod 0600 ~/.ssh/authorized_keys

这里写图片描述

10.namenode格式化
注意点1:可能会出现无法解析主机名的问题。vi etc/sysconfig/network

NETWORKING=yes
HOSTNAME=hadoop

注意点2:要去到/etc/hadoop/hadoop-env.sh目录下修改Java路径。

Format the filesystem:

$ bin/hdfs namenode -format

Start NameNode daemon and DataNode daemon:

 $ sbin/start-dfs.sh

这里写图片描述
jps看到NameNode,DataNode,SecondaryNode,则配置成功
这里写图片描述

输入 http://你的虚拟机ip:50070 如下图所示则已成功
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值