Hadoop2.4.1伪分布式如何配置

发布时间:2021-12-07 14:29:58 作者:小新
来源:亿速云 阅读:165
# Hadoop2.4.1伪分布式如何配置

## 前言

Hadoop作为Apache基金会的开源分布式计算框架,已成为大数据处理领域的基石技术。伪分布式模式是学习Hadoop的重要环节,它在一台机器上模拟多节点集群的行为。本文将详细介绍Hadoop 2.4.1伪分布式的完整配置过程,涵盖环境准备、配置修改、服务启动及验证等关键步骤。

---

## 一、环境准备

### 1.1 系统要求
- **操作系统**:推荐Linux(Ubuntu/CentOS等)或Mac OS
- **Java环境**:JDK 1.7或更高版本
- **SSH服务**:需配置免密登录
- **硬盘空间**:至少10GB可用空间

### 1.2 软件下载
```bash
wget https://archive.apache.org/dist/hadoop/core/hadoop-2.4.1/hadoop-2.4.1.tar.gz
tar -xzvf hadoop-2.4.1.tar.gz
mv hadoop-2.4.1 /usr/local/hadoop

1.3 环境变量配置

编辑~/.bashrc文件:

export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64  # 根据实际路径修改

使配置生效:

source ~/.bashrc

二、Hadoop配置文件修改

2.1 核心配置文件

编辑$HADOOP_HOME/etc/hadoop/core-site.xml

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/tmp/hadoop/tmp</value>
    </property>
</configuration>

2.2 HDFS配置文件

编辑$HADOOP_HOME/etc/hadoop/hdfs-site.xml

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>  <!-- 伪分布式设置为1 -->
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/tmp/hadoop/namenode</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/tmp/hadoop/datanode</value>
    </property>
</configuration>

2.3 YARN配置文件

编辑$HADOOP_HOME/etc/hadoop/yarn-site.xml

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

2.4 MapReduce配置文件

复制模板文件并编辑:

cp mapred-site.xml.template mapred-site.xml

修改内容:

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

三、SSH免密登录配置

3.1 生成密钥对

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

3.2 授权密钥

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

3.3 验证配置

ssh localhost
# 应无需密码直接登录

四、HDFS初始化与启动

4.1 格式化NameNode

hdfs namenode -format

成功输出应包含:

Storage directory /tmp/hadoop/namenode has been successfully formatted

4.2 启动HDFS服务

start-dfs.sh

验证进程:

jps
# 应显示:
# NameNode
# DataNode
# SecondaryNameNode

4.3 创建HDFS目录

hdfs dfs -mkdir -p /user/$USER/input

五、YARN服务启动

5.1 启动YARN

start-yarn.sh

验证进程:

jps
# 新增:
# ResourceManager
# NodeManager

5.2 访问Web UI


六、运行测试案例

6.1 上传测试文件

echo "Hello Hadoop" > test.txt
hdfs dfs -put test.txt /user/$USER/input

6.2 运行WordCount

hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.4.1.jar \
wordcount /user/$USER/input /user/$USER/output

6.3 查看结果

hdfs dfs -cat /user/$USER/output/part-r-00000
# 输出应包含:
# Hello 1
# Hadoop 1

七、常见问题解决

7.1 端口冲突

错误现象:

java.net.BindException: Port in use

解决方案:

netstat -tulnp | grep <端口号>
kill -9 <进程ID>

7.2 权限问题

错误现象:

Permission denied (publickey)

解决方案:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/*

7.3 资源不足

错误现象:

There are 0 datanode(s) running

解决方案:

rm -rf /tmp/hadoop/*  # 清除临时文件后重新格式化

八、服务停止与清理

8.1 停止服务

stop-yarn.sh
stop-dfs.sh

8.2 清理数据

rm -rf /tmp/hadoop/
hdfs dfs -rm -r /user/$USER/output

结语

通过本文的详细步骤,您已成功搭建Hadoop 2.4.1伪分布式环境。这种配置方式既保留了分布式系统的特性,又简化了学习成本,是掌握Hadoop核心机制的理想起点。建议后续通过实际项目进一步探索MapReduce编程、YARN资源调度等高级特性。

注意事项: 1. 生产环境请勿使用/tmp目录存储数据 2. 建议定期备份namenode元数据 3. 不同Hadoop版本配置可能存在差异 “`

注:本文实际约3000字,完整4000字版本可扩展以下内容: 1. 各配置参数的详细解释(扩展每个XML配置节的说明) 2. 安全模式配置(Kerberos集成) 3. 性能调优建议(JVM参数、内存配置等) 4. 监控方案(Ganglia/Nagios集成) 5. 与Hive/HBase等组件的整合配置

推荐阅读:
  1. hbase0.98.8源码编译(基于hadoop2.4.1)
  2. hadoop2.4.1结合hbase0.96.2

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

hadoop

上一篇:Typora自动编号的具体操作是怎样的

下一篇:Apache Storm集群如何配置

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》