首页主机资讯如何在 Ubuntu 上部署 Hadoop 生态系统

如何在 Ubuntu 上部署 Hadoop 生态系统

时间2025-10-04 20:02:03发布访客分类主机资讯浏览1377
导读:1. 环境准备 硬件要求:单节点伪分布式部署需至少4GB内存、50GB硬盘;多节点完全分布式部署建议每节点8GB以上内存、100GB以上硬盘,所有节点需在同一局域网且能互相通信。 操作系统:Ubuntu Server 16.04 LTS及...

1. 环境准备

  • 硬件要求:单节点伪分布式部署需至少4GB内存、50GB硬盘;多节点完全分布式部署建议每节点8GB以上内存、100GB以上硬盘,所有节点需在同一局域网且能互相通信。
  • 操作系统:Ubuntu Server 16.04 LTS及以上版本(推荐22.04 LTS,兼容性更好)。

2. 安装与配置Java环境 Hadoop依赖Java 8或更高版本(推荐OpenJDK 11),需先安装并配置环境变量:

sudo apt update
sudo apt install -y openjdk-11-jdk  # 安装OpenJDK 11
java -version  # 验证安装(需显示Java版本信息)

配置环境变量:编辑~/.bashrc文件,添加以下内容:

export JAVA_HOME=$(dirname $(dirname $(readlink $(readlink $(which javac)))))  # 自动获取Java安装路径
export PATH=$JAVA_HOME/bin:$PATH

使配置生效:

source ~/.bashrc

3. 下载与解压Hadoop 从Apache官网下载稳定版本(如3.3.6),解压至/usr/local目录:

wget https://downloads.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
sudo tar -xzf hadoop-3.3.6.tar.gz -C /usr/local/
sudo mv /usr/local/hadoop-3.3.6 /usr/local/hadoop  # 重命名为hadoop方便管理
sudo chown -R $USER:$USER /usr/local/hadoop  # 修改所有权为当前用户

4. 配置Hadoop环境变量 编辑~/.bashrc文件,添加Hadoop路径:

export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

使配置生效:

source ~/.bashrc

5. 配置Hadoop核心文件 Hadoop配置文件位于$HADOOP_HOME/etc/hadoop目录,需修改以下文件:

  • core-site.xml(HDFS默认文件系统):
    <
        configuration>
        
        <
        property>
        
            <
        name>
        fs.defaultFS<
        /name>
        
            <
        value>
        hdfs://localhost:9000<
        /value>
          # 伪分布式用localhost,集群用主节点主机名
        <
        /property>
        
        <
        property>
        
            <
        name>
        hadoop.tmp.dir<
        /name>
        
            <
        value>
        /usr/local/hadoop/tmp<
        /value>
          # 临时目录,需提前创建
        <
        /property>
        
    <
        /configuration>
        
    
  • hdfs-site.xml(HDFS配置):
    <
        configuration>
        
        <
        property>
        
            <
        name>
        dfs.replication<
        /name>
        
            <
        value>
        1<
        /value>
          # 伪分布式副本数为1,集群根据节点数调整(如3)
        <
        /property>
        
        <
        property>
        
            <
        name>
        dfs.namenode.name.dir<
        /name>
        
            <
        value>
        /usr/local/hadoop/data/namenode<
        /value>
          # NameNode元数据目录
        <
        /property>
        
        <
        property>
        
            <
        name>
        dfs.datanode.data.dir<
        /name>
        
            <
        value>
        /usr/local/hadoop/data/datanode<
        /value>
          # DataNode数据目录
        <
        /property>
        
    <
        /configuration>
        
    
  • mapred-site.xml(MapReduce配置,需先复制模板文件):
    cp mapred-site.xml.template mapred-site.xml
    
    编辑内容:
    <
        configuration>
        
        <
        property>
        
            <
        name>
        mapreduce.framework.name<
        /name>
        
            <
        value>
        yarn<
        /value>
          # 使用YARN作为资源管理器
        <
        /property>
        
    <
        /configuration>
        
    
  • yarn-site.xml(YARN配置):
    <
        configuration>
        
        <
        property>
        
            <
        name>
        yarn.resourcemanager.hostname<
        /name>
        
            <
        value>
        localhost<
        /value>
          # 集群中ResourceManager所在节点主机名
        <
        /property>
        
        <
        property>
        
            <
        name>
        yarn.nodemanager.aux-services<
        /name>
        
            <
        value>
        mapreduce_shuffle<
        /value>
          # Shuffle服务支持
        <
        /property>
        
        <
        property>
        
            <
        name>
        yarn.nodemanager.resource.memory-mb<
        /name>
        
            <
        value>
        4096<
        /value>
          # NodeManager可用内存(根据节点配置调整)
        <
        /property>
        
    <
        /configuration>
        
    

6. 格式化HDFS 首次启动前需格式化HDFS(会清空所有数据,仅第一次需要):

hdfs namenode -format

7. 启动Hadoop集群 启动HDFS和YARN服务:

start-dfs.sh  # 启动HDFS(NameNode、DataNode)
start-yarn.sh  # 启动YARN(ResourceManager、NodeManager)

8. 验证集群状态

  • 查看进程:运行jps命令,应显示以下进程:
    • NameNode(主节点)
    • DataNode(主节点或数据节点)
    • ResourceManager(主节点)
    • NodeManager(主节点或数据节点)
  • 访问Web界面
    • HDFS NameNode:http://localhost:9870(Hadoop 3.x版本端口)
    • YARN ResourceManager:http://localhost:8088

9. (可选)配置SSH无密码登录(集群必备) 若部署多节点集群,需配置主节点到所有从节点的无密码SSH登录:

ssh-keygen -t rsa  # 生成密钥对(直接回车)
ssh-copy-id hadoop@slave1  # 将公钥复制到从节点(slave1替换为实际主机名/IP)
ssh hadoop@slave1  # 测试无密码登录(无需输入密码)

10. 部署后续步骤

  • 扩展集群:将上述步骤复制到从节点,修改core-site.xml中的fs.defaultFS为主节点主机名,slaves文件(位于$HADOOP_HOME/etc/hadoop)中添加从节点主机名。
  • 优化配置:根据节点资源调整yarn.nodemanager.resource.memory-mb(内存)、dfs.replication(副本数)等参数。
  • 安装生态工具:如Hive(数据仓库)、Spark(内存计算)、HBase(NoSQL数据库),可通过类似方式下载、配置环境变量并启动。

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


若转载请注明出处: 如何在 Ubuntu 上部署 Hadoop 生态系统
本文地址: https://pptw.com/jishu/720486.html
如何配置 Ubuntu Hadoop 的 YARN Ubuntu Hadoop 高可用性如何设置

游客 回复需填写必要信息