美文网首页我爱编程
Hadoop实战:1、Hadoop基础与源码编译

Hadoop实战:1、Hadoop基础与源码编译

作者: ly稻草 | 来源:发表于2018-05-17 11:20 被阅读0次

Hadoop基础 

  大数据概述

可以用“5V + 1C”来概括:

    Variety (多样化)   Volume (海量)  Velocity (快速)  Vitality (灵活)

    Value (价值性)    Complexity (复杂)

Hadoop与Hadoop生态圈

Hadoop

狭义: 软件(HDFS、MapReduce、Yarn)

广义: 以hadoop为主的生态圈

Hadoop1.x

hdfs: 分布式文件管理系统                    存储

mapreduce1: 执行引擎                  计算+资源、作业调度

Hadoop2.x三大组件

hdfs: 分布式文件管理系统            存储

mapreduce2: 执行引擎                  计算

yarn: 资源(memory cpu)和作业调度平台    资源

Hadoop编译

[root@hadoop-01 ~]# cd /opt/

[root@hadoop-01 opt]# mkdir sourcecode software

[root@hadoop-01 opt]# cd sourcecode

[root@hadoop-01 sourcecode]# pwd

/opt/sourcecode

hadoop源代码下载

# 将hadoop-2.8.1-src.tar.gz下载(或者用rz上传)到sourcecode目录

[root@hadoop-01 sourcecode]# ll

total 33756   

-rw-r--r--. 1 root root 34523353 Aug 20 12:14 hadoop-2.8.1-src.tar.gz

# 解压

[root@hadoop-01 sourcecode]# tar -xzvf hadoop-2.8.1-src.tar.gz

[root@hadoop-01 sourcecode]# ll

total 33760

  drwxr-xr-x. 17 root root    4096 Jun  2 14:13 hadoop-2.8.1-src

-rw-r--r--.  1 root root 34523353 Aug 20 1c'd2:14 hadoop-2.8.1-src.tar.gz

[root@hadoop-01 sourcecode]# cd hadoop-2.8.1-src

JAVA安装

[root@hadoop-01 ~]# mkdir -p /usr/java

[root@hadoop-01 ~]# cd /usr/java

[root@hadoop-01 java]# rz #上传jdk-8u45-linux-x64.gz

[root@hadoop-01 java]# tar -xzvf jdk-8u45-linux-x64.gz

# 修改用户和用户组

[root@hadoop-01 java]# chown -R root:root jdk1.8.0_45

# 设置环境变量

[root@hadoop-01 java]# vi /etc/profile

# 在最底下加入

export JAVA_HOME=/usr/java/jdk1.8.0_45

export PATH=$JAVA_HOME/bin:$PATH

# 生效

[root@hadoop-01 java]# source /etc/profile

Maven安装

[root@hadoop-01 ~]# cd /opt/software/

[root@hadoop-01 software]# rz  #上传apache-maven-3.3.9-bin.zip

[root@hadoop-01 software]# ll

total 8432

-rw-r--r--. 1 root root 8617253 Aug 20 12:35 apache-maven-3.3.9-bin.zip

# 解压

[root@hadoop-01 software]# unzip apache-maven-3.3.9-bin.zip

# 设置环境变量

[root@hadoop-01 software]# vi /etc/profile

export MAVEN_HOME=/opt/software/apache-maven-3.3.9

export MAVEN_OPTS="-Xms256m -Xmx512m"

export PATH=$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATH

# 生效

[root@hadoop-01 software]# source /etc/profile

# 查看

[root@hadoop-01 software]# mvn -version

Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)

Maven home: /opt/software/apache-maven-3.3.9

Java version: 1.8.0_45, vendor: Oracle Corporation

Java home: /usr/java/jdk1.8.0_45/jre

Default locale: en_US, platform encoding: UTF-8

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


Findbugs安装

[root@hadoop-01 ~]# cd /opt/software/

[root@hadoop-01 software]# rz #上传findbugs-1.3.9.zip

# 解压

[root@hadoop-01 software]# unzip findbugs-1.3.9.zip

# 设置环境变量

[root@hadoop-01 software]# vi /etc/profile

export FINDBUGS_HOME=/opt/software/findbugs-1.3.9

export PATH=$FINDBUGS_HOME/bin:$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATH

# 生效

[root@hadoop-01 software]# source /etc/profile

# 查看

[root@hadoop-01 software]# findbugs -version

1.3.9

protobuf安装

[root@hadoop-01 ~]# cd /opt/software/

[root@hadoop-01 software]# rz #上传protobuf-2.5.0.tar.gz

# 解压

[root@hadoop-01 software]# tar -xzvf protobuf-2.5.0.tar.gz

[root@hadoop-01 software]# cd protobuf-2.5.0

[root@hadoop-01 protobuf-2.5.0]# yum install -y gcc gcc-c++ make cmake

[root@hadoop-01 protobuf-2.5.0]# ./configure --prefix=/usr/local/protobuf

[root@hadoop-01 protobuf-2.5.0]# make && make install

# 设置环境变量

[root@hadoop-01 java]# vi /etc/profile

export PROTOC_HOME=/usr/local/protobuf

export PATH=$PROTOC_HOME/bin:$FINDBUGS_HOME/bin:$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATH

# 生效

[root@hadoop-01 protobuf-2.5.0]# source /etc/profile

# 查看

[root@hadoop-01 protobuf-2.5.0]# protoc --version

libprotoc 2.5.0

其他依赖

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

编译

[root@hadoop-01 sourcecode]# cd hadoop-2.8.1-src

[root@hadoop-01 hadoop-2.8.1-src]# mvn clean package -Pdist,native -DskipTests -Dtar

注意:

download需要3.5h

不想download就使用.m2.tar.gz -->解压-->root家目录

编译好的tar包路径

/opt/sourcecode/hadoop-2.8.1-src/hadoop-dist/target/hadoop-2.8.1.tar.gz

[root@hadoop000 target]# pwd /opt/sourcecode/hadoop-2.8.1-src/hadoop-dist/target [root@hadoop000 target]# ls

antrun hadoop-dist-2.8.1-sources.jar classes hadoop-dist-2.8.1-test-sources.jar dist-layout-stitching.sh javadoc-bundle-options dist-tar-stitching.sh maven-archiver hadoop-2.8.1 maven-shared-archive-resources hadoop-2.8.1.tar.gz test-classes hadoop-dist-2.8.1.jar test-dir hadoop-dist-2.8.1-javadoc.jar

配置本地Maven仓库

window/linux:

cd /opt/software/apache-maven-3.3.9/conf

1.vi setting.xml   

D:\software\apache-maven-3.3.9\repository

2.创建D:\software\apache-maven-3.3.9\repository

提醒

1、有时候编译过程中会出现下载某个包的时间太久,这是由于连接网站的过程中会出现假死,

此时按ctrl+c,重新运行编译命令。

2、如果出现缺少了某个文件的情况,则要先清理maven(使用命令 mvn clean) 再重新编译。

相关文章

网友评论

    本文标题:Hadoop实战:1、Hadoop基础与源码编译

    本文链接:https://www.haomeiwen.com/subject/xmfbdftx.html