基于CentOS7系统初步搭建hadoop

76 阅读3分钟

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
wgethttps://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
exportPATH=$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的单节点搭建以及基础操作。小编初步上手操作,若有纰漏希望广大读者朋友指教,可以联系我们的官方公众号小客服。