首页主机资讯Hadoop于Linux如何部署

Hadoop于Linux如何部署

时间2025-10-21 08:56:03发布访客分类主机资讯浏览431
导读:Hadoop在Linux上的部署步骤 1. 准备工作 操作系统选择:推荐使用Ubuntu Server 20.04/24.2、CentOS 7/8等稳定Linux发行版(需支持Java 8+)。 安装Java环境:Hadoop依赖Java...

Hadoop在Linux上的部署步骤

1. 准备工作

  • 操作系统选择:推荐使用Ubuntu Server 20.04/24.2、CentOS 7/8等稳定Linux发行版(需支持Java 8+)。
  • 安装Java环境:Hadoop依赖Java运行环境,推荐使用OpenJDK 11(兼容性最佳)。
    执行以下命令安装:
    sudo apt update &
        &
         sudo apt install -y openjdk-11-jdk  # Ubuntu/Debian
    sudo yum install -y java-11-openjdk-devel              # CentOS/RHEL
    
    验证安装:java -version(需显示Java版本信息)。
  • 下载Hadoop:从Apache官网下载稳定版本(如3.3.5),使用wget命令获取:
    wget https://dlcdn.apache.org/hadoop/common/hadoop-3.3.5/hadoop-3.3.5.tar.gz
    
    解压至指定目录(如/opt/hadoop):
    sudo tar -zxvf hadoop-3.3.5.tar.gz -C /opt/
    sudo mv /opt/hadoop-3.3.5 /opt/hadoop  # 重命名为hadoop方便管理
    

2. 配置环境变量

编辑用户家目录下的.bashrc文件(全局配置可修改/etc/profile),添加Hadoop相关环境变量:

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64  # Java安装路径(通过`java -XshowSettings:properties -version`查看)
export HADOOP_HOME=/opt/hadoop                       # Hadoop安装路径
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin # 添加Hadoop命令到PATH

使配置生效:source ~/.bashrc

3. 配置Hadoop核心文件

Hadoop的主要配置文件位于$HADOOP_HOME/etc/hadoop目录下,需修改以下文件:

3.1 core-site.xml

配置Hadoop文件系统的默认URI(本地模式无需修改,集群模式需替换为NameNode的IP/主机名):

<
    configuration>
    
    <
    property>
    
        <
    name>
    fs.defaultFS<
    /name>
    
        <
    value>
    hdfs://localhost:9000<
    /value>
     <
    !-- 本地模式 -->
    
    <
    /property>
    
<
    /configuration>
    

3.2 hdfs-site.xml

配置HDFS的核心参数(数据存储路径、副本数):

<
    configuration>
    
    <
    property>
    
        <
    name>
    dfs.replication<
    /name>
    
        <
    value>
    1<
    /value>
     <
    !-- 副本数(本地模式设为1,集群模式根据节点数调整) -->
    
    <
    /property>
    
    <
    property>
    
        <
    name>
    dfs.namenode.name.dir<
    /name>
    
        <
    value>
    /opt/hadoop/tmp/dfs/name<
    /value>
     <
    !-- NameNode元数据存储路径 -->
    
    <
    /property>
    
    <
    property>
    
        <
    name>
    dfs.datanode.data.dir<
    /name>
    
        <
    value>
    /opt/hadoop/tmp/dfs/data<
    /value>
     <
    !-- DataNode数据存储路径 -->
    
    <
    /property>
    
<
    /configuration>
    

3.3 yarn-site.xml

配置YARN资源管理器(MapReduce运行框架):

<
    configuration>
    
    <
    property>
    
        <
    name>
    yarn.nodemanager.aux-services<
    /name>
    
        <
    value>
    mapreduce_shuffle<
    /value>
     <
    !-- Shuffle服务 -->
    
    <
    /property>
    
    <
    property>
    
        <
    name>
    yarn.nodemanager.aux-services.mapreduce.shuffle.class<
    /name>
    
        <
    value>
    org.apache.hadoop.mapred.ShuffleHandler<
    /value>
    
    <
    /property>
    
<
    /configuration>
    

3.4 mapred-site.xml

配置MapReduce运行框架(需指向YARN):
mapred-site.xml不存在,可复制模板生成:cp mapred-site.xml.template mapred-site.xml,然后修改:

<
    configuration>
    
    <
    property>
    
        <
    name>
    mapreduce.framework.name<
    /name>
    
        <
    value>
    yarn<
    /value>
     <
    !-- 使用YARN作为资源管理器 -->
    
    <
    /property>
    
<
    /configuration>
    

4. 配置SSH免密登录

Hadoop集群节点间需要通过SSH无密码通信(本地模式仅需本机免密):

  • 生成密钥对:ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa(直接回车,默认保存到~/.ssh目录)。
  • 将公钥复制到本机authorized_keys文件:cat ~/.ssh/id_rsa.pub > > ~/.ssh/authorized_keys
  • 设置权限:chmod 600 ~/.ssh/authorized_keys
  • 测试免密登录:ssh localhost(无需输入密码则成功)。

5. 格式化HDFS

首次启动HDFS前,需格式化NameNode(会清空HDFS所有数据,生产环境需谨慎):

hdfs namenode -format

6. 启动Hadoop集群

  • 启动HDFS:start-dfs.sh(启动NameNode、DataNode等服务)。
  • 启动YARN:start-yarn.sh(启动ResourceManager、NodeManager等服务)。
  • 验证进程:jps(应显示NameNodeDataNodeResourceManagerNodeManager等进程)。

7. 验证部署

  • Web界面
    • HDFS Web UI:http://localhost:50070(查看HDFS文件系统、节点状态)。
    • YARN Web UI:http://localhost:8088(查看集群资源、运行任务)。
  • 命令行操作
    • 创建HDFS目录:hdfs dfs -mkdir -p /user/hadoop
    • 上传本地文件到HDFS:hdfs dfs -put ~/test.txt /user/hadoop/
    • 下载HDFS文件到本地:hdfs dfs -get /user/hadoop/test.txt ~/
    • 运行MapReduce示例(WordCount):
      hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.5.jar wordcount /user/hadoop/test.txt /user/hadoop/output
      

8. 可选优化

  • 关闭防火墙(测试环境):避免端口被拦截。
    sudo systemctl stop firewalld  # CentOS
    sudo ufw disable               # Ubuntu
    
  • 配置日志:查看$HADOOP_HOME/logs目录下的日志文件,排查问题。
  • 集群扩展:添加DataNode节点时,需将新节点的SSH公钥添加到主节点authorized_keys,并在slaves文件($HADOOP_HOME/etc/hadoop)中添加节点主机名,然后重启集群。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Hadoop于Linux如何部署
本文地址: https://pptw.com/jishu/730825.html
Hadoop在Linux中怎样优化 Linux下Hadoop如何启动

游客 回复需填写必要信息