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 命令直接下载:
# 下载 Hadoopwgethttps://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
exportHADOOP_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/hadoo
p/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>
在启动 Hadoop 之前,需要格式化 HDFS(Hadoop 分布式文件系统)。
# 格式化 HDFShdfs
namenode -format
启动 Hadoop 集群之前,先启动 HDFS 和 YARN 服务。
# 启动 HDFS
start-dfs.sh
# 启动 YARN
start-yarn.sh
确认 Hadoop 集群是否启动成功:
jps -l
如果看到 NameNode、DataNode、ResourceManager 和 NodeManager 等进程,说明 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的单节点搭建以及基础操作。小编初步上手操作,若有纰漏希望广大读者朋友指教,可以联系我们的官方公众号小客服。