hadoop2.5.1如何安装到虚拟机

发布时间:2021-11-12 14:06:27 作者:小新
来源:亿速云 阅读:249
# Hadoop 2.5.1如何安装到虚拟机

## 前言

在大数据技术快速发展的今天,Hadoop作为分布式系统基础架构的核心框架,已成为企业处理海量数据的首选工具。本文将详细介绍如何在虚拟机环境中安装Hadoop 2.5.1版本,帮助初学者快速搭建自己的大数据学习环境。

## 环境准备

### 1. 虚拟机软件选择
推荐使用以下两种主流虚拟机软件:
- **VMware Workstation**(15+版本)
- **VirtualBox**(6.0+版本)

### 2. 操作系统选择
建议使用CentOS 7.x或Ubuntu 18.04 LTS作为基础系统,本文以CentOS 7.6为例。

### 3. 硬件资源配置
最低配置要求:
- 内存:4GB(建议8GB+)
- 硬盘:40GB
- CPU:2核(支持虚拟化技术)

## 虚拟机环境搭建

### 1. 创建新虚拟机
1. 打开VMware Workstation
2. 选择"创建新的虚拟机"
3. 选择"典型"安装类型
4. 选择稍后安装操作系统
5. 选择Linux → CentOS 7 64位
6. 设置虚拟机名称和存储位置
7. 分配磁盘空间(建议40GB)
8. 完成创建

### 2. 安装CentOS系统
1. 挂载CentOS 7.6 ISO镜像
2. 启动虚拟机进入安装界面
3. 选择"Install CentOS 7"
4. 配置语言和时区(建议选择英文)
5. 配置安装目标(自动分区即可)
6. 设置root密码(建议设置强密码)
7. 创建普通用户(可选)
8. 等待安装完成并重启

### 3. 基础环境配置
```bash
# 更新系统
sudo yum update -y

# 安装必要工具
sudo yum install -y vim wget net-tools openssh-server

# 关闭防火墙
sudo systemctl stop firewalld
sudo systemctl disable firewalld

# 禁用SELinux
sudo setenforce 0
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

Java环境安装

Hadoop运行需要Java环境支持,推荐安装JDK 1.8:

# 下载JDK
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm

# 安装JDK
sudo rpm -ivh jdk-8u131-linux-x64.rpm

# 配置环境变量
echo 'export JAVA_HOME=/usr/java/jdk1.8.0_131' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

# 验证安装
java -version

配置SSH免密登录

Hadoop集群节点间需要通过SSH通信,配置免密登录:

# 生成密钥对
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

# 将公钥加入授权文件
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

# 修改权限
chmod 0600 ~/.ssh/authorized_keys

# 测试SSH连接
ssh localhost

Hadoop安装与配置

1. 下载Hadoop 2.5.1

wget https://archive.apache.org/dist/hadoop/core/hadoop-2.5.1/hadoop-2.5.1.tar.gz

# 解压到/usr/local目录
sudo tar -zxvf hadoop-2.5.1.tar.gz -C /usr/local/
sudo mv /usr/local/hadoop-2.5.1 /usr/local/hadoop

2. 配置环境变量

echo 'export HADOOP_HOME=/usr/local/hadoop' >> ~/.bashrc
echo 'export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin' >> ~/.bashrc
source ~/.bashrc

3. 修改Hadoop配置文件

core-site.xml

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

hdfs-site.xml

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/usr/local/hadoop/hdfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/usr/local/hadoop/hdfs/data</value>
    </property>
</configuration>

mapred-site.xml

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

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>

hadoop-env.sh

export JAVA_HOME=/usr/java/jdk1.8.0_131
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop

4. 创建必要的目录

mkdir -p /usr/local/hadoop/tmp
mkdir -p /usr/local/hadoop/hdfs/name
mkdir -p /usr/local/hadoop/hdfs/data

启动Hadoop集群

1. 格式化HDFS

hdfs namenode -format

2. 启动HDFS

start-dfs.sh

3. 启动YARN

start-yarn.sh

4. 验证服务

jps

应该看到以下进程: - NameNode - DataNode - ResourceManager - NodeManager - SecondaryNameNode

访问Web界面

  1. NameNode状态http://localhost:50070
  2. ResourceManagerhttp://localhost:8088

运行测试程序

1. 创建HDFS目录

hdfs dfs -mkdir /input
hdfs dfs -put $HADOOP_HOME/etc/hadoop/*.xml /input

2. 运行MapReduce示例

hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.1.jar grep /input /output 'dfs[a-z.]+'

3. 查看结果

hdfs dfs -cat /output/*

常见问题解决

1. JAVA_HOME未设置

错误现象:启动时提示”JAVA_HOME is not set” 解决方案:确认hadoop-env.sh中的JAVA_HOME配置正确

2. 端口冲突

错误现象:服务启动失败 解决方案:

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

3. 磁盘空间不足

错误现象:DataNode无法启动 解决方案:清理磁盘空间或增加虚拟机磁盘大小

4. 权限问题

错误现象:Permission denied 解决方案:

sudo chown -R <用户名>:<组名> /usr/local/hadoop

性能优化建议

  1. 内存配置:根据虚拟机实际内存调整

    • 修改yarn-site.xml中的yarn.nodemanager.resource.memory-mb
    • 修改mapred-site.xml中的mapreduce.map.memory.mb和mapreduce.reduce.memory.mb
  2. JVM参数:在hadoop-env.sh中调整

    export HADOOP_HEAPSIZE=2048
    
  3. 数据目录:将数据目录挂载到独立磁盘

集群扩展(可选)

如需扩展为多节点集群: 1. 克隆虚拟机 2. 修改每台主机的hostname和/etc/hosts 3. 配置主从节点的SSH免密登录 4. 修改配置文件中的localhost为主节点主机名 5. 在slaves文件中添加所有从节点主机名

总结

通过本文的详细步骤,您已成功在虚拟机中搭建了Hadoop 2.5.1单节点环境。这个环境可以用于: - Hadoop学习与实验 - MapReduce程序开发测试 - HDFS基本操作练习

建议下一步: 1. 尝试编写简单的MapReduce程序 2. 学习HDFS的高级操作 3. 探索YARN资源管理机制 4. 扩展为多节点集群环境

附录

1. 参考文档

2. 相关工具下载

”`

推荐阅读:
  1. hadoop2.5.1与hbase1.2.1才是搭档其中要用
  2. 安卓webview

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

hadoop 虚拟机

上一篇:HDFS怎么安装

下一篇:Django中的unittest应用是什么

相关阅读

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

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