linux虚拟机hadoop伪分布式模式配置
时间: 2025-06-05 12:14:50 浏览: 27
### 配置Hadoop伪分布式模式
要在Linux虚拟机上配置Hadoop伪分布式模式,以下是详细的说明:
#### 下载并解压Hadoop
前往Apache Hadoop官方网站下载所需版本的Hadoop压缩包[^2]。例如,可以选择稳定版`hadoop-2.7.7.tar.gz`。
```bash
wget http://www.apache.org/dist/hadoop/core/hadoop-2.7.7/hadoop-2.7.7.tar.gz
tar -xzvf hadoop-2.7.7.tar.gz
mv hadoop-2.7.7 /usr/local/hadoop
```
设置环境变量以便全局访问Hadoop命令。编辑`.bashrc`文件并添加以下内容:
```bash
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source ~/.bashrc
```
#### 安装SSH服务
由于Hadoop需要通过SSH实现节点间的通信,在单节点环境下也需要启用无密码登录功能。可以通过如下命令安装SSH服务:
```bash
sudo apt-get update
sudo apt-get install openssh-server
```
验证本地主机名解析正常后,生成SSH密钥对,并将其加入授权列表中:
```bash
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
```
测试是否可以无需输入密码即可连接到本机:
```bash
ssh localhost
exit
```
如果成功,则继续下一步;否则排查SSH配置问题。
#### 修改核心配置文件
进入Hadoop目录下的`etc/hadoop`子目录,修改必要的XML格式配置文件来支持伪分布运行方式[^3]。
##### core-site.xml
定义默认文件系统的URI地址以及临时存储路径参数:
```xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/app/hadoop/tmp</value>
</property>
</configuration>
```
##### hdfs-site.xml
指定NameNode和DataNode的数据保存位置以及其他副本策略选项:
```xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/app/hadoop/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/app/hadoop/datanode</value>
</property>
</configuration>
```
##### mapred-site.xml
将MapReduce框架切换至YARN执行引擎而非经典JobTracker模型:
```xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
```
##### yarn-site.xml
调整ResourceManager监听端口及其他资源调度器相关属性设定:
```xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
</configuration>
```
完成上述更改之后重启计算机或者重新加载shell会话以使新设生效。
最后初始化HDFS名称空间结构树形图谱并通过启动脚本来激活所有组件进程:
```bash
/usr/local/hadoop/bin/hdfs namenode -format
start-dfs.sh
start-yarn.sh
jps
```
利用`jps`指令确认当前Java进程中是否存在下列几项实例即表明部署完毕:`NameNode`, `DataNode`, `SecondaryNameNode`, `ResourceManager`, 和 `NodeManager`.
---
###
阅读全文
相关推荐


















