hdfs伪分布式部署
时间: 2025-05-24 10:18:55 浏览: 19
### HDFS 伪分布式部署配置教程
#### 1. 创建 Hadoop 用户
为了保持系统干净并避免权限冲突,建议为 Hadoop 创建一个专用用户。以下是具体操作步骤:
```bash
sudo useradd -m hadoop -s /bin/bash
sudo passwd hadoop
sudo adduser hadoop sudo
```
完成上述命令后,需切换至 `hadoop` 用户以继续后续操作[^4]。
#### 2. 更新 Apt 和安装 SSH
确保系统的 APT 软件包管理器是最新的,并安装必要的工具如 SSH Server:
```bash
sudo apt-get update
sudo apt-get install openssh-server
ssh localhost
```
在首次连接时,输入 `yes` 接受密钥交换,并提供密码完成登录。随后可通过以下命令实现无密码登录配置:
```bash
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
```
这一步骤允许在同一台机器上模拟分布式环境中的节点通信[^4]。
#### 3. 安装 Java 环境
Hadoop 需要依赖于 Java 环境才能运行。推荐安装 OpenJDK 或 Oracle JDK 版本之一。例如,使用以下命令安装 OpenJDK:
```bash
sudo apt-get install openjdk-8-jdk
java -version
```
确认已正确安装 Java 后,还需设置 `JAVA_HOME` 环境变量以便 Hadoop 正常识别 Java 路径。编辑 `.bashrc` 文件并将以下内容追加进去:
```bash
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin
source ~/.bashrc
```
#### 4. 下载与解压 Hadoop
前往 Apache 官方网站或其他可信源下载最新稳定版 Hadoop 压缩包。假定将其放置于 `/tmp` 目录,则执行如下指令完成解压及重命名过程:
```bash
tar -zvxf /tmp/hadoop-*.tar.gz -C /usr/local/
mv /usr/local/hadoop-* /usr/local/hadoop
chown -R hadoop:hadoop /usr/local/hadoop
```
至此,已完成基本准备工作[^3]。
#### 5. 编辑核心配置文件
进入 Hadoop 的配置目录 (`/usr/local/hadoop/etc/hadoop`) 对几个重要 XML 文件作出调整。
##### (a) **core-site.xml**
设定 NameNode 地址及其存储路径参数:
```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>
```
##### (b) **hdfs-site.xml**
规定副本数量以及其他必要选项:
```xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
```
##### (c) **mapred-site.xml**
此文档通常不存在,默认名为模板形式存在即 `mapred-site.xml.template` ,复制一份再修改之:
```bash
cp mapred-site.xml.template mapred-site.xml
```
接着填入框架类型字段值设为 YARN :
```xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
```
##### (d) **yarn-site.xml**
最后针对资源调度部分做相应改动:
```xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
```
#### 6. 初始化 HDFS 文件系统
切换回到 hadoop 用户身份之后,利用下面这条语句初始化磁盘结构布局:
```bash
/usr/local/hadoop/bin/hdfs namenode -format
```
#### 7. 启动服务
依次开启各个组件的服务程序:
```bash
start-dfs.sh
start-yarn.sh
mr-jobhistory-daemon.sh start historyserver
```
此时可以通过浏览器访问两个 URL 页面来观察集群状况:
- Namenode WebUI: http://localhost:50070/
- ResourceManager WebUI: http://localhost:8088/
另外借助 jps 工具也可以直观看到正在运作的关键线程列表,像 DataNode, NodeManager, SecondaryNameNode 等等都应该可见[^1]。
---
###
阅读全文
相关推荐


















