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
- standalone operation 单机模式 不开发不生产 没有进程
- pseudo-distributed operation 伪分布式 适用于开发不生产、有独立进程且部署在一台机器上
- 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 如下图所示则已成功