ubuntuhadoop完全分布式搭建
时间: 2024-12-20 09:08:55 浏览: 4
在Ubuntu上搭建完全分布式的Hadoop集群是一个相对复杂的过程,但通过以下步骤可以顺利完成:
### 1. 环境准备
确保所有节点(主节点和从节点)都安装了Ubuntu操作系统,并且网络互通。以下步骤假设你已经有一个主节点和多个从节点。
### 2. 安装Java
Hadoop依赖于Java,因此需要在所有节点上安装Java。
```bash
sudo apt update
sudo apt install openjdk-8-jdk -y
```
验证Java安装:
```bash
java -version
```
### 3. 创建Hadoop用户
在所有节点上创建一个专门用于运行Hadoop的用户。
```bash
sudo adduser hadoop
sudo adduser hadoop sudo
```
### 4. 配置SSH无密码登录
Hadoop需要通过SSH进行节点间的通信,因此需要配置无密码登录。
```bash
su - hadoop
ssh-keygen -t rsa
ssh-copy-id hadoop@master
ssh-copy-id hadoop@slave1
ssh-copy-id hadoop@slave2
```
### 5. 下载并安装Hadoop
下载Hadoop并解压到指定目录。
```bash
wget https://downloads.apache.org/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.tar.gz
tar -xzvf hadoop-3.3.1.tar.gz
sudo mv hadoop-3.3.1 /usr/local/hadoop
```
### 6. 配置环境变量
在所有节点的`~/.bashrc`文件中添加以下内容:
```bash
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
```
使配置生效:
```bash
source ~/.bashrc
```
### 7. 配置Hadoop
编辑`$HADOOP_HOME/etc/hadoop/hadoop-env.sh`文件,设置Java路径:
```bash
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
```
编辑`core-site.xml`文件:
```xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
</configuration>
```
编辑`hdfs-site.xml`文件:
```xml
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/local/hadoop/data/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/local/hadoop/data/datanode</value>
</property>
</configuration>
```
编辑`mapred-site.xml`文件:
```xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
```
编辑`yarn-site.xml`文件:
```xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
```
编辑`workers`文件,添加所有从节点:
```
slave1
slave2
```
### 8. 启动Hadoop集群
在主节点上格式化HDFS:
```bash
hdfs namenode -format
```
启动Hadoop集群:
```bash
start-dfs.sh
start-yarn.sh
```
### 9. 验证安装
访问主节点的Web界面(http://master:9870)查看HDFS状态,访问(http://master:8088)查看YARN状态。
阅读全文