CentOS7安装hadoop2.7.3-单机版

本文详细介绍了如何在CentOS7环境下,使用OpenJDK1.8进行Hadoop2.7.3的单机版安装与配置。从环境准备到Hadoop的完全安装,包括防火墙关闭、SSH免密登录、环境变量设置、各配置文件详解,直至最终的启动验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装版本

操作系统:CentOS7 64位

IP地址:192.168.43.61

Hadoop版本:2.7.3

JDK版本:OpenJDK 1.8 64位

OpenJDK安装

使用yum安装OpenJDK1.8,参看博客:Linux下OpenJDK安装

安装完毕后要配置好环境变量,这里设置全局的环境变量,即修改 /etc/profile 文件

环境准备

  1. 关闭防火墙并设置开机禁用(单机版通常是学习用的,因此这里直接简单粗暴将防火墙关闭)
    systemctl stop firewalld.service
    systemctl disable firewalld.service
    
  2. 配置hosts
    vim /etc/hosts
    
    #输入如下内容
    192.168.43.61 hmaster
    
  3. 创建hadoop用户并设置密码(这里设置为hadoop/123456)
    useradd hadoop
    passwd hadoop
    
  4. 查看是否安装了ssh客户端,若未安装,则必须先安装
    # 查看是否安装ssh客户端
    rpm -qa|grep ssh
    
    # 安装ssh客户端命令
    yum install openssh-clients.x86_64
    
    在这里插入图片描述
  5. 校验ssh登录
    ssh localhost
    
    在这里插入图片描述

hadoop安装

  1. 下载 hadoop-2.7.3.tar.gz,下载地址:https://archive.apache.org/dist/hadoop/common/
  2. 切换到hadoop用户,将hadoop-2.7.3.tar.gz上传、解压、配置环境变量
    su hadoop
    cd /home/hadoop
    tar -zxvf hadoop-2.7.3.tar.gz
    
    su root
    vim /etc/profile
    # 输入如下内容后保存
    export HADOOP_HOME=/home/hadoop/hadoop-2.7.3
    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
    
    source /etc/profile
    
  3. 配置hadoop运行环境文件 hadoop-env.sh
    su hadoop
    vim /home/hadoop/hadoop-2.7.3/etc/hadoop/hadoop-env.sh
    
    # 指定java主目录
    export JAVA_HOME=/usr/lib/jvm/java-1.8.0
    
  4. 配置 core-site.xml
    vim /home/hadoop/hadoop-2.7.3/etc/hadoop/core-site.xml
    
    <!-- 输入如下内容 -->
    <configuration>
      <!-- NameNode位置 -->
      <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hmaster:9000</value>
      </property>
      <!-- 临时目录 -->
      <property>
        <name>hadoop.tmp.dir</name>
        <value>/home/hadoop/hadoop-2.7.3/tmp</vaue>
      </property>
    </configuration>
    
  5. 配置 hdfs-site.xml
    vim /home/hadoop/hadoop-2.7.3/etc/hadoop/hdfs-site.xml
    
    <!-- 输入如下内容 -->
    <configuration>
      <!-- hdfs副本数 -->
      <property>
        <name>dfs.replication</name>
        <value>1<value>
      </property>
    </configuration>
    
  6. 配置 mapred-site.xml
    cp /home/hadoop/hadoop-2.7.3/etc/hadoop/mapred-site.xml.template /home/hadoop/hadoop-2.7.3/etc/hadoop/mapred-site.xml
    vim /home/hadoop/hadoop-2.7.3/etc/hadoop/mapred-site.xml
    
    <!-- 输入如下内容 -->
    <configuration>
      <!-- 设置MapReduce运行在Yarn上 -->
      <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
      </property>
    </configuration>
    
  7. 配置 hdfs-site.xml
    vim /home/hadoop/hadoop-2.7.3/etc/hadoop/yarn-site.xml
    
    <!-- 输入如下内容 -->
    <configuration>
      <!-- 指定YARN的老大(ResourceManager)的地址  -->
      <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>hmaster</value>
      </property>
      <!-- reducer获取数据的方式  -->
      <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
      </property>
    </configuration>
    
  8. 格式化NameNode
    su hadoop
    hdfs namenode -format
    
    在这里插入图片描述
  9. 免密登录
    su hadoop
    
    ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
    cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
    chmod 0600 ~/.ssh/authorized_keys
    
  10. 启动
    start-all.sh
    
    在这里插入图片描述

验证

查看进程号:jps
在这里插入图片描述
访问NameNode:http://192.168.43.61:8088
在这里插入图片描述
访问hdfs:http://192.168.43.61:50070
在这里插入图片描述

参考

官方手册:Hadoop: Setting up a Single Node Cluster

### 安装配置Hadoop 2.7.3CentOS 7 #### 准备工作 确保所有服务器的时间保持一致,这可以通过NTP服务来实现。关闭防火墙和服务隔离设置以减少网络通信障碍。 #### 卸载原有JDK版本 由于CentOS可能预装了OpenJDK, 需要先将其移除再安装适合Hadoop运行环境所需的Oracle JDK[^3]: ```bash sudo yum remove java* ``` #### 下载安装Java Development Kit (JDK) 获取最新版的JDK压缩包,并按照如下命令完成部署: ```bash cd /opt/ wget --no-check-certificate --no-cookies -O jdk-8uXXX-linux-x64.tar.gz https://download.oracle.com/otn-pub/java/jdk/8uXXX-bYY/jdk-8uXXX-linux-x64.tar.gz tar zxvf jdk-8uXXX-linux-x64.tar.gz mv jdk1.8.* jdk8 rm -rf jdk-8uXXX-linux-x64.tar.gz ``` 更新系统的`$PATH`和`JAVA_HOME`环境变量,在`~/.bashrc`文件中加入以下内容: ```bash export JAVA_HOME=/opt/jdk8 export PATH=$JAVA_HOME/bin:$PATH source ~/.bashrc java -version ``` #### 获取Hadoop软件包 前往Apache官方网站下载页面找到对应版本号的Hadoop tarball链接地址,利用wget工具进行下载操作之后解压到指定目录下。 ```bash mkdir ~/software && cd $_ wget http://archive.apache.org/dist/hadoop/core/hadoop-2.7.3/hadoop-2.7.3.tar.gz tar zxf hadoop-2.7.3.tar.gz ln -sfn ./hadoop-2.7.3 hadoop echo &#39;export HADOOP_HOME=~/software/hadoop&#39; >> ~/.bash_profile echo &#39;export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin&#39; >> ~/.bash_profile source ~/.bash_profile ``` #### 修改Hadoop配置文件 进入Hadoop配置文件夹编辑核心参数设定,具体路径为/root/software/hadoop/etc/hadoop[^1]: - `core-site.xml`: 设置临时存储位置以及默认FS URI. ```xml <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/app/hadoop/tmp</value> </property> </configuration> ``` - `hdfs-site.xml`: 指定NameNode数据保存副本数量等属性. ```xml <configuration> <property> <name>dfs.replication</name> <value>2</value> </property> <!-- Other properties --> </configuration> ``` - `yarn-site.xml`: YARN框架相关选项定义. ```xml <configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <!-- Additional settings here --> </configuration> ``` - `mapred-site.xml`: MapReduce作业执行模式切换至YARN之上. ```xml <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration> ``` 另外还需要调整slaves列表文档,列出集群内所有的Slave节点名称以便启动时自动连接它们。 #### 初始化HDFS文件系统 作为Master节点上的管理员账户执行下面指令初始化分布式文件系统结构: ```bash hdfs namenode -format ``` #### 启动Hadoop集群组件 通过sbin下的脚本批量开启各个守护进程,包括但不限于ResourceManager、NodeManager等等。 ```bash start-dfs.sh start-yarn.sh mr-jobhistory-daemon.sh start historyserver ``` 此时应该可以在浏览器里查看Web UI状态页,默认端口分别为50070(HDFS), 8088(YARN ResourceManager). 针对提到的具体问题,如果发现某些从属节点未能正常注册成为DataNodes或是无法显示相关信息,则需检查这些主机之间的连通性和权限授予情况;对于8080端口不可达的情况,请确认Application Master是否已成功启动并且监听该端口号。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值