linux

Hadoop Linux版如何配置集群

小樊
50
2025-10-12 05:02:33
栏目: 智能运维

Hadoop Linux版集群配置指南

1. 前期环境准备

2. 安装Java环境

Hadoop依赖Java 8或更高版本(推荐OpenJDK):

3. 下载并解压Hadoop

4. 配置Hadoop核心文件

所有配置文件位于$HADOOP_HOME/etc/hadoop目录下,需修改以下关键文件:

4.1 hadoop-env.sh

修改JAVA_HOME指向已安装的Java路径:export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk(根据实际路径调整)。

4.2 core-site.xml

配置HDFS的默认文件系统和临时目录:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://namenode:9000</value> <!-- 主节点主机名:端口 -->
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/export/data/hadoop/tmp</value> <!-- 临时文件存储路径 -->
    </property>
</configuration>

4.3 hdfs-site.xml

配置HDFS副本数(生产环境建议3)和数据目录:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>2</value> <!-- 副本数(从节点数量+1) -->
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/export/data/hadoop/hdfs/namenode</value> <!-- NameNode元数据目录 -->
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/export/data/hadoop/hdfs/datanode</value> <!-- DataNode数据目录 -->
    </property>
</configuration>

4.4 yarn-site.xml

配置YARN资源管理器和shuffle服务:

<configuration>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>namenode</value> <!-- ResourceManager所在节点 -->
    </property>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value> <!-- MapReduce shuffle服务 -->
    </property>
</configuration>

4.5 mapred-site.xml

创建mapred-site.xml(若不存在,可复制mapred-site.xml.template):

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value> <!-- 使用YARN作为资源管理器 -->
    </property>
    <property>
        <name>mapreduce.application.classpath</name>
        <value>$HADOOP_HOME/share/hadoop/mapreduce/*:$HADOOP_HOME/share/hadoop/mapreduce/lib/*</value> <!-- MapReduce类路径 -->
    </property>
</configuration>

4.6 workers文件

指定从节点主机名(每行一个):

datanode1
datanode2

该文件用于Hadoop自动识别从节点。

5. 配置SSH免密登录

实现主节点到从节点的无密码通信:

6. 分发配置文件到从节点

将主节点的Hadoop目录复制到所有从节点(确保路径一致):

scp -r /export/servers/hadoop-3.3.4 hadoop@datanode1:/export/servers/
scp -r /export/servers/hadoop-3.3.4 hadoop@datanode2:/export/servers/

分发后,需在从节点上同样配置workers文件(内容与主节点一致)。

7. 格式化NameNode

仅在首次启动集群前执行,用于初始化HDFS元数据:

hdfs namenode -format

执行成功后会显示Successfully formatted,表示格式化完成。

8. 启动集群

9. 验证集群状态

常见问题排查

0
看了该问题的人还看了