You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

本地机器Hadoop Standalone Mode启动失败,权限问题求助

解决Hadoop启动时SSH权限拒绝及沙箱配置问题

从你提供的启动日志来看,当前最紧急的问题是本地SSH连接权限验证失败,导致Hadoop无法启动各个守护进程。另外你提到的沙箱内存不足问题,我也会给出对应的调整方案。

一、解决SSH权限拒绝问题

SSH无密码登录是Hadoop伪分布式/分布式模式运行的基础,以下是具体排查和解决步骤:

  • 步骤1:生成并配置SSH密钥对
    首先检查是否已有SSH密钥对,在终端执行:

    ls ~/.ssh/
    

    如果没有看到id_rsa(私钥)和id_rsa.pub(公钥)文件,执行以下命令生成密钥对(一路回车采用默认配置即可):

    ssh-keygen -t rsa
    

    接着将公钥添加到本地授权列表,确保SSH能无密码登录:

    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    # 修改权限保证安全性,否则SSH可能拒绝使用密钥
    chmod 600 ~/.ssh/authorized_keys
    chmod 700 ~/.ssh/
    
  • 步骤2:测试本地SSH连接
    执行以下命令测试是否能无密码登录localhost:

    ssh localhost
    

    如果仍然失败,先检查Mac的远程登录是否开启:打开「系统设置」→「共享」,勾选「远程登录」选项。还可以查看SSH日志排查具体错误:

    log show --predicate 'process == "sshd"' --info
    
  • 步骤3:检查Hadoop相关配置
    打开$HADOOP_HOME/etc/hadoop/workers(旧版本可能叫slaves)文件,确认里面只有一行localhost,没有错误的主机名。
    另外可以检查系统SSH配置文件/etc/ssh/ssh_config,确保包含以下配置:

    PubkeyAuthentication yes
    

二、调整沙箱内存配置

如果后续运行Hadoop任务时遇到内存不足的问题,需要调整各个守护进程的内存参数:

  • 修改Hadoop环境变量
    编辑$HADOOP_HOME/etc/hadoop/hadoop-env.sh,添加或修改以下参数(根据你的机器内存调整数值,比如2G内存可以设置为-Xms2g -Xmx2g):

    export HADOOP_NAMENODE_OPTS="-Xms2g -Xmx2g $HADOOP_NAMENODE_OPTS"
    export HADOOP_DATANODE_OPTS="-Xms1g -Xmx1g $HADOOP_DATANODE_OPTS"
    export HADOOP_RESOURCEMANAGER_OPTS="-Xms1g -Xmx1g $HADOOP_RESOURCEMANAGER_OPTS"
    
  • 调整YARN资源配置
    编辑$HADOOP_HOME/etc/hadoop/yarn-site.xml,添加以下配置(数值根据机器总内存调整,比如8G内存可以设置为6144MB):

    <property>
        <name>yarn.nodemanager.resource.memory-mb</name>
        <value>6144</value>
    </property>
    <property>
        <name>yarn.scheduler.maximum-allocation-mb</name>
        <value>6144</value>
    </property>
    

完成以上配置后,重新尝试启动Hadoop:

hstart

内容的提问来源于stack exchange,提问作者Aditya Verma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:35:09