如何在 CentOS 7 的单个节点上安装和配置 Apache Hadoop
Apache Hadoop 是一个开源框架,用于分布式大数据存储和跨计算机集群处理数据。该项目基于以下组件:
- Hadoop Common – 它包含其他 Hadoop 模块所需的 Java 库和实用程序。
- HDFS – Hadoop 分布式文件系统 – 分布在多个节点上的基于 Java 的可扩展文件系统。
- MapReduce – 用于并行大数据处理的 YARN 框架。
- Hadoop YARN:集群资源管理框架。
本文将指导您如何在 CentOS 7 中的单节点集群上安装 Apache Hadoop(也适用于 RHEL 7 和 Fedora 23+ > 版本)。这种类型的配置也称为Hadoop伪分布式模式。
步骤1:在CentOS 7上安装Java
1. 在继续 Java 安装之前,首先使用 root 用户或具有 root 权限的用户登录,并使用以下命令设置您的计算机主机名。
hostnamectl set-hostname master
另外,在主机文件中添加一条新记录,其中包含您自己的计算机 FQDN,以指向您的系统 IP 地址。
vi /etc/hosts
添加以下行:
192.168.1.41 master.hadoop.lan
将上述主机名和 FQDN 记录替换为您自己的设置。
2. 接下来,转到 Oracle Java 下载页面,并借助 curl 在您的系统上获取最新版本的 Java SE Development Kit 8命令:
curl -LO -H "Cookie: oraclelicense=accept-securebackup-cookie" “http://download.oracle.com/otn-pub/java/jdk/8u92-b14/jdk-8u92-linux-x64.rpm”
3. Java 二进制文件下载完成后,通过发出以下命令安装包:
rpm -Uvh jdk-8u92-linux-x64.rpm
步骤2:在CentOS 7中安装Hadoop框架
4. 接下来,在您的系统上创建一个没有 root 权限的新用户帐户,我们将使用它作为 Hadoop 安装路径和工作环境。新帐户主目录将驻留在 /opt/hadoop
目录中。
useradd -d /opt/hadoop hadoop
passwd hadoop
5.下一步,请访问 Apache Hadoop 页面,获取最新稳定版本的链接并将存档下载到您的系统上。
curl -O http://apache.javapipe.com/hadoop/common/hadoop-2.7.2/hadoop-2.7.2.tar.gz
6.解压存档并将目录内容复制到hadoop帐户主路径。另外,请确保相应地更改复制的文件权限。
tar xfz hadoop-2.7.2.tar.gz
cp -rf hadoop-2.7.2/* /opt/hadoop/
chown -R hadoop:hadoop /opt/hadoop/
7. 接下来,使用 hadoop 用户登录,并通过编辑 Hadoop 和 Java 环境变量 在系统上配置 Hadoop 和 Java 环境变量代码>.bash_profile 文件。
su - hadoop
vi .bash_profile
在文件末尾添加以下行:
## JAVA env variables
export JAVA_HOME=/usr/java/default
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
## HADOOP env variables
export HADOOP_HOME=/opt/hadoop
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
8. 现在,初始化环境变量并通过发出以下命令检查其状态:
source .bash_profile
echo $HADOOP_HOME
echo $JAVA_HOME
9. 最后,通过运行以下命令为 hadoop 帐户配置基于 ssh 密钥的身份验证(替换 主机名 或 FQDN > 相应地针对 ssh-copy-id
命令)。
另外,请将密码字段留空,以便通过 ssh 自动登录。
ssh-keygen -t rsa
ssh-copy-id master.hadoop.lan