Hadoop 是一个开源的分布式计算框架,广泛应用于大数据的存储与处理。Hadoop 提供了一个高效、可靠、可扩展的分布式存储和计算平台,适用于处理海量数据。在这篇文章中,小编将介绍如何在本地机器上搭建一个 Hadoop 环境,帮助你快速了解 Hadoop 的基本使用。

一、 Hadoop 生态系统概述

Hadoop 主要由以下几个组件组成:

1、HDFS (Hadoop Distributed File System)  分布式文件系统,提供高容错性和高吞吐量的数据存储。

2、MapReduce  一个用于处理大规模数据的计算模型,通过将任务分解成小的子任务并分发到集群中进行处理。

3、YARN (Yet Another Resource Negotiator):资源管理器,负责管理集群的计算资源。

4、Hive、Pig、HBase 等: 提供更高层次的抽象和工具,用于简化大数据的处理和查询。

在本教程中,我们将重点讲解如何安装和配置 Hadoop,并简单介绍如何使用它进行数据存储和处理。

二、 准备工作

在开始安装之前,确保你已经具备以下基础条件:

1、操作系统: CentOS 7/8 或更高版本。

2、Java 环境: Hadoop 是基于 Java 的,因此需要安装 JDK 8。

3、SSH 配置: Hadoop 节点之间需要通过 SSH 进行通信,即使是单节点集群,也需要配置 SSH。

三、 安装和配置环境

1、安装jdk8,此操作不再做过多赘述,正常官网下载安装包,配置环境变量并刷新文件即可。

2、安装ssh

# 安装 OpenSSH 客户端和服务器
sudo yum install -y openssh-server openssh-clients

# 启动并设置 SSH 服务开机自启
sudo systemctl start sshd
sudo systemctl enable sshd

# 生成 SSH 密钥对
ssh-keygen -t rsa -P ""

# 将公钥复制到授权的密钥文件
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

# 测试 SSH 无密码登录
ssh localhost

 

3、安装hadoop
首先从 Apache Hadoop 官方网站 下载最新版本的 Hadoop,或者使用 wget 命令直接下载:

# 下载 Hadoop
wget https://downloads.apache.org/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.tar.gz

# 解压 Hadoop
tar -xzvf hadoop-3.3.1.tar.gz

# 移动到指定目录
sudo mv hadoop-3.3.1 /usr/local/hadoop

配置环境变量

# 编辑 /etc/profile 文件
sudo vi /etc/profile

# 添加以下内容到文件末尾
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

# 保存并退出
source /etc/profile

配置hadoop文件  

Hadoop 的主要配置文件位于 $HADOOP_HOME/etc/hadoop 目录中。我们需要修改以下几个配置文件

(1)配置 core-site.xml

配置 Hadoop 文件系统的默认 URI,在 /usr/local/hadoop/etc/hadoop/core-site.xml 文件中添加:

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

(2)配置 hdfs-site.xml 

配置 HDFS 的存储目录和副本数,在 /usr/local/hadoop/etc/hadoop/hdfs-site.xml 文件中添加:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/usr/local/hadoop/hdfs/namenode</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/usr/local/hadoop/hdfs/datanode</value>
    </property>
</configuration>

(3)配置 mapred-site.xml  

配置 MapReduce 的运行框架,在 /usr/local/hadoop/etc/hadoop/mapred-site.xml 文件中添加:

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

(4)配置 yarn-site.xml

配置 YARN 的资源管理器,在 /usr/local/hadoop/etc/hadoop/yarn-site.xml 文件中添加:

<configuration>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>localhost</value>
    </property>
</configuration>

四、 格式化hdfs

在启动 Hadoop 之前,需要格式化 HDFS(Hadoop 分布式文件系统)。

# 格式化 HDFS
hdfs namenode -format

五、启动 Hadoop

启动 Hadoop 集群之前,先启动 HDFS 和 YARN 服务。

# 启动 HDFS
start-dfs.sh

# 启动 YARN
start-yarn.sh

确认 Hadoop 集群是否启动成功:

 jps -l

如果看到 NameNode、DataNode、ResourceManager 和 NodeManager 等进程,说明 Hadoop 启动成功。

六、Hadoop 基本操作

1. 创建 HDFS 目录
创建一个目录用于存放数据:

hdfs dfs -mkdir /user
hdfs dfs -mkdir /user/hadoop

2. 上传文件到 HDFS
将本地文件上传到 HDFS:

hdfs dfs -ls /user/hadoop/

3. 查看 HDFS 中的文件
查看上传的文件:

hdfs dfs -ls /user/hadoop/

4. 从 HDFS 下载文件
从 HDFS 下载文件到本地:

hdfs dfs -get /user/hadoop/file /path/to/local/directory/

5. 删除 HDFS 中的文件
删除文件:

hdfs dfs -rm /user/hadoop/file

七、停止 Hadoop

完成操作后,停止 Hadoop 服务:

# 停止 YARN
stop-yarn.sh

# 停止 HDFS
stop-dfs.sh

八、 总结

以上便是hadoop的单节点搭建以及基础操作。小编初步上手操作,若有纰漏希望广大读者朋友指教,可以联系我们的官方公众号小客服。

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐